mcpField
L
Learning about MCP

Learning about MCP

本地服务
github.com/WojciechMatuszewski开发工具084 周前更新

关于 Learning about MCP

Learning about MCP 是一个基于 Node 的 MCP 服务学习项目。README 介绍了 MCP 基础概念、传输方式和服务端错误处理,并注明采样与根目录功能尚待实现。

主要功能

  1. 01基于 Node 的服务实现
  2. 02介绍 stdio 与 SSE 传输
  3. 03说明 MCP 核心概念
  4. 04SDK 内置错误处理

适用场景

  1. 01学习 MCP 服务概念
  2. 02了解不同传输方式
  3. 03理解服务端工具错误处理

MCP 相关

这是一个用于学习 MCP 服务的项目,介绍资源、提示词、工具、采样、根目录以及 stdio 和 SSE 传输;采样和根目录仍列为待办事项。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

了解 MCP

TODO:

学习心得

  • 有两种传输方式:

    • 通过 stdio。在这里,你需要提供客户端可使用的服务端二进制文件路径。

    • 通过 sse。在这里,你需要提供服务端的网络地址。

      • 在我看来,这种传输方式似乎更通用。它允许服务端独立于客户端进行部署。
  • 我_真的_很想用 fastify 来构建服务端,但没能让它与现有的 SDK 配合工作。

    • 这是一个很好的机会,可以学习如何_仅_使用 Node 编写这样的服务端!
  • 与 MCP 相关的核心原语包括:

    • 资源——可以把它们看作数据(例如 PDF、数据库记录等),客户端可以用它们来组织内容,从而针对用户的查询生成恰当的回复。

    • 提示词——可以把它们看作预定义的提示词,有时会出现在“prompt to x”工作流的文本框下方。

    • 工具——它们允许大模型代表用户执行操作。由服务端调用工具,并将结果回复给客户端。客户端的工作是将结果传递给大模型。

    • 采样——说实话,我还不确定它们是什么。

    • 根目录——它们定义了服务端的“边界”。例如,如果服务端公开了一个操作文件系统的工具,你可以将特定目录添加到“根目录”中,这样工具的操作范围就只限于该目录。

    • 传输——上文已经介绍过。传输方式包括 STDIO 和 SSE。至于消息,则通过 JSON-RPC 2.0 格式化。

  • 我真的很喜欢 SDK 内置错误处理这一点。

    • 我可以在服务端的 tool 回调函数中抛出错误,客户端 SDK 会处理错误并作出相应响应。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。