From ecd416ada9efe6c69e5a6bcf0cb6912faeff6bee Mon Sep 17 00:00:00 2001 From: kathy-baixue Date: Wed, 2 Apr 2025 00:04:47 +0800 Subject: [PATCH] Complete the claim task of translating pages from the official MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit page list : Get Started-QuickStart:for client developers Get Started:Example Clients Tutorials:Debugging, Inspector Concept: Resources, Prompts, Tools, Sampling, Roots, Transports --- .../docs/(get-started)/example-clients.mdx | 200 +++- .../quick-start/client-developers.mdx | 1039 ++++++++++++++++- content/docs/concepts/prompts.mdx | 392 +++++++ content/docs/concepts/resources.mdx | 214 ++++ content/docs/concepts/roots.mdx | 59 + content/docs/concepts/sampling.mdx | 195 ++++ content/docs/concepts/tools.mdx | 272 +++++ content/docs/concepts/transports.mdx | 371 ++++++ content/docs/test.mdx | 17 - content/docs/tutorials/debugging.mdx | 204 ++++ content/docs/tutorials/inspector.mdx | 96 ++ content/docs/your-1st-MCP-server/test.mdx | 17 - public/claude-desktop-mcp-hammer-icon.svg | 3 + public/claude-desktop-mcp-plug-icon.svg | 3 + public/mcp-inspector.png | Bin 0 -> 300631 bytes public/quickstart-dotnet-client.png | Bin 0 -> 83600 bytes 16 files changed, 3022 insertions(+), 60 deletions(-) create mode 100644 content/docs/concepts/prompts.mdx create mode 100644 content/docs/concepts/resources.mdx create mode 100644 content/docs/concepts/roots.mdx create mode 100644 content/docs/concepts/sampling.mdx create mode 100644 content/docs/concepts/tools.mdx create mode 100644 content/docs/concepts/transports.mdx delete mode 100644 content/docs/test.mdx create mode 100644 content/docs/tutorials/debugging.mdx create mode 100644 content/docs/tutorials/inspector.mdx delete mode 100644 content/docs/your-1st-MCP-server/test.mdx create mode 100644 public/claude-desktop-mcp-hammer-icon.svg create mode 100644 public/claude-desktop-mcp-plug-icon.svg create mode 100644 public/mcp-inspector.png create mode 100644 public/quickstart-dotnet-client.png diff --git a/content/docs/(get-started)/example-clients.mdx b/content/docs/(get-started)/example-clients.mdx index b42a5c5..db6b1c7 100644 --- a/content/docs/(get-started)/example-clients.mdx +++ b/content/docs/(get-started)/example-clients.mdx @@ -1,5 +1,203 @@ --- title: MCP客户端示例 -description: MCP客户端示例 --- +支持 MCP 集成的应用程序列表 + +本页概述了支持模型上下文协议(Model Context Protocol,MCP)的应用程序。每个客户端可能支持不同的 MCP 功能,从而实现与 MCP 服务器的不同集成级别。 +## 客户端详情 ## +### Claude 桌面应用(Claude Desktop App) ### +Claude 桌面应用程序提供对 MCP 的全面支持,从而能够与本地工具和数据源进行深度集成。 +主要功能: +- 完全支持资源(Resources),允许附加本地文件和数据 +- 支持提示词模板(prompt templates) +- 工具集成(Tool integration),用于执行命令和脚本 +- 本地服务器连接(Local server connections),以增强隐私和安全性 + +注意:Claude.ai Web 应用程序当前不支持 MCP,MCP 功能仅在桌面应用程序中可用。 + +### Claude Code ### +Claude Code是一个来自Anthropic的交互式代理编码工具,可以帮助您通过自然语言命令更快地编码。它支持MCP的提示和工具集成,也可以作为MCP服务器与其他客户端集成。 + +主要功能: +- 对MCP服务器工具和提示的支持 +- 通过MCP服务器提供自己的工具,用于与其他MCP客户端集成 +### 5ire ### +[5ire](https://github.com/nanbingxyz/5ire) 是一款开源的跨平台桌面 AI 助手,它通过 MCP 服务器支持工具(Tools)。 +主要功能: +- 可以快速启用和禁用内置的 MCP 服务器。 +- 用户可以通过修改配置文件来添加更多服务器。 +- 它是开源且用户友好的,适合初学者。 +- 未来将不断改进对 MCP 的支持。 +### BeeAI Framework ### +[BeeAI 框架(BeeAI Framework)](https://i-am-bee.github.io/beeai-framework) 是一个开源框架,用于大规模构建、部署和服务强大的代理工作流。该框架包括 MCP 工具(MCP Tool),这是一个原生功能,可简化将 MCP 服务器集成到代理工作流中的过程。 +主要功能: +- 将 MCP 工具无缝集成到代理工作流中。 +- 从连接的 MCP 客户端快速实例化框架原生工具。 +- 计划未来支持代理 MCP 功能。 + +了解更多: +[在代理工作流中使用 MCP 工具的示例](https://i-am-bee.github.io/beeai-framework/#/typescript/tools?id=using-the-mcptool-class) +### Cline ### +Cline 是 VS Code 中的一个自主编码代理,它可以编辑文件、运行命令、使用浏览器等等——每一步都需要你的许可。 + +主要功能: +- 通过自然语言创建和添加工具(例如,“添加一个搜索网络的工具”) +- 通过 ~/Documents/Cline/MCP 目录与他人共享 Cline 创建的自定义 MCP 服务器 +- 显示配置的 MCP 服务器及其工具、资源以及任何错误日志 +### Continue ### +[Continue](https://github.com/continuedev/continue) 是一个开源的 AI 代码助手,内置支持所有 MCP 功能。 + +主要功能 +- 键入“@”以提及 MCP 资源(Resources) +- 提示词模板(Prompt templates)显示为斜杠命令 +- 直接在聊天中使用内置工具和 MCP 工具 +- 支持 VS Code 和 JetBrains IDE,以及任何 LLM +### Cursor ### +[Cursor](https://docs.cursor.com/advanced/model-context-protocol) 是一款 AI 代码编辑器。 + +主要功能: +- 在 Cursor Composer 中支持 MCP 工具(Tools) +- 支持 STDIO 和 SSE +### Emacs Mcp ### +[Emacs Mcp](https://github.com/lizqwerscott/mcp.el)是一个 Emacs 客户端,旨在与 MCP 服务器连接,实现无缝连接和交互。 它为 AI 插件(如 gptel 和 llm)提供 MCP 工具调用支持,遵循 Emacs 的标准工具调用格式。 这种集成增强了 Emacs 生态系统中 AI 工具的功能。 +主要功能: +- 为 Emacs 提供 MCP 工具支持。 +### fast-agent ### +[fast-agent](https://github.com/evalstate/fast-agent)是一个Python代理框架,对创建代理和工作流提供简单的声明性支持,对Anthropic和OpenAI模型提供完整的多模态支持。 + +主要功能: +- PDF和图像支持,基于MCP原生类型 +- 用于开发和诊断代理应用程序的交互式前端,包括直通和回放模拟器 +- 内置支持“构建有效代理”工作流。 +- 将agent部署为MCP服务器 +### Genkit ### +[Genkit](https://github.com/firebase/genkit)是一个跨语言SDK,用于构建GenAI功能并将其集成到应用程序中。genkitx-mcp插件允许作为客户端使用MCP服务器,或者从Genkit工具和提示词创建MCP服务器。 + +主要功能: +- 客户端对工具和提示词的支持(部分支持的资源) +- 支持Genkit的Dev UI在线演示平台的丰富发现 +- 与Genkit现有工具和提示符的无缝互操作性 +- 工作跨越顶级供应商的各种各样的GenAI模型 +### GenAIScript ### +使用 [GenAIScript](https://microsoft.github.io/genaiscript/)(在 JavaScript 中)以编程方式为 LLM 组装 prompts。在 JavaScript 中编排 LLM、tools 和 resources。 +主要功能: +- JavaScript 工具箱用于处理提示 +- 便于使用和提高生产力的抽象层 +- 无缝集成 Visual Studio Code +### Goose ### +[Goose](https://github.com/block/goose) 是一个开源 AI 代理,通过自动化编码任务来增强你的软件开发能力。 +主要功能: +- 通过工具(Tools)向 Goose 公开 MCP 功能。 +- 可以直接通过 [extensions directory](https://block.github.io/goose/v1/extensions/)、CLI 或 UI 安装 MCP。 +- Goose 允许你通过[构建自己的 MCP 服务器](https://block.github.io/goose/docs/tutorials/custom-extensions) 来扩展其功能。 +- 包含内置工具,用于开发、Web 抓取、自动化、内存以及与 JetBrains 和 Google Drive 集成。 +### LibreChat ### +[LibreChat](https://github.com/danny-avila/LibreChat) 是一个开源、可定制的 AI 聊天 UI,支持多个 AI 提供商,现在包括 MCP 集成。 +主要功能: +- 通过 MCP 服务器扩展当前的工具生态系统,包括[Code Interpreter](https://www.librechat.ai/docs/features/code_interpreter) 和图像生成工具 +- 使用来自顶级提供商的各种 LLM,将工具添加到可定制的代理(Agents) +- 开源且可自托管,具有安全的多用户支持 +- 未来的路线图包括扩展的 MCP 功能支持 +### mcp-agent ### +[mcp-agent](https://github.com/lastmile-ai/mcp-agent) 是一个简单的、可组合的框架,用于使用模型上下文协议(Model Context Protocol)构建代理。 +主要功能: +- 自动连接管理 MCP 服务器。 +- 将来自多个服务器的工具(Tools)公开给 LLM。 +- 实现了[构建有效代理](https://www.anthropic.com/research/building-effective-agents) 中定义的每个模式。 +- 支持工作流暂停/恢复信号,例如等待人工反馈。 +### Microsoft Copilot Studio ### +[Microsoft Copilot Studio](https://learn.microsoft.com/en-us/microsoft-copilot-studio/agent-extend-action-mcp)是一个强大的SaaS平台,旨在构建自定义AI驱动的应用程序和智能代理,使开发人员能够创建、部署和管理复杂的AI解决方案。 +主要功能: +- 支持MCP工具 +- 用MCP服务器扩展Copilot Studio代理 +- 利用Microsoft统一的、受治理的和安全的API管理解决方案 +### oterm ### +[oterm](https://github.com/ggozad/oterm)是Ollama的终端客户端,允许用户创建聊天/代理。 +主要功能: +- 通过Ollama连接工具,支持多个可完全定制的聊天会话。 +- 支持MCP工具。 +### Roo Code ### +[Roo Code](https://roocode.com/) 通过 MCP 实现 AI 编码辅助。 +主要功能: +- 支持 MCP 工具(Tools)和资源(Resources) +- 与开发工作流程集成 +- 可扩展的 AI 功能 +### Sourcegraph Cody ### +[Cody](https://openctx.org/docs/providers/modelcontextprotocol) 是 Sourcegraph 的 AI 编码助手,它通过 OpenCTX 实现 MCP。 +主要功能: +- 支持 MCP 资源(Resources) +- 与 Sourcegraph 的代码智能集成 +- 使用 OpenCTX 作为抽象层 +- 计划未来支持其他 MCP 功能 +### SpinAI ### +[SpinAI](https://spinai.dev/) 是一个开源 TypeScript 框架,用于构建可观察的 AI 代理。 该框架提供原生 MCP 兼容性,允许代理与 MCP 服务器和工具无缝集成。 +主要功能: +- AI 代理的内置 MCP 兼容性 +- 开源 TypeScript 框架 +- 可观察的代理架构 +- 对 MCP 工具集成的原生支持 +### Superinterface ### +[Superinterface](https://superinterface.ai/) 是 AI 基础设施和开发人员平台,用于构建应用内 AI 助手,支持 MCP 、交互式组件、客户端函数调用等。 +主要功能: +- 在通过 React 组件或脚本标记嵌入的助手中,使用来自 MCP 服务器的工具(Tools) +- SSE 传输支持 +- 使用来自任何 AI 提供商(OpenAI、Anthropic、Ollama 等)的任何 AI 模型 +### TheiaAI/TheiaIDE ### +[Theia AI](https://eclipsesource.com/blogs/2024/10/07/introducing-theia-ai/) 是一个用于构建 AI 增强工具和 IDE 的框架。AI 驱动的 Theia IDE 是一个基于 Theia AI 构建的开放且灵活的开发环境。 +主要功能: +- 工具集成:Theia AI 使 AI 代理(包括 Theia IDE 中的代理)能够利用 MCP 服务器进行无缝工具交互。 +- 可定制的提示词(Prompts):Theia IDE 允许用户定义和调整提示词,动态集成 MCP 服务器以实现定制的工作流程。 +- 自定义代理(agents):Theia IDE 支持利用 MCP 功能创建自定义代理,使用户能够动态设计专用工作流程。 +Theia AI 和 Theia IDE 的 MCP 集成为用户提供了灵活性,使它们成为探索和调整 MCP 的强大平台。 +了解更多: +- [Theia IDE 和 Theia AI MCP 公告](https://eclipsesource.com/blogs/2024/12/19/theia-ide-and-theia-ai-support-mcp/) +- [下载 AI 驱动的 Theia IDE](https://theia-ide.org/) +### Windsurf Editor ### +[Windsurf Editor](https://codeium.com/windsurf) 是一款代理 IDE,将 AI 辅助与开发人员工作流程相结合。 它具有创新的 AI Flow 系统,可在保持开发人员控制同时,实现协作和独立的 AI 交互。 +主要功能: +- 用于人机协作的革命性 AI Flow 范例 +- 智能代码生成和理解 +- 具有多模型支持的丰富开发工具 +### Witsy ### +[Witsy](https://github.com/nbonamy/witsy)是一个人工智能桌面助手,支持Anthropic模型和作为LLM工具的MCP服务器。 +主要功能: +- 支持多个MCP服务器 +- 用于执行命令和脚本的工具集成 +- 本地服务器连接,增强隐私和安全性 +- 从Smithery.ai易于安装 +- 开源,可用于macOS, Windows和Linux +### Zed ### +[Zed](https://zed.dev/docs/assistant/model-context-protocol) 是一款高性能代码编辑器,具有内置 MCP 支持,专注于提示词模板(prompt templates)和工具集成。 +主要功能: +- 提示词模板(Prompt templates)在编辑器中显示为斜杠命令 +- 工具集成,用于增强编码工作流程 +- 与编辑器功能和工作区上下文紧密集成 +- 不支持 MCP 资源 +### OpenSumi ### +[OpenSumi](https://github.com/opensumi/core) 是一个可以帮助您快速构建 AI Native IDE 产品的框架。 +主要功能: +- 在 OpenSumi 中支持 MCP 工具(Tools) +- 支持内置 IDE MCP 服务器和自定义 MCP 服务器 +### Daydreams ### +[Daydreams](https://github.com/daydreamsai/daydreams) 是一个用于在链上执行任何操作的生成式代理框架 +主要功能: +- 在配置中支持 MCP 服务器(Servers) +- 公开 MCP 客户端 +### Apify MCP Tester ### +[Apify MCP Tester](https://github.com/apify/tester-mcp-client)是一个使用服务器发送事件(server - sent Events, SSE)连接到任何MCP服务器的开源客户端。它是一个独立的Apify Actor,设计用于在SSE上测试MCP服务器,支持授权标头。它使用纯JavaScript(老派风格),并托管在Apify上,允许您无需任何设置即可运行它。 +主要功能: +- 通过SSE连接到任意MCP服务器。 +- 与[Apify MCP服务器](https://apify.com/apify/actors-mcp-server)一起工作,与一个或多个[Apify actor](https://apify.com/store)进行交互。 +- 动态地利用基于上下文和用户查询的工具(如果服务器支持)。 +## 向您的应用程序添加 MCP 支持 ## +如果您已将 MCP 支持添加到您的应用程序,我们鼓励您提交拉取请求以将其添加到此列表中。 MCP 集成可以为您的用户提供强大的上下文 AI 功能,并使您的应用程序成为不断增长的 MCP 生态系统的一部分。 +添加 MCP 支持的好处: +- 使用户能够带来自己的上下文和工具(Tools) +- 加入不断增长的、可互操作的 AI 应用程序生态系统 +- 为用户提供灵活的集成选项 +- 支持本地优先的 AI 工作流程 + +要开始在您的应用程序中实现 MCP,请查看我们的 [Python](https://github.com/modelcontextprotocol/python-sdk) 或 [TypeScript SDK 文档](https://github.com/modelcontextprotocol/typescript-sdk) +## 更新和更正 ## +此列表由社区维护。 如果您发现任何不准确之处或想要更新有关您的应用程序中 MCP 支持的信息,请提交拉取请求或在我们的[文档存储库](https://github.com/modelcontextprotocol/docs/issues)中新开一个问题。 diff --git a/content/docs/(get-started)/quick-start/client-developers.mdx b/content/docs/(get-started)/quick-start/client-developers.mdx index a32b110..ffbbd4b 100644 --- a/content/docs/(get-started)/quick-start/client-developers.mdx +++ b/content/docs/(get-started)/quick-start/client-developers.mdx @@ -10,17 +10,17 @@ description: 快速开始 - 客户端开发者 import { Tab, Tabs } from 'fumadocs-ui/components/tabs'; - + 本教程完整的代码在[这里](https://github.com/modelcontextprotocol/quickstart-resources/tree/main/mcp-client-python) -## 系统需求 ## +## 系统需求 [!toc] 开始之前,确认你的系统满足如下需求: - 操作系统Mac或Windows - 安装了最新版本的Python - 安装了最新版本的uv -## 设置环境 ## +## 设置环境 [!toc] 首先,用uv新建一个Python项目: ```js # Create project directory @@ -45,7 +45,7 @@ rm hello.py # Create our main file touch client.py ``` -## 安装你的API key ## +## 安装你的API key [!toc] 你需要从[Anthropic Console](https://console.anthropic.com/settings/keys)获取一个Anthropic API key 创建一个.env文件来存储它: @@ -61,11 +61,11 @@ ANTHROPIC_API_KEY= ```js echo ".env" >> .gitignore ``` - + 请确保您的ANTHROPIC_API_KEY安全! -## 创建客户端 ## -### 客户端基础机构 ### +## 创建客户端 [!toc] +### 客户端基础结构 [!toc] 首先,我们设置import和创建基础的客户端类: ```js import asyncio @@ -88,7 +88,7 @@ class MCPClient: self.anthropic = Anthropic() # methods will go here ``` -### 服务器连接管理 ### +### 服务器连接管理 [!toc] 接下来,我们实现连接MCP服务器的方法: ```js @@ -121,7 +121,7 @@ async def connect_to_server(self, server_script_path: str): tools = response.tools print("\nConnected to server with tools:", [tool.name for tool in tools]) ``` -### 查询处理的逻辑 ### +### 查询处理的逻辑 [!toc] 现在,现在让我们添加处理查询和工具调用的核心功能: ```js async def process_query(self, query: str) -> str: @@ -192,7 +192,7 @@ async def process_query(self, query: str) -> str: return "\n".join(final_text) ``` -### 和Chat进行交互 ### +### 互动聊天 [!toc] 现在我们添加一些chat来回交互和清理的功能: ```js async def chat_loop(self): @@ -217,7 +217,7 @@ async def cleanup(self): """Clean up resources""" await self.exit_stack.aclose() ``` -### main函数入口要点 ### +### main函数入口 [!toc] 最后,我们添加main入口执行逻辑 ```js async def main(): @@ -236,8 +236,8 @@ if __name__ == "__main__": import sys asyncio.run(main()) ``` -完整的client.py文件在这里 -## 关键组件说明 ## +完整的client.py文件在[这里](https://gist.github.com/zckly/f3f28ea731e096e53b39b47bf0a2d4b1) +## 关键组件说明 [!toc] 1. 客户端初始化 - MCPClient类初始化会话管理和API客户端 - 使用AsyncExitStack进行适当的资源管理 @@ -261,7 +261,7 @@ if __name__ == "__main__": - 妥善清理资源 - 连接问题的错误处理 - 安全关机程序 -## 通常的定制化要点 ## +## 通常的定制化要点 [!toc] 1. 工具处理 - 修改process_query()来处理特定的工具类型 - 为工具调用添加自定义错误处理 @@ -274,19 +274,19 @@ if __name__ == "__main__": - 添加GUI或web界面 - 实现丰富的控制台输出 - 添加命令历史记录或自动完成 -## 运行客户端 ## +## 运行客户端 [!toc] 运行客户端,可选择任意服务器: ```js uv run client.py path/to/server.py # python server uv run client.py path/to/build/index.js # node server ``` - + 如果你还在从服务器快速入门继续天气教程,你的命令可能看起来像这样:python client.py .../weather/src/weather/server.py 客户端将会: 1. 连接到指定的服务器 2. 列出可用的工具 -3. 开始一个交互对话的会话,你可以实现以下操作: +3. 开始一个互动聊天的会话,你可以实现以下操作: - 输入查询 - 查看工具的执行情况 - 从Claude得到响应 @@ -294,7 +294,7 @@ uv run client.py path/to/build/index.js # node server 下面是一个在服务器快速入门教程中连接到天气服务器的示例: ![ImaImageZoomge](/client-claude-cli-python.png) -## 工作机制 ## +## 工作机制 [!toc] 当你提交查询时: 1. 客户端从服务器获取可用工具的列表 2. 您的查询将与工具描述一起发送给Claude @@ -303,7 +303,7 @@ uv run client.py path/to/build/index.js # node server 5. 结果被送回给Claude 6. Claude用自然语言响应 7. 将返回的响应显示给用户 -## 最佳实践 ## +## 最佳实践 [!toc] 1. 错误处理 - 始终将工具调用封装在try-catch块中 - 提供有意义的错误消息 @@ -316,8 +316,8 @@ uv run client.py path/to/build/index.js # node server - 将API key安全地存储在.env文件中 - 验证服务器响应 - 谨慎处理工具的使用权限 -## 故障排除 ## -### 服务器路径问题 ### +## 故障排除 [!toc] +### 服务器路径问题 [!toc] - 再次检查服务器的路径是否正确 - 如果相对路径不起作用,请使用绝对路径 - 对于Windows用户,请确保在路径中使用正斜杠(/)或转义反斜杠(\) @@ -335,7 +335,7 @@ uv run client.py /Users/username/projects/mcp-server/weather.py uv run client.py C:/projects/mcp-server/weather.py uv run client.py C:\\projects\\mcp-server\\weather.py ``` -### 响应时间 ### +### 响应时间 [!toc] - 第一个响应可能需要30秒才能返回 - 这是正常的,发生在: - 服务器初始化 @@ -343,7 +343,7 @@ uv run client.py C:\\projects\\mcp-server\\weather.py - 工具正在执行 - 随后的反应通常更快 - 在最初的等待期间,不要中断该过程 -### 常见错误信息 ### +### 常见错误信息 [!toc] 当你看到: - FileNotFoundError:检查你的服务器路径 - Connection refused:确认服务器在运行并且路径正确 @@ -351,6 +351,995 @@ uv run client.py C:\\projects\\mcp-server\\weather.py - Timeout error:考虑在客户端配置中增加超时 - Rust is fast - Rust is fast + + 本教程完整的代码在[这里](https://github.com/modelcontextprotocol/quickstart-resources/tree/main/mcp-client-typescript) +## 系统需求 [!toc] +开始之前,确认你的系统满足如下需求: + +- 操作系统Mac或Windows +- 安装了Node.js17或更高版本 +- 安装了最新版本的npm +- Anthropic API key (Claude) + +## 设置环境 [!toc] +首先,新建和安装项目: + + + ```js +# Create project directory +mkdir mcp-client-typescript +cd mcp-client-typescript + +# Initialize npm project +npm init -y + +# Install dependencies +npm install @anthropic-ai/sdk @modelcontextprotocol/sdk dotenv + +# Install dev dependencies +npm install -D @types/node typescript + +# Create source file +touch index.ts + ``` + + + ```js + # Create project directory +md mcp-client-typescript +cd mcp-client-typescript + +# Initialize npm project +npm init -y + +# Install dependencies +npm install @anthropic-ai/sdk @modelcontextprotocol/sdk dotenv + +# Install dev dependencies +npm install -D @types/node typescript + +# Create source file +new-item index.ts +``` + + +修改package.json设置type:"module"和build脚本 + +```js title="package.json" +{ + "type": "module", + "scripts": { + "build": "tsc && chmod 755 build/index.js" + } +} +``` +在项目的根目录创建一个tsconfig.json文件 +```js title="tsconfig.json" +{ + "compilerOptions": { + "target": "ES2022", + "module": "Node16", + "moduleResolution": "Node16", + "outDir": "./build", + "rootDir": "./", + "strict": true, + "esModuleInterop": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true + }, + "include": ["index.ts"], + "exclude": ["node_modules"] +} +``` +## 安装你的API Key [!toc] +你需要从[Anthropic Console](https://console.anthropic.com/settings/keys)获取一个Anthropic API key +创建一个.env文件来存储它: +```js +echo "ANTHROPIC_API_KEY=" > .env +``` +将.env文件添加到你的.gitignore: +```js +echo ".env" >> .gitignore +``` + + 请确保您的ANTHROPIC_API_KEY安全! + +## 创建客户端 [!toc] +### 客户端基础结构 [!toc] +首先,我们index.ts中设置import和创建基础的客户端类: +```js +import { Anthropic } from "@anthropic-ai/sdk"; +import { + MessageParam, + Tool, +} from "@anthropic-ai/sdk/resources/messages/messages.mjs"; +import { Client } from "@modelcontextprotocol/sdk/client/index.js"; +import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js"; +import readline from "readline/promises"; +import dotenv from "dotenv"; + +dotenv.config(); + +const ANTHROPIC_API_KEY = process.env.ANTHROPIC_API_KEY; +if (!ANTHROPIC_API_KEY) { + throw new Error("ANTHROPIC_API_KEY is not set"); +} + +class MCPClient { + private mcp: Client; + private anthropic: Anthropic; + private transport: StdioClientTransport | null = null; + private tools: Tool[] = []; + + constructor() { + this.anthropic = new Anthropic({ + apiKey: ANTHROPIC_API_KEY, + }); + this.mcp = new Client({ name: "mcp-client-cli", version: "1.0.0" }); + } + // methods will go here +} +``` +### 服务器连接管理 [!toc] +接下来,我们实现连接MCP服务器的方法: + +```js +async connectToServer(serverScriptPath: string) { + try { + const isJs = serverScriptPath.endsWith(".js"); + const isPy = serverScriptPath.endsWith(".py"); + if (!isJs && !isPy) { + throw new Error("Server script must be a .js or .py file"); + } + const command = isPy + ? process.platform === "win32" + ? "python" + : "python3" + : process.execPath; + + this.transport = new StdioClientTransport({ + command, + args: [serverScriptPath], + }); + this.mcp.connect(this.transport); + + const toolsResult = await this.mcp.listTools(); + this.tools = toolsResult.tools.map((tool) => { + return { + name: tool.name, + description: tool.description, + input_schema: tool.inputSchema, + }; + }); + console.log( + "Connected to server with tools:", + this.tools.map(({ name }) => name) + ); + } catch (e) { + console.log("Failed to connect to MCP server: ", e); + throw e; + } +} +``` +### 查询处理的逻辑[!toc] +现在,现在让我们添加处理查询和工具调用的核心功能: +```js +async processQuery(query: string) { + const messages: MessageParam[] = [ + { + role: "user", + content: query, + }, + ]; + + const response = await this.anthropic.messages.create({ + model: "claude-3-5-sonnet-20241022", + max_tokens: 1000, + messages, + tools: this.tools, + }); + + const finalText = []; + const toolResults = []; + + for (const content of response.content) { + if (content.type === "text") { + finalText.push(content.text); + } else if (content.type === "tool_use") { + const toolName = content.name; + const toolArgs = content.input as { [x: string]: unknown } | undefined; + + const result = await this.mcp.callTool({ + name: toolName, + arguments: toolArgs, + }); + toolResults.push(result); + finalText.push( + `[Calling tool ${toolName} with args ${JSON.stringify(toolArgs)}]` + ); + + messages.push({ + role: "user", + content: result.content as string, + }); + + const response = await this.anthropic.messages.create({ + model: "claude-3-5-sonnet-20241022", + max_tokens: 1000, + messages, + }); + + finalText.push( + response.content[0].type === "text" ? response.content[0].text : "" + ); + } + } + + return finalText.join("\n"); +} +``` +### 互动聊天 [!toc] +现在我们添加一些聊天互动和清理的功能: +```js +async chatLoop() { + const rl = readline.createInterface({ + input: process.stdin, + output: process.stdout, + }); + + try { + console.log("\nMCP Client Started!"); + console.log("Type your queries or 'quit' to exit."); + + while (true) { + const message = await rl.question("\nQuery: "); + if (message.toLowerCase() === "quit") { + break; + } + const response = await this.processQuery(message); + console.log("\n" + response); + } + } finally { + rl.close(); + } +} + +async cleanup() { + await this.mcp.close(); +} +``` +### main函数入口 [!toc] +最后,我们添加main入口执行逻辑 +```js +async function main() { + if (process.argv.length < 3) { + console.log("Usage: node index.ts "); + return; + } + const mcpClient = new MCPClient(); + try { + await mcpClient.connectToServer(process.argv[2]); + await mcpClient.chatLoop(); + } finally { + await mcpClient.cleanup(); + process.exit(0); + } +} + +main(); +``` +## 运行客户端 [!toc] +运行客户端,可选择任意服务器: +```js +# Build TypeScript +npm run build + +# Run the client +node build/index.js path/to/server.py # python server +node build/index.js path/to/build/index.js # node server +``` + + 如果你还在从服务器快速入门继续天气教程,你的命令可能看起来像这样:node build/index.js .../quickstart-resources/weather-server-typescript/build/index.js + +客户端将会: +1. 连接到指定的服务器 +2. 列出可用的工具 +3. 开始一个互动聊天的会话,你可以实现以下操作: +- 输入查询 +- 查看工具的执行情况 +- 从Claude得到响应 + +## 工作机制 [!toc] +当你提交查询时: +1. 客户端从服务器获取可用工具的列表 +2. 您的查询将与工具描述一起发送给Claude +3. Claude决定使用哪些工具(如果有的话) +4. 客户端通过服务器执行工具调用请求 +5. 结果被送回给Claude +6. Claude用自然语言响应 +7. 将返回的响应显示给用户 +## 最佳实践 [!toc] +1. 错误处理 +- 为了更好的检测错误,使用 TypeScript 的类型系统 +- 将工具调用封装在try-catch块中 +- 提供有意义的错误消息 +- 优雅地处理连接问题 +2. 安全性 +- 将API key安全地存储在.env文件中 +- 验证服务器响应 +- 谨慎处理工具的使用权限 +## 故障排除 [!toc] +### 服务器路径问题 [!toc] +- 再次检查服务器的路径是否正确 +- 如果相对路径不起作用,请使用绝对路径 +- 对于Windows用户,请确保在路径中使用正斜杠(/)或转义反斜杠(\) +- 验证服务器文件具有正确的扩展名(Python为.py或Node.js为.js) + +正确的路径示例: +```js +# Relative path +node build/index.js ./server/build/index.js + +# Absolute path +node build/index.js /Users/username/projects/mcp-server/build/index.js + +# Windows path (either format works) +node build/index.js C:/projects/mcp-server/build/index.js +node build/index.js C:\\projects\\mcp-server\\build\\index.js +``` +### 响应时间 [!toc] +- 第一个响应可能需要30秒才能返回 +- 这是正常的,发生在: + - 服务器初始化 + - Claude处理查询 + - 工具正在执行 +- 随后的反应通常更快 +- 在最初的等待期间,不要中断该过程 +### 常见错误信息 [!toc] +当你看到: +- Error: Cannot find module:检查项目的构建文件夹,并确保 TypeScript 编译成功 +- Connection refused:确认服务器在运行并且路径正确 +- Tool execution failed:验证工具所需的环境变量是否已设置 +- ANTHROPIC_API_KEY is not set: 检查 .env 文件和环境变量 +- TypeError:确认调用的工具,参数使用了正确的类型 + + + + + 这是一个基于Spring AI MCP自动配置和boot starter的快速入门演示。要了解如何手动创建同步和异步MCP客户端,请参阅[Java SDK Client](https://modelcontextprotocol.io/sdk/java/mcp-client)文档 + +这个例子演示了如何构建一个交互式聊天机器人,它结合了Spring AI的模型上下文协议(MCP)和[Brave Search MCP服务器](https://github.com/modelcontextprotocol/servers/tree/main/src/brave-search)。 +该应用程序创建了一个对话界面,由Anthropic的Claude AI模型提供支持,该模型可以通过Brave Search执行互联网搜索, +从而实现用自然语言与实时网络数据交互。您可以在[这里](https://github.com/spring-projects/spring-ai-examples/tree/main/model-context-protocol/web-search/brave-chatbot)找到本教程的完整代码。 +## 系统需求 [!toc] +开始之前,确认你的系统满足如下需求: + +- 安装了Java17或更高版本 +- 安装了Maven3.6版本或以上 +- npx 包管理工具 +- Anthropic API key (Claude) +- Brave Search API key +## 设置环境 [!toc] +1. 安装 npx (Node Package eXecute): 首先确认安装 npm 并运行: +```js +npm install -g npx +``` +2. 克隆项目仓库 +```js +git clone https://github.com/spring-projects/spring-ai-examples.git +cd model-context-protocol/brave-chatbot +``` +3. 设置API的key值 +```js +export ANTHROPIC_API_KEY='your-anthropic-api-key-here' +export BRAVE_API_KEY='your-brave-api-key-here' +``` +4. 构建应用 +```js +./mvnw clean install +``` +5. 用Maven运行应用 +```js +./mvnw spring-boot:run +``` + + 请确保您的ANTHROPIC_API_KEY和BRAVE_API_KEY的安全! + +## 工作机制 [!toc] +该应用程序通过几个组件将Spring AI与Brave Search MCP服务器集成在一起: +### MCP客户端配置 [!toc] +1. pom.xml中需要的依赖: +```js + + org.springframework.ai + spring-ai-starter-mcp-client + + + org.springframework.ai + spring-ai-starter-model-anthropic + +``` +2. 应用程序需要添加的属性 +```js +spring: + ai: + mcp: + client: + enabled: true + name: brave-search-client + version: 1.0.0 + type: SYNC + request-timeout: 20s + stdio: + root-change-notification: true + servers-configuration: classpath:/mcp-servers-config.json + anthropic: + api-key: ${ANTHROPIC_API_KEY} +``` +这会使spring-ai-starter-mcp-client根据所提供的服务器配置创建一个或多个mcp客户端。 +3. MCP服务器配置(mcp-servers-config.json): +```js +{ + "mcpServers": { + "brave-search": { + "command": "npx", + "args": [ + "-y", + "@modelcontextprotocol/server-brave-search" + ], + "env": { + "BRAVE_API_KEY": "" + } + } + } +} +``` +### 实现对话 [!toc] +聊天机器人是使用Spring AI的ChatClient与MCP工具的集成来实现的 +```js +var chatClient = chatClientBuilder + .defaultSystem("You are useful assistant, expert in AI and Java.") + .defaultTools((Object[]) mcpToolAdapter.toolCallbacks()) + .defaultAdvisors(new MessageChatMemoryAdvisor(new InMemoryChatMemory())) + .build(); +``` +关键特性: +- 自然语言理解使用Claude AI模型 +- 通过MCP集成Brave Search,实现实时网络搜索 +- 使用InMemoryChatMemory保持对话内存 +- 像交互式命令行工具一样运行 +### 构建和运行 实现对话 [!toc] +```js +./mvnw clean install +java -jar ./target/ai-mcp-brave-chatbot-0.0.1-SNAPSHOT.jar +``` +或者 +```js +./mvnw spring-boot:run +``` +应用程序将启动一个互动聊天会话,您可以在其中提出问题。当聊天机器人需要从互联网上查找信息来回答你的问题时,它会使用Brave Search。 + +聊天机器人可以: + +- 使用其内置知识回答问题 +- 需要搜索网页时使用Brave Search +- 通过对话中前面的信息记住上下文 +- 综合多个来源的信息,提供全面的答案 +### 高级配置 [!toc] +MCP客户端支持额外的配置选项: +- 通过McpSyncClientCustomizer或McpAsyncClientCustomizer定制客户端 +- 多个客户端采用多种传输类型:STDIO和SSE(服务器发送的事件) +- 与Spring AI工具执行框架集成 +- 自动客户端初始化和生命周期管理 +对于基于WebFlux的应用,你可以使用WebFlux starter: +```js + + org.springframework.ai + spring-ai-mcp-client-webflux-spring-boot-starter + +``` +它提供了类似的功能,但使用基于webflux的SSE传输实现,推荐用于生产环境部署。 + + + 本教程完整的代码在[这里](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/samples/kotlin-mcp-client) +## 系统需求 [!toc] +开始之前,确认你的系统满足如下需求: +- 安装了Java17或更高版本 +- Anthropic API key (Claude) +## 设置环境 [!toc] +首先,让我们安装java和gradle(如果你还没有安装的话)。您可以从[Oracle JDK官方网站](https://www.oracle.com/java/technologies/downloads/)下载java。验证您的java安装: +```js +java --version +``` +首先,新建和安装项目: + + + ```js +# Create a new directory for our project +mkdir kotlin-mcp-client +cd kotlin-mcp-client + +# Initialize a new kotlin project +gradle init + ``` + + + ```js +# Create a new directory for our project +md kotlin-mcp-client +cd kotlin-mcp-client +# Initialize a new kotlin project +gradle init +``` + + +运行gradle init之后,你会看到创建项目的选项。选择Application作为项目类型,Kotlin作为编程语言,Java 17作为Java版本。 + +或者,您可以使用IntelliJ IDEA项目向导创建Kotlin应用程序。 + +创建项目后,添加以下依赖项: + + + ```js +val mcpVersion = "0.4.0" +val slf4jVersion = "2.0.9" +val anthropicVersion = "0.8.0" + +dependencies { + implementation("io.modelcontextprotocol:kotlin-sdk:$mcpVersion") + implementation("org.slf4j:slf4j-nop:$slf4jVersion") + implementation("com.anthropic:anthropic-java:$anthropicVersion") +} + ``` + + + ```js +def mcpVersion = '0.3.0' +def slf4jVersion = '2.0.9' +def anthropicVersion = '0.8.0' +dependencies { + implementation "io.modelcontextprotocol:kotlin-sdk:$mcpVersion" + implementation "org.slf4j:slf4j-nop:$slf4jVersion" + implementation "com.anthropic:anthropic-java:$anthropicVersion" +} +``` + +此外,添加以下插件到您的构建脚本: + + + ```js +plugins { + id("com.github.johnrengelman.shadow") version "8.1.1" +} + ``` + + + ```js +plugins { + id 'com.github.johnrengelman.shadow' version '8.1.1' +} +``` + + +## 安装你的API key [!toc] + +你需要从[Anthropic Console](https://console.anthropic.com/settings/keys)获取一个Anthropic API key +设置API的key值: +```js +export ANTHROPIC_API_KEY='your-anthropic-api-key-here' +``` + + 请确保您的ANTHROPIC_API_KEY安全! + +## 创建客户端 [!toc] +### 客户端基础结构 [!toc] +首先,我们创建基础的客户端类: +```js +class MCPClient : AutoCloseable { + private val anthropic = AnthropicOkHttpClient.fromEnv() + private val mcp: Client = Client(clientInfo = Implementation(name = "mcp-client-cli", version = "1.0.0")) + private lateinit var tools: List + + // methods will go here + + override fun close() { + runBlocking { + mcp.close() + anthropic.close() + } + } +``` +### 服务器连接管理 [!toc] +接下来,我们实现连接一个MCP服务器的方法: + +```js +suspend fun connectToServer(serverScriptPath: String) { + try { + val command = buildList { + when (serverScriptPath.substringAfterLast(".")) { + "js" -> add("node") + "py" -> add(if (System.getProperty("os.name").lowercase().contains("win")) "python" else "python3") + "jar" -> addAll(listOf("java", "-jar")) + else -> throw IllegalArgumentException("Server script must be a .js, .py or .jar file") + } + add(serverScriptPath) + } + + val process = ProcessBuilder(command).start() + val transport = StdioClientTransport( + input = process.inputStream.asSource().buffered(), + output = process.outputStream.asSink().buffered() + ) + + mcp.connect(transport) + + val toolsResult = mcp.listTools() + tools = toolsResult?.tools?.map { tool -> + ToolUnion.ofTool( + Tool.builder() + .name(tool.name) + .description(tool.description ?: "") + .inputSchema( + Tool.InputSchema.builder() + .type(JsonValue.from(tool.inputSchema.type)) + .properties(tool.inputSchema.properties.toJsonValue()) + .putAdditionalProperty("required", JsonValue.from(tool.inputSchema.required)) + .build() + ) + .build() + ) + } ?: emptyList() + println("Connected to server with tools: ${tools.joinToString(", ") { it.tool().get().name() }}") + } catch (e: Exception) { + println("Failed to connect to MCP server: $e") + throw e + } +} +``` +同时创建一个辅助函数为Anthropic将JsonObject转换为JsonValue: +```js +private fun JsonObject.toJsonValue(): JsonValue { + val mapper = ObjectMapper() + val node = mapper.readTree(this.toString()) + return JsonValue.fromJsonNode(node) +} +``` +### 查询处理的逻辑 [!toc] +现在,现在让我们添加处理查询和工具调用的核心功能: +```js +private val messageParamsBuilder: MessageCreateParams.Builder = MessageCreateParams.builder() + .model(Model.CLAUDE_3_5_SONNET_20241022) + .maxTokens(1024) + +suspend fun processQuery(query: String): String { + val messages = mutableListOf( + MessageParam.builder() + .role(MessageParam.Role.USER) + .content(query) + .build() + ) + + val response = anthropic.messages().create( + messageParamsBuilder + .messages(messages) + .tools(tools) + .build() + ) + + val finalText = mutableListOf() + response.content().forEach { content -> + when { + content.isText() -> finalText.add(content.text().getOrNull()?.text() ?: "") + + content.isToolUse() -> { + val toolName = content.toolUse().get().name() + val toolArgs = + content.toolUse().get()._input().convert(object : TypeReference>() {}) + + val result = mcp.callTool( + name = toolName, + arguments = toolArgs ?: emptyMap() + ) + finalText.add("[Calling tool $toolName with args $toolArgs]") + + messages.add( + MessageParam.builder() + .role(MessageParam.Role.USER) + .content( + """ + "type": "tool_result", + "tool_name": $toolName, + "result": ${result?.content?.joinToString("\n") { (it as TextContent).text ?: "" }} + """.trimIndent() + ) + .build() + ) + + val aiResponse = anthropic.messages().create( + messageParamsBuilder + .messages(messages) + .build() + ) + + finalText.add(aiResponse.content().first().text().getOrNull()?.text() ?: "") + } + } + } + + return finalText.joinToString("\n", prefix = "", postfix = "") +} +``` +### 互动聊天 [!toc] +现在我们添加一些聊天互动: +```js +suspend fun chatLoop() { + println("\nMCP Client Started!") + println("Type your queries or 'quit' to exit.") + + while (true) { + print("\nQuery: ") + val message = readLine() ?: break + if (message.lowercase() == "quit") break + val response = processQuery(message) + println("\n$response") + } +} +``` +### main函数入口 [!toc] +最后,我们添加main执行函数: +```js +fun main(args: Array) = runBlocking { + if (args.isEmpty()) throw IllegalArgumentException("Usage: java -jar /build/libs/kotlin-mcp-client-0.1.0-all.jar ") + val serverPath = args.first() + val client = MCPClient() + client.use { + client.connectToServer(serverPath) + client.chatLoop() + } +} +``` +## 运行客户端 [!toc] +运行客户端,可选择任意服务器: +```js +./gradlew build + +# Run the client +java -jar build/libs/.jar path/to/server.jar # jvm server +java -jar build/libs/.jar path/to/server.py # python server +java -jar build/libs/.jar path/to/build/index.js # node server +``` + + 如果你还在从服务器快速入门继续天气教程,你的命令可能看起来像这样:java -jar build/libs/kotlin-mcp-client-0.1.0-all.jar .../samples/weather-stdio-server/build/libs/weather-stdio-server-0.1.0-all.jar + +客户端将会: +1. 连接到指定的服务器 +2. 列出可用的工具 +3. 开始一个互动聊天的会话,你可以实现以下操作: +- 输入查询 +- 查看工具的执行情况 +- 从Claude得到响应 +## 工作机制 [!toc] +当你提交查询时: +1. 客户端从服务器获取可用工具的列表 +2. 您的查询将与工具描述一起发送给Claude +3. Claude决定使用哪些工具(如果有的话) +4. 客户端通过服务器执行工具调用请求 +5. 结果被送回给Claude +6. Claude用自然语言响应 +7. 将返回的响应显示给用户 +## 最佳实践 [!toc] +1. 错误处理 +- 利用Kotlin的类型系统显式地对错误建模 +- 当可能出现异常时,将外部工具和API调用封装在try-catch块中 +- 提供清晰和有意义的错误消息 +- 优雅地处理网络超时和连接问题 +2. 安全性 +- 将API密钥和Secret安全地存储local.properties或环境变量、secret manager中。 +- 验证所有外部响应,以避免意外或不安全的数据使用 +- 使用工具时,谨慎对待权限和信任边界 +## 故障排除 [!toc] +### 服务器路径问题 [!toc] +- 再次检查服务器脚本的路径是否正确 +- 如果相对路径不起作用,请使用绝对路径 +- 对于Windows用户,请确保在路径中使用正斜杠(/)或转义反斜杠(\) +- 确保安装了所需的运行时环境(java为java, npm为Node.js,或uv为Python) +- 验证服务器文件具有正确的扩展名(Java为.jar,Python为.py或Node.js为.js) + +正确的路径示例: +```js +# Relative path +java -jar build/libs/client.jar ./server/build/libs/server.jar + +# Absolute path +java -jar build/libs/client.jar /Users/username/projects/mcp-server/build/libs/server.jar + +# Windows path (either format works) +java -jar build/libs/client.jar C:/projects/mcp-server/build/libs/server.jar +java -jar build/libs/client.jar C:\\projects\\mcp-server\\build\\libs\\server.jar +``` +### 响应时间 [!toc] +- 第一个响应可能需要30秒才能返回 +- 这是正常的,发生在: + - 服务器初始化 + - Claude处理查询 + - 工具正在执行 +- 随后的反应通常更快 +- 在最初的等待期间,不要中断该过程 +### 常见错误信息 [!toc] +当你看到: +- Connection refused:确认服务器在运行并且路径正确 +- Tool execution failed:验证工具所需的环境变量是否已设置 +- ANTHROPIC_API_KEY is not set: 检查你的环境变量 + + + 本教程完整的代码在[这里](https://github.io/modelcontextprotocol/csharp-sdk/tree/main/samples/QuickstartClient) +## 系统需求 [!toc] +开始之前,确认你的系统满足如下需求: +- .NET 8.0或更高版本 +- Anthropic API key (Claude) +- 操作系统Windows, Linux, 或MacOS +## 设置环境 [!toc] +首先,创建一个.NET项目 +```js +dotnet new console -n QuickstartClient +cd QuickstartClient +``` +然后,为项目添加需要的依赖 +```js +dotnet add package ModelContextProtocol --prerelease +dotnet add package Anthropic.SDK +dotnet add package Microsoft.Extensions.Hosting +``` +## 安装你的API key [!toc] + +你需要从[Anthropic Console](https://console.anthropic.com/settings/keys)获取一个Anthropic API key +```js +dotnet user-secrets init +dotnet user-secrets set "ANTHROPIC_API_KEY" "" +``` +## 创建客户端 [!toc] +### 客户端基础结构 [!toc] +首先,我们创建基础的客户端类: +```js +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.Hosting; + +var builder = Host.CreateEmptyApplicationBuilder(settings: null); + +builder.Configuration + .AddUserSecrets(); +``` +这将创建一个.NET控制台应用程序的开端,该应用程序可以从用户Secret中读取API Key。 + +接下来,我们将设置MCP客户端: +```js +var (command, arguments) = args switch +{ + [var script] when script.EndsWith(".py") => ("python", script), + [var script] when script.EndsWith(".js") => ("node", script), + [var script] when Directory.Exists(script) || (File.Exists(script) && script.EndsWith(".csproj")) => ("dotnet", $"run --project {script} --no-build"), + _ => throw new NotSupportedException("An unsupported server script was provided. Supported scripts are .py, .js, or .csproj") +}; + +await using var mcpClient = await McpClientFactory.CreateAsync(new() +{ + Id = "demo-server", + Name = "Demo Server", + TransportType = TransportTypes.StdIo, + TransportOptions = new() + { + ["command"] = command, + ["arguments"] = arguments, + } +}); + +var tools = await mcpClient.ListToolsAsync(); +foreach (var tool in tools) +{ + Console.WriteLine($"Connected to server with tools: {tool.Name}"); +} +``` + + 请确保为命名空间添加以下using语句: + ```js +using ModelContextProtocol.Client; +using ModelContextProtocol.Protocol.Transport; + ``` + +这将配置一个MCP客户端,该客户端将连接到一个作为命令行参数提供的服务器。然后列出来自连接服务器的可用工具。 +### 查询处理的逻辑 [!toc] +现在,现在让我们添加处理查询和工具调用的核心功能: +```js +using IChatClient anthropicClient = new AnthropicClient(new APIAuthentication(builder.Configuration["ANTHROPIC_API_KEY"])) + .Messages + .AsBuilder() + .UseFunctionInvocation() + .Build(); + +var options = new ChatOptions +{ + MaxOutputTokens = 1000, + ModelId = "claude-3-5-sonnet-20241022", + Tools = [.. tools] +}; + +while (true) +{ + Console.WriteLine("MCP Client Started!"); + Console.WriteLine("Type your queries or 'quit' to exit."); + + string? query = Console.ReadLine(); + + if (string.IsNullOrWhiteSpace(query)) + { + continue; + } + if (string.Equals(query, "quit", StringComparison.OrdinalIgnoreCase)) + { + break; + } + + var response = anthropicClient.GetStreamingResponseAsync(query, options); + + await foreach (var message in response) + { + Console.Write(message.Text); + } + Console.WriteLine(); +} +``` +## 关键组件说明 [!toc] +1. 客户端初始化 +- 客户端使用 McpClientFactory.CreateAsync() 进行初始化,它将设置传输类型和运行服务器的命令。 +2. 服务器连接 +- 支持 Python、Node.js 和 .NET 服务器。 +- 服务器使用参数中指定的命令启动。 +- 配置使用 stdio 与服务器通信。 +- 初始化会话和可用工具。 +3. 查询处理 +- 使用 [Microsoft.Extensions.AI](https://learn.microsoft.com/dotnet/ai/ai-extensions) 作为聊天客户端。 +- 将 IChatClient 配置为使用自动工具(函数)调用。 +- 客户端读取用户输入并将其发送至服务器。 +- 服务器处理查询并返回响应。 +- 回复将显示给用户。 +## 运行客户端 [!toc] +运行客户端,可选择任意服务器: +```js +dotnet run -- path/to/server.csproj # dotnet server +dotnet run -- path/to/server.py # python server +dotnet run -- path/to/server.js # node server +``` + + 如果你还在从服务器快速入门继续天气教程,你的命令可能看起来像这样:dotnet run -- path/to/QuickstartWeatherServer + +客户端将会: +1. 连接到指定的服务器 +2. 列出可用的工具 +3. 开始一个互动聊天的会话,你可以实现以下操作: +- 输入查询 +- 查看工具的执行情况 +- 从Claude得到响应 +4. 完成后退出会话 + +下面是一个在服务器快速入门教程中连接到天气服务器的示例: +![ImaImageZoomge](/quickstart-dotnet-client.png) + + +## 下一步 + + + 查看我们的官方MCP服务器库和实现 + + + 查看支持MCP集成的客户端列表 + + + 学习如何用像Claude一样的LLMs加快您的MCP开发 + + + 了解MCP如何连接客户端、服务器和LLMs + + + + diff --git a/content/docs/concepts/prompts.mdx b/content/docs/concepts/prompts.mdx new file mode 100644 index 0000000..09ed2a4 --- /dev/null +++ b/content/docs/concepts/prompts.mdx @@ -0,0 +1,392 @@ +--- +title: 提示词 +--- +import { Tab, Tabs } from 'fumadocs-ui/components/tabs'; + +创建可重用的提示词模板和工作流 + +提示词使服务器能够定义可重用的提示模板和工作流,客户机可以轻松地将其呈现给用户和LLM。它们提供了一种强大的方式来标准化和共享常见的LLM交互。 + +提示词被设计为由用户控制,这意味着它们由服务器暴露给客户端,目的是让用户能够显式地根据自己的需要选择要使用的提示词。 + +## 概述 ## +MCP中的提示符是预定义的模板,可以: +- 接受动态参数 +- 包含来自资源的上下文 +- 串联起多次交互 +- 指导特定的工作流程 +- 像UI元素一样的交互界面(如斜杠命令) +## 提示词结构 ## +每个提示符定义为: +```js +{ + name: string; // Unique identifier for the prompt + description?: string; // Human-readable description + arguments?: [ // Optional list of arguments + { + name: string; // Argument identifier + description?: string; // Argument description + required?: boolean; // Whether argument is required + } + ] +} +``` +## 发现提示词 ## +客户端可以通过 prompts/list 端点发现提示词: +```js +// Request +{ + method: "prompts/list" +} + +// Response +{ + prompts: [ + { + name: "analyze-code", + description: "Analyze code for potential improvements", + arguments: [ + { + name: "language", + description: "Programming language", + required: true + } + ] + } + ] +} +``` +## 使用提示词 ## +要使用提示词,客户端发起 prompts/get 请求: +```js +// Request +{ + method: "prompts/get", + params: { + name: "analyze-code", + arguments: { + language: "python" + } + } +} + +// Response +{ + description: "Analyze Python code for potential improvements", + messages: [ + { + role: "user", + content: { + type: "text", + text: "Please analyze the following Python code for potential improvements:\n\n```python\ndef calculate_sum(numbers):\n total = 0\n for num in numbers:\n total = total + num\n return total\n\nresult = calculate_sum([1, 2, 3, 4, 5])\nprint(result)\n```" + } + } + ] +} +``` +## 动态提示词 ## +提示词可以是动态的,并且包含以下: +### 嵌入式资源上下文 ### +```js +{ + "name": "analyze-project", + "description": "Analyze project logs and code", + "arguments": [ + { + "name": "timeframe", + "description": "Time period to analyze logs", + "required": true + }, + { + "name": "fileUri", + "description": "URI of code file to review", + "required": true + } + ] +} +``` +处理 prompts/get 请求时: +```js +{ + "messages": [ + { + "role": "user", + "content": { + "type": "text", + "text": "Analyze these system logs and the code file for any issues:" + } + }, + { + "role": "user", + "content": { + "type": "resource", + "resource": { + "uri": "logs://recent?timeframe=1h", + "text": "[2024-03-14 15:32:11] ERROR: Connection timeout in network.py:127\n[2024-03-14 15:32:15] WARN: Retrying connection (attempt 2/3)\n[2024-03-14 15:32:20] ERROR: Max retries exceeded", + "mimeType": "text/plain" + } + } + }, + { + "role": "user", + "content": { + "type": "resource", + "resource": { + "uri": "file:///path/to/code.py", + "text": "def connect_to_service(timeout=30):\n retries = 3\n for attempt in range(retries):\n try:\n return establish_connection(timeout)\n except TimeoutError:\n if attempt == retries - 1:\n raise\n time.sleep(5)\n\ndef establish_connection(timeout):\n # Connection implementation\n pass", + "mimeType": "text/x-python" + } + } + } + ] +} +``` +### 多步骤工作流 ### +```js +const debugWorkflow = { + name: "debug-error", + async getMessages(error: string) { + return [ + { + role: "user", + content: { + type: "text", + text: `Here's an error I'm seeing: ${error}` + } + }, + { + role: "assistant", + content: { + type: "text", + text: "I'll help analyze this error. What have you tried so far?" + } + }, + { + role: "user", + content: { + type: "text", + text: "I've tried restarting the service, but the error persists." + } + } + ]; + } +}; +``` +## 示例实现 ## +下面是在MCP服务器中实现提示词的一个完整示例: + + + ```js +import { Server } from "@modelcontextprotocol/sdk/server"; +import { + ListPromptsRequestSchema, + GetPromptRequestSchema +} from "@modelcontextprotocol/sdk/types"; + +const PROMPTS = { + "git-commit": { + name: "git-commit", + description: "Generate a Git commit message", + arguments: [ + { + name: "changes", + description: "Git diff or description of changes", + required: true + } + ] + }, + "explain-code": { + name: "explain-code", + description: "Explain how code works", + arguments: [ + { + name: "code", + description: "Code to explain", + required: true + }, + { + name: "language", + description: "Programming language", + required: false + } + ] + } +}; + +const server = new Server({ + name: "example-prompts-server", + version: "1.0.0" +}, { + capabilities: { + prompts: {} + } +}); + +// List available prompts +server.setRequestHandler(ListPromptsRequestSchema, async () => { + return { + prompts: Object.values(PROMPTS) + }; +}); + +// Get specific prompt +server.setRequestHandler(GetPromptRequestSchema, async (request) => { + const prompt = PROMPTS[request.params.name]; + if (!prompt) { + throw new Error(`Prompt not found: ${request.params.name}`); + } + + if (request.params.name === "git-commit") { + return { + messages: [ + { + role: "user", + content: { + type: "text", + text: `Generate a concise but descriptive commit message for these changes:\n\n${request.params.arguments?.changes}` + } + } + ] + }; + } + + if (request.params.name === "explain-code") { + const language = request.params.arguments?.language || "Unknown"; + return { + messages: [ + { + role: "user", + content: { + type: "text", + text: `Explain how this ${language} code works:\n\n${request.params.arguments?.code}` + } + } + ] + }; + } + + throw new Error("Prompt implementation not found"); +}); + ``` + + + ```js + from mcp.server import Server +import mcp.types as types + +# Define available prompts +PROMPTS = { + "git-commit": types.Prompt( + name="git-commit", + description="Generate a Git commit message", + arguments=[ + types.PromptArgument( + name="changes", + description="Git diff or description of changes", + required=True + ) + ], + ), + "explain-code": types.Prompt( + name="explain-code", + description="Explain how code works", + arguments=[ + types.PromptArgument( + name="code", + description="Code to explain", + required=True + ), + types.PromptArgument( + name="language", + description="Programming language", + required=False + ) + ], + ) +} + +# Initialize server +app = Server("example-prompts-server") + +@app.list_prompts() +async def list_prompts() -> list[types.Prompt]: + return list(PROMPTS.values()) + +@app.get_prompt() +async def get_prompt( + name: str, arguments: dict[str, str] | None = None +) -> types.GetPromptResult: + if name not in PROMPTS: + raise ValueError(f"Prompt not found: {name}") + + if name == "git-commit": + changes = arguments.get("changes") if arguments else "" + return types.GetPromptResult( + messages=[ + types.PromptMessage( + role="user", + content=types.TextContent( + type="text", + text=f"Generate a concise but descriptive commit message " + f"for these changes:\n\n{changes}" + ) + ) + ] + ) + + if name == "explain-code": + code = arguments.get("code") if arguments else "" + language = arguments.get("language", "Unknown") if arguments else "Unknown" + return types.GetPromptResult( + messages=[ + types.PromptMessage( + role="user", + content=types.TextContent( + type="text", + text=f"Explain how this {language} code works:\n\n{code}" + ) + ) + ] + ) + + raise ValueError("Prompt implementation not found") + ``` + + +## 最佳实践 ## +在执行提示词时: +1. 使用清晰、描述性的提示词名称 +2. 为提示词和参数提供详细的描述 +3. 验证所有必需的参数 +4. 优雅地处理缺失的参数 +5. 考虑对提示模板进行版本控制 +6. 在适当的时候缓存动态内容 +7. 实现错误处理 +8. 用文档记录需要的参数格式 +9. 考虑提示组合性 +10. 使用各种输入测试提示词 +## 用户界面集成 ## +提示词可以在客户端UI中以如下方式展示: +- 斜线指令 +- 快捷操作 +- 上下文菜单项 +- 命令面板项 +- 指导工作流 +- 互动的形式 +## 更新和更改 ## +服务器可以将提示词的更改通知客户端: +1. 服务器功能:prompts.listChanged +2. 通知:notifications/prompts/list_changed +3. 客户端重新获取提示词列表 +## 安全注意事项 ## +在执行提示词时: +- 验证所有参数 +- 清理验证用户输入 +- 考虑限速 +- 实现访问控制 +- 审计提示词的使用 +- 妥善处理敏感资料 +- 验证生成的内容 +- 实现超时 +- 考虑提示词注入攻击风险 +- 用文档记录安全要求 \ No newline at end of file diff --git a/content/docs/concepts/resources.mdx b/content/docs/concepts/resources.mdx new file mode 100644 index 0000000..eb8b73d --- /dev/null +++ b/content/docs/concepts/resources.mdx @@ -0,0 +1,214 @@ +--- +title: 资源 +--- +import { Tab, Tabs } from 'fumadocs-ui/components/tabs'; + +将服务器中的数据和内容暴露给 LLM + +资源是模型上下文协议(MCP)的核心要素,它允许服务器暴露数据和内容,客户端可以读取这些数据和内容,并将其用作与LLM 交互的上下文。 + + 资源旨在由应用程序控制,这意味着客户端应用程序可以决定如何以及何时使用这些资源。不同的 MCP 客户端处理资源的方式可能不同。例如: + - Claude Desktop 目前要求用户在使用资源前明确选择资源 + - 其他客户端可能会根据启发式方法自动选择资源 + - 有些实现甚至允许AI模型本身决定使用哪些资源 + + 服务器作者在实施资源支持时,应准备好处理任何这些交互模式。为了将数据自动暴露给模型,服务器作者应使用由模型控制的原语,如 “工具”(Tools)。 + +## 概述 +资源代表 MCP 服务器希望提供给客户端的任何类型的数据。这可能包括 +- 文件内容 +- 数据库记录 +- API 响应 +- 实时系统数据 +- 屏幕截图和图像 +- 日志文件 +- 更多 + +每个资源都由唯一的 URI 标识,可包含文本或二进制数据。 +## 资源的URI +使用遵循以下格式的uri来标识资源: +```js +[protocol]://[host]/[path] +``` +例如: +- file:///home/user/documents/report.pdf +- postgres://database/customers/schema +- screen://localhost/display1 + +协议和路径结构由MCP服务器的实现定义。服务器可以定义自己的自定义URI模式。 +## 资源类型 +资源可以包含两种类型的内容: +### 文本资源 +文本资源包含UTF-8编码的文本数据。这些适用于: +- 源代码 +- 配置文件 +- 日志文件 +- JSON / XML数据 +- 纯文本 +### 二进制资源 +二进制资源包含以base64编码的原始二进制数据。这些适用于: +- 图片 +- pdf文档 +- 音频文件 +- 视频文件 +- 其他非文本格式 +## 资源发现 +客户端可以通过两种主要方法发现可用资源: +### 直接资源 +服务器通过resources/list endpoint公开一个具体的资源列表。每种资源包括: +```js +{ + uri: string; // Unique identifier for the resource + name: string; // Human-readable name + description?: string; // Optional description + mimeType?: string; // Optional MIME type +} +``` +### 资源模板 +对于动态资源,服务器可以公开URI模板,客户端可以使用它来构造有效的资源URI: +```js +{ + uriTemplate: string; // URI template following RFC 6570 + name: string; // Human-readable name for this type + description?: string; // Optional description + mimeType?: string; // Optional MIME type for all matching resources +} +``` +## 读取资源 +为了读取资源,客户端使用资源URI发出resources/read请求。 + +服务器响应一个资源内容列表: +```js +{ + contents: [ + { + uri: string; // The URI of the resource + mimeType?: string; // Optional MIME type + + // One of: + text?: string; // For text resources + blob?: string; // For binary resources (base64 encoded) + } + ] +} +``` + +服务器可以在响应一个resources/read请求时返回多个资源。例如,这可以用于在读取目录时返回目录内的文件列表。 + +## 资源更新 +MCP通过两种机制支持资源的实时更新: +### 列表的变化 +当可用资源列表发生变化时,服务器可以通过notifications/resources/list_changed通知通知客户端。 +### 内容更改 +客户端可以订阅特定资源的更新: +1. 客户端对资源URI发送resources/subscribe +2. 当资源发生变化时,服务器发送notifications/resources/updated +3. 客户端可以通过resources/read获取最新的内容 +4. 客户端可以通过resources/unsubscribe取消订阅 +## 示例实现 ## +下面是在MCP服务器中实现资源支持的一个简单示例: + + + + + ```js +const server = new Server({ + name: "example-server", + version: "1.0.0" +}, { + capabilities: { + resources: {} + } +}); + +// List available resources +server.setRequestHandler(ListResourcesRequestSchema, async () => { + return { + resources: [ + { + uri: "file:///logs/app.log", + name: "Application Logs", + mimeType: "text/plain" + } + ] + }; +}); + +// Read resource contents +server.setRequestHandler(ReadResourceRequestSchema, async (request) => { + const uri = request.params.uri; + + if (uri === "file:///logs/app.log") { + const logContents = await readLogFile(); + return { + contents: [ + { + uri, + mimeType: "text/plain", + text: logContents + } + ] + }; + } + + throw new Error("Resource not found"); +}); + ``` + + + ```js +app = Server("example-server") + +@app.list_resources() +async def list_resources() -> list[types.Resource]: + return [ + types.Resource( + uri="file:///logs/app.log", + name="Application Logs", + mimeType="text/plain" + ) + ] + +@app.read_resource() +async def read_resource(uri: AnyUrl) -> str: + if str(uri) == "file:///logs/app.log": + log_contents = await read_log_file() + return log_contents + + raise ValueError("Resource not found") + +# Start server +async with stdio_server() as streams: + await app.run( + streams[0], + streams[1], + app.create_initialization_options() + ) +``` + + +## 最佳实践 ## +在实施资源支持时: +1. 使用清晰、描述性的资源名称和URI +2. 包括有用的描述来指导LLM的理解 +3. 已知的情况下,设置适当的MIME类型 +4. 为动态内容实现资源模板 +5. 对经常变化的资源使用订阅 +6. 用清晰的错误信息优雅地处理错误 +7. 考虑对大型资源列表进行分页 +8. 在适当的时候缓存资源内容 +9. 在处理之前验证URI +10. 记录您的自定义URI方案 +## 安全注意事项 ## +在对外暴露资源时: +- 验证所有资源URI +- 实施适当的访问控制 +- 清理文件路径以防止目录遍历 +- 谨慎处理二进制数据 +- 考虑对资源读取进行速率限制 +- 审计资源访问 +- 对传输中的敏感数据进行加密 +- 验证MIME类型 +- 为长时间运行的读取设置超时 +- 适当地处理资源清理 + diff --git a/content/docs/concepts/roots.mdx b/content/docs/concepts/roots.mdx new file mode 100644 index 0000000..d79b3e7 --- /dev/null +++ b/content/docs/concepts/roots.mdx @@ -0,0 +1,59 @@ +--- +title: 根 +--- +理解 MCP 中的根(Roots) + +根是 MCP 中的一个概念,它定义了服务器可以运行的边界。 它们为客户端提供了一种告知服务器相关资源及其位置的方式。 +## 什么是根? +根是一个 URI,客户端建议服务器应该关注它。 当客户端连接到服务器时,它会声明服务器应该使用的根。 虽然主要用于文件系统路径,但根可以是任何有效的 URI,包括 HTTP URL。 + +例如,根可以是: +```js +file:///home/user/projects/myapp +https://api.example.com/v1 +``` +## 为什么使用根? +根有几个重要的用途: +1. 指导性 (Guidance):它们告知服务器关于相关的资源和位置 +2. 清晰性 (Clarity):根可以明确哪些资源是工作区的一部分 +3. 组织性 (Organization):多个根可以让你同时处理不同的资源 +## 根的工作原理 ## +当客户端支持根时,它: +1. 在连接期间声明 roots 功能 (capability) +2. 向服务器提供建议的根列表 +3. 在根发生更改时通知服务器(如果支持) + +虽然根是信息性的,并非强制性的,但服务器应该: +1. 尊重提供的根 +2. 使用根 URI 来定位和访问资源 +3. 优先在根边界内进行操作 +## 常见用例 ## +根通常用于定义: +- 项目目录 +- 仓库位置 +- API 终端 (API endpoints) +- 配置位置 +- 资源边界 +## 最佳实践 ## +使用根时: +1. 只建议必要的资源 +2. 使用清晰、描述性的根名称 +3. 监控根的可访问性 +4. 优雅地处理根更改 +## 示例 ## +以下是典型的 MCP 客户端如何公开根: +```js +{ + "roots": [ + { + "uri": "file:///home/user/projects/frontend", + "name": "Frontend Repository" + }, + { + "uri": "https://api.example.com/v1", + "name": "API Endpoint" + } + ] +} +``` +此配置建议服务器关注本地存储库和 API 终端,同时保持它们的逻辑分离。 diff --git a/content/docs/concepts/sampling.mdx b/content/docs/concepts/sampling.mdx new file mode 100644 index 0000000..cc7c526 --- /dev/null +++ b/content/docs/concepts/sampling.mdx @@ -0,0 +1,195 @@ +--- +title: 采样 +--- +让您的服务器向 LLM 请求补全 + +采样 (Sampling) 是一项强大的 MCP 功能,它允许服务器通过客户端请求 LLM 补全(completions),从而实现复杂的代理行为,同时保持安全性和隐私。 + +此 MCP 功能在 Claude 桌面客户端 (Claude Desktop client)中尚不支持。 + +## 采样的工作原理 ## +采样流程包括以下步骤: +1. 服务器向客户端发送 sampling/createMessage 请求 +2. 客户端审核请求并可以修改它 +3. 客户端从 LLM 采样 +4. 客户端审核补全结果 +5. 客户端将结果返回给服务器 +这种人机协作的设计,确保用户保持对 LLM 所见和所生成内容的控制。 +## 消息格式 ## +采样请求使用标准化的消息格式: +```js +{ + messages: [ + { + role: "user" | "assistant", + content: { + type: "text" | "image", + + // For text: + text?: string, + + // For images: + data?: string, // base64 encoded + mimeType?: string + } + } + ], + modelPreferences?: { + hints?: [{ + name?: string // Suggested model name/family + }], + costPriority?: number, // 0-1, importance of minimizing cost + speedPriority?: number, // 0-1, importance of low latency + intelligencePriority?: number // 0-1, importance of capabilities + }, + systemPrompt?: string, + includeContext?: "none" | "thisServer" | "allServers", + temperature?: number, + maxTokens: number, + stopSequences?: string[], + metadata?: Record +} +``` +## 请求参数 ## +### 消息 ### +messages 数组包含要发送到 LLM 的对话历史记录。每条消息都有: +- role: 消息的角色,值可以是 "user"(用户)或 "assistant"(助手) +- content: 消息的内容,可以是: + - 带有 text 字段的文本内容 + - 带有 data(base64 编码)和 mimeType 字段的图像内容 +### 模型偏好 ### +modelPreferences 对象允许服务器指定其模型选择偏好: + +- hints: 客户端可用于选择合适模型的模型名称建议数组: + - name: 可以匹配完整或部分模型名称的字符串(例如,“claude-3”,“sonnet”) + - 客户端可以将提示(hints)映射到来自不同提供商的等效模型 + - 多个提示(hints)按偏好顺序评估 +- 优先级值(0-1 归一化): + - costPriority: 最小化成本的重要性 + - speedPriority: 低延迟响应的重要性 + - intelligencePriority: 高级模型能力的重要性 + +客户端根据这些偏好及其可用模型进行最终模型选择。 +### 系统提示 ### +可选的 systemPrompt 字段允许服务器请求特定的系统提示(system prompt)。 客户端可以修改或忽略此提示。 +### 上下文包含 ### +includeContext 参数指定要包含的 MCP 上下文: + +- "none":无其他上下文 +- "thisServer":包含来自请求服务器的上下文 +- "allServers":包含来自所有连接的 MCP 服务器的上下文 + +客户端控制实际包含哪些上下文。 +### 采样参数 ### +使用以下方法微调 LLM 采样: + +- temperature: 控制随机性(0.0 到 1.0) +- maxTokens: 要生成的最大令牌(token)数 +- stopSequences: 停止生成的序列数组 +- metadata: 其他特定于提供程序的参数 +## 响应格式 ## +客户端返回一个补全的结果 +```js +{ + model: string, // Name of the model used + stopReason?: "endTurn" | "stopSequence" | "maxTokens" | string, + role: "user" | "assistant", + content: { + type: "text" | "image", + text?: string, + data?: string, + mimeType?: string + } +} +``` +## 示例请求 ## +以下是客户端请求采样的示例: +```js +{ + "method": "sampling/createMessage", + "params": { + "messages": [ + { + "role": "user", + "content": { + "type": "text", + "text": "What files are in the current directory?" + } + } + ], + "systemPrompt": "You are a helpful file system assistant.", + "includeContext": "thisServer", + "maxTokens": 100 + } +} +``` +## 最佳实践 ## +实现采样时: +1. 始终提供清晰、结构良好的提示词 +2. 适当地处理文本和图像内容 +3. 设置合理的令牌(token)限制 +4. 通过 includeContext 包含相关上下文 +5. 在使用响应之前对其进行验证 +6. 优雅地处理错误 +7. 考虑对采样请求进行速率限制(rate limiting) +8. 记录可能出现的采样行为 +9. 使用各种模型参数进行测试 +10. 监控采样成本 +## 人工参与控制 ## +采样的设计考虑了人为的监督: +### 对提示词 ### +- 客户端应向用户显示建议的提示词 +- 用户应该能够修改或拒绝提示词 +- 系统提示词可以被过滤或修改 +- 上下文包含由客户端控制 +### 对补全 ### +- 客户端应向用户显示补全结果 +- 用户应该能够修改或拒绝补全结果 +- 客户端可以过滤或修改补全结果 +- 用户控制使用哪个模型 +## 安全注意事项 ## +实施采样时: +- 验证所有消息内容 +- 清理敏感信息 +- 实施适当的速率限制 +- 监控采样使用情况 +- 加密传输中的数据 +- 处理用户数据隐私 +- 审核采样请求 +- 控制成本风险 +- 实施超时 +- 优雅地处理模型错误 +## 常见模式 ## +### 智能代理工作流 ### +采样支持诸如以下代理模式: +- 阅读和分析资源 +- 根据上下文做出决策 +- 生成结构化数据 +- 处理多步骤任务 +- 提供交互式帮助 +### 上下文管理 ### +上下文的最佳实践: +- 仅请求最少必要的上下文 +- 清晰地构建上下文 +- 处理上下文大小限制 +- 根据需要更新上下文 +- 清理过时的上下文 +### 错误处理 ### +强健的错误处理应满足: +- 捕获采样失败 +- 处理超时错误 +- 管理速率限制 +- 验证响应 +- 提供回退行为 +- 适当地记录错误 +## 限制 ## +请注意以下限制: +- 采样取决于客户端功能 +- 用户控制采样行为 +- 上下文大小有限制 +- 可能存在速率限制 +- 应考虑成本 +- 模型可用性各不相同 +- 响应时间各不相同 +- 并非所有内容类型都支持采样 + diff --git a/content/docs/concepts/tools.mdx b/content/docs/concepts/tools.mdx new file mode 100644 index 0000000..2c049b7 --- /dev/null +++ b/content/docs/concepts/tools.mdx @@ -0,0 +1,272 @@ +--- +title: 工具 +--- +import { Tab, Tabs } from 'fumadocs-ui/components/tabs'; + +使LLM通过服务器执行操作 + +工具是模型上下文协议(MCP)中的一个强大的原语,它使服务器能够向客户端暴露可执行功能。通过工具,LLM可以与外部系统进行交互,执行计算,并在现实世界中执行操作。 + + 工具被设计为 model-controlled (模型控制)的,这意味着工具由服务器暴露给客户端,目的是AI模型能够自动调用它们(过程中由人授权批准)。 + +## 概述 ## +MCP中的工具允许服务器暴露可执行函数,这些函数可由客户端调用,并由LLM使用来执行操作。工具的主要方面包括: +- 发现:客户端可以通过 tools/list 端点列出可用的工具 +- 调用:使用 tools/call 端点调用工具,服务器在其中执行请求的操作并返回结果 +- 灵活性:工具的范围从简单的计算到复杂的API交互 + +与资源一样,工具由唯一名称标识,并且可以包含指导其使用的描述。然而,与资源不同的是,工具是动态操作,例如可以修改状态或与外部系统交互。 +## 工具的定义结构 ## +每个工具都用以下结构定义: +```js +{ + name: string; // Unique identifier for the tool + description?: string; // Human-readable description + inputSchema: { // JSON Schema for the tool's parameters + type: "object", + properties: { ... } // Tool-specific parameters + } +} +``` +## 工具实现 ## +以下是在MCP服务器中实现一个基本工具的示例: + + + ```js + const server = new Server({ + name: "example-server", + version: "1.0.0" +}, { + capabilities: { + tools: {} + } +}); + +// Define available tools +server.setRequestHandler(ListToolsRequestSchema, async () => { + return { + tools: [{ + name: "calculate_sum", + description: "Add two numbers together", + inputSchema: { + type: "object", + properties: { + a: { type: "number" }, + b: { type: "number" } + }, + required: ["a", "b"] + } + }] + }; +}); + +// Handle tool execution +server.setRequestHandler(CallToolRequestSchema, async (request) => { + if (request.params.name === "calculate_sum") { + const { a, b } = request.params.arguments; + return { + content: [ + { + type: "text", + text: String(a + b) + } + ] + }; + } + throw new Error("Tool not found"); +}); + ``` + + + ```js + app = Server("example-server") + +@app.list_tools() +async def list_tools() -> list[types.Tool]: + return [ + types.Tool( + name="calculate_sum", + description="Add two numbers together", + inputSchema={ + "type": "object", + "properties": { + "a": {"type": "number"}, + "b": {"type": "number"} + }, + "required": ["a", "b"] + } + ) + ] + +@app.call_tool() +async def call_tool( + name: str, + arguments: dict +) -> list[types.TextContent | types.ImageContent | types.EmbeddedResource]: + if name == "calculate_sum": + a = arguments["a"] + b = arguments["b"] + result = a + b + return [types.TextContent(type="text", text=str(result))] + raise ValueError(f"Tool not found: {name}") + ``` + + +## 工具模式示例 ## +以下是一些服务器可以提供的工具类型的示例: +### 系统操作 ### +与本地系统交互的工具: +```js +{ + name: "execute_command", + description: "Run a shell command", + inputSchema: { + type: "object", + properties: { + command: { type: "string" }, + args: { type: "array", items: { type: "string" } } + } + } +} +``` +### API的集成 ### +包装了外部API的工具: +```js +{ + name: "github_create_issue", + description: "Create a GitHub issue", + inputSchema: { + type: "object", + properties: { + title: { type: "string" }, + body: { type: "string" }, + labels: { type: "array", items: { type: "string" } } + } + } +} +``` +### 数据处理 ### +转换或分析数据的工具: +```js +{ + name: "analyze_csv", + description: "Analyze a CSV file", + inputSchema: { + type: "object", + properties: { + filepath: { type: "string" }, + operations: { + type: "array", + items: { + enum: ["sum", "average", "count"] + } + } + } + } +} +``` +## 最佳实践 ## +在实现工具时: +1. 提供清晰、描述性的名称和描述 +2. 对参数使用详细的JSON模式定义 +3. 在工具描述中包括示例,来说明模型应该如何使用它们 +4. 实现适当的错误处理和验证 +5. 对长期操作使用进度报告 +6. 保持工具操作的单一性和原子性 +7. 记录可能的返回值结构 +8. 实现适当的超时 +9. 考虑对资源密集型操作的速率限制 +10. 使用日志工具,用于调试和监控 +## 安全注意事项 ## +暴露工具时: +### 输入验证 ### +- 根据模式验证所有参数 +- 清理验证文件路径和系统命令 +- 验证URL和外部标识符 +- 检查参数大小和范围 +- 防止命令注入 +### 访问控制 ### +- 在需要的地方实现身份验证 +- 使用适当的授权检查 +- 审计工具使用情况 +- 速率限制请求 +- 监控访问权限滥用 +### 错误处理 ### +- 不要将内部错误暴露给客户端 +- 记录与安全相关的错误 +- 适当地处理超时 +- 错误发生后清理资源 +- 验证返回值 +## 工具发现和更新 ## +MCP支持动态工具发现: +1. 客户端可以随时列出可用的工具 +2. 服务器可以使用notifications/tools/list_changed通知客户端工具更改 +3. 可以在运行时添加或删除工具 +4. 可以更新工具定义(尽管这应该谨慎地进行) +## 错误处理 ## +工具错误应该在结果对象中报告,而不是作为MCP协议级错误报告。这允许LLM发现并潜在地处理错误。当工具遇到错误时: +1. 将结果中的isError设置为true +2. 在内容数组中包含错误详细信息 + +下面是一个正确处理工具错误的例子: + + + ```js + try { + // Tool operation + const result = performOperation(); + return { + content: [ + { + type: "text", + text: `Operation successful: ${result}` + } + ] + }; +} catch (error) { + return { + isError: true, + content: [ + { + type: "text", + text: `Error: ${error.message}` + } + ] + }; +} + ``` + + + ```js + try: + # Tool operation + result = perform_operation() + return types.CallToolResult( + content=[ + types.TextContent( + type="text", + text=f"Operation successful: {result}" + ) + ] + ) +except Exception as error: + return types.CallToolResult( + isError=True, + content=[ + types.TextContent( + type="text", + text=f"Error: {str(error)}" + ) + ] + ) + ``` + + +这种方法允许LLM看到发生了错误,并可能采取纠正措施或请求人工干预。 +## 测试工具 ## +MCP工具的全面测试策略应包括: +- 功能测试:通过验证有效输入,并适当处理无效输入来验证工具执行的正确性 +- 集成测试:使用真实的和模拟的依赖来测试工具与外部系统的交互 +- 安全性测试:验证身份验证、授权、输入清理和速率限制 +- 性能测试:检查负载下的行为、超时处理和资源清理 +- 错误处理:确保工具通过MCP协议正确报告错误并清理资源 diff --git a/content/docs/concepts/transports.mdx b/content/docs/concepts/transports.mdx new file mode 100644 index 0000000..9fa3718 --- /dev/null +++ b/content/docs/concepts/transports.mdx @@ -0,0 +1,371 @@ +--- +title: 传输 +--- +import { Tab, Tabs } from 'fumadocs-ui/components/tabs'; + +了解 MCP 的通信机制 + +Model Context Protocol (MCP) 中的传输层为 clients 和 servers 之间的通信提供基础。传输层处理消息发送和接收的底层机制。 +## 消息格式 ## +MCP 使用 JSON-RPC 2.0 作为其传输格式。传输层负责将 MCP 协议消息转换为 JSON-RPC 格式进行传输,并将接收到的 JSON-RPC 消息转换回 MCP 协议消息。 + +使用的 JSON-RPC 消息有三种类型: +### 请求 ### +```js +{ + jsonrpc: "2.0", + id: number | string, + method: string, + params?: object +} +``` +### 响应 ### +```js +{ + jsonrpc: "2.0", + id: number | string, + result?: object, + error?: { + code: number, + message: string, + data?: unknown + } +} +``` +### 通知 ### +```js +{ + jsonrpc: "2.0", + method: string, + params?: object +} +``` +## 内置传输层种类 ## +MCP 包含两个标准传输实现: + +### 标准输入输出 (stdio) ### +stdio 传输通过标准输入和输出流进行通信。这对于本地集成和命令行工具特别有用。 + +在以下情况下使用 stdio: +- 构建命令行工具 +- 实现本地集成 +- 需要简单的进程通信 +- 使用 shell 脚本 + + + ```js + const server = new Server({ + name: "example-server", + version: "1.0.0" +}, { + capabilities: {} +}); + +const transport = new StdioServerTransport(); +await server.connect(transport); + ``` + + + ```js + const client = new Client({ + name: "example-client", + version: "1.0.0" +}, { + capabilities: {} +}); + +const transport = new StdioClientTransport({ + command: "./server", + args: ["--option", "value"] +}); +await client.connect(transport); + ``` + + + ```js + app = Server("example-server") + +async with stdio_server() as streams: + await app.run( + streams[0], + streams[1], + app.create_initialization_options() + ) + ``` + + + ```js + params = StdioServerParameters( + command="./server", + args=["--option", "value"] +) + +async with stdio_client(params) as streams: + async with ClientSession(streams[0], streams[1]) as session: + await session.initialize() + ``` + + + +### 服务器发送事件 (SSE) ### +SSE 传输通过 HTTP POST 请求实现服务器到客户端的流式通信。 + +在以下情况下使用 SSE: + +- 仅需要 server-to-client 的流式通信 +- 在受限网络中工作 +- 实现简单更新 + + + ```js + import express from "express"; + +const app = express(); + +const server = new Server({ + name: "example-server", + version: "1.0.0" +}, { + capabilities: {} +}); + +let transport: SSEServerTransport | null = null; + +app.get("/sse", (req, res) => { + transport = new SSEServerTransport("/messages", res); + server.connect(transport); +}); + +app.post("/messages", (req, res) => { + if (transport) { + transport.handlePostMessage(req, res); + } +}); + +app.listen(3000); + ``` + + + ```js + const client = new Client({ + name: "example-client", + version: "1.0.0" +}, { + capabilities: {} +}); + +const transport = new SSEClientTransport( + new URL("http://localhost:3000/sse") +); +await client.connect(transport); + ``` + + + ```js + from mcp.server.sse import SseServerTransport +from starlette.applications import Starlette +from starlette.routing import Route + +app = Server("example-server") +sse = SseServerTransport("/messages") + +async def handle_sse(scope, receive, send): + async with sse.connect_sse(scope, receive, send) as streams: + await app.run(streams[0], streams[1], app.create_initialization_options()) + +async def handle_messages(scope, receive, send): + await sse.handle_post_message(scope, receive, send) + +starlette_app = Starlette( + routes=[ + Route("/sse", endpoint=handle_sse), + Route("/messages", endpoint=handle_messages, methods=["POST"]), + ] +) + ``` + + + ```js + async with sse_client("http://localhost:8000/sse") as streams: + async with ClientSession(streams[0], streams[1]) as session: + await session.initialize() + ``` + + + +## 自定义传输层 ## +MCP 使得为特定需求实现自定义传输层变得简单。任何传输层实现只需符合 Transport 接口: + +你可以为以下情况实现自定义传输: +- 自定义网络协议 +- 专用通信通道 +- 与现有系统集成 +- 性能优化 + + + ```js + interface Transport { + // Start processing messages + start(): Promise; + + // Send a JSON-RPC message + send(message: JSONRPCMessage): Promise; + + // Close the connection + close(): Promise; + + // Callbacks + onclose?: () => void; + onerror?: (error: Error) => void; + onmessage?: (message: JSONRPCMessage) => void; +} + ``` + + + ```js + @contextmanager +async def create_transport( + read_stream: MemoryObjectReceiveStream[JSONRPCMessage | Exception], + write_stream: MemoryObjectSendStream[JSONRPCMessage] +): + """ + Transport interface for MCP. + + Args: + read_stream: Stream to read incoming messages from + write_stream: Stream to write outgoing messages to + """ + async with anyio.create_task_group() as tg: + try: + # Start processing messages + tg.start_soon(lambda: process_messages(read_stream)) + + # Send messages + async with write_stream: + yield write_stream + + except Exception as exc: + # Handle errors + raise exc + finally: + # Clean up + tg.cancel_scope.cancel() + await write_stream.aclose() + await read_stream.aclose() + ``` + + +## 错误处理 ## +传输实现应处理各种错误场景: +1. 连接错误 +2. 消息解析错误 +3. 协议错误 +4. 网络超时 +5. 资源清理 + +错误处理示例: + + + ```js + class ExampleTransport implements Transport { + async start() { + try { + // Connection logic + } catch (error) { + this.onerror?.(new Error(`Failed to connect: ${error}`)); + throw error; + } + } + + async send(message: JSONRPCMessage) { + try { + // Sending logic + } catch (error) { + this.onerror?.(new Error(`Failed to send message: ${error}`)); + throw error; + } + } +} + ``` + + + 注意,虽然 MCP 服务器通常使用 asyncio 实现,但我们更建议用 anyio 来实现底层接口如传输,以获得更广泛的兼容性。 + ```js + @contextmanager +async def example_transport(scope: Scope, receive: Receive, send: Send): + try: + # Create streams for bidirectional communication + read_stream_writer, read_stream = anyio.create_memory_object_stream(0) + write_stream, write_stream_reader = anyio.create_memory_object_stream(0) + + async def message_handler(): + try: + async with read_stream_writer: + # Message handling logic + pass + except Exception as exc: + logger.error(f"Failed to handle message: {exc}") + raise exc + + async with anyio.create_task_group() as tg: + tg.start_soon(message_handler) + try: + # Yield streams for communication + yield read_stream, write_stream + except Exception as exc: + logger.error(f"Transport error: {exc}") + raise exc + finally: + tg.cancel_scope.cancel() + await write_stream.aclose() + await read_stream.aclose() + except Exception as exc: + logger.error(f"Failed to initialize transport: {exc}") + raise exc + ``` + + +## 最佳实践 ## +在实现或使用 MCP 传输时: +1. 正确处理连接生命周期 +2. 实现适当的错误处理 +3. 在连接关闭时清理资源 +4. 使用适当的超时 +5. 在发送前验证消息 +6. 记录传输事件以便调试 +7. 在适当时实现重连逻辑 +8. 处理消息队列中的背压 +9. 监控连接健康状况 +10. 实现适当的安全措施 +## 安全注意事项 ## +在实现传输时: +​ +### 认证和授权 ### +- 实现适当的认证机制 +- 验证客户端凭据 +- 使用安全的令牌处理 +- 实现授权检查 +### 数据安全 ### +- 使用 TLS 进行网络传输 +- 加密敏感数据 +- 验证消息完整性 +- 实现消息大小限制 +- 对输入数据进行清理验证 +### ​网络安全 ### +- 实现速率限制 +- 使用适当的超时 +- 处理拒绝服务场景 +- 监控异常模式 +- 实施适当的防火墙规则 +## 调试传输 ## +一些调试传输层问题的小贴士: +1. 启用调试日志 +2. 监控消息流 +3. 检查连接状态 +4. 验证消息格式 +5. 测试错误场景 +6. 使用网络分析工具 +7. 实现健康检查 +8. 监控资源使用 +9. 测试边界情况 +10. 使用适当的错误跟踪 diff --git a/content/docs/test.mdx b/content/docs/test.mdx deleted file mode 100644 index d1ee3a8..0000000 --- a/content/docs/test.mdx +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: Components -description: Components ---- - -## Code Block - -```js -console.log('Hello World'); -``` - -## Cards - - - - - diff --git a/content/docs/tutorials/debugging.mdx b/content/docs/tutorials/debugging.mdx new file mode 100644 index 0000000..59e8fe3 --- /dev/null +++ b/content/docs/tutorials/debugging.mdx @@ -0,0 +1,204 @@ +--- +title: 调试 +--- +import { Tab, Tabs } from 'fumadocs-ui/components/tabs'; + +调试模型上下文协议(MCP)集成的综合指南 + +有效的调试对于开发 MCP 服务器或将其与应用程序集成至关重要。本指南涵盖了 MCP 生态系统中可用的调试工具和方法。 + + 本指南适用于 macOS,其他平台的指南即将推出。 + +## 调试工具概览 ## +MCP 提供了几种不同级别的调试工具: +1. MCP 检查器(MCP Inspector) +- 交互式调试界面 +- 直接服务器测试 +- 有关详细信息,请参阅检查器指南 +2. Claude 桌面开发者工具(Claude Desktop Developer Tools) +- 集成测试 +- 日志收集 +- Chrome DevTools 集成 +3. 服务器日志记录(Server Logging) +- 自定义日志记录实现 +- 错误跟踪 +- 性能监控 +## 在 Claude 桌面版中调试 ## +### 检查服务器状态 ### +Claude.app 界面提供了基本的服务器状态信息: +1. 单击![ImaImageZoomge](/claude-desktop-mcp-plug-icon.svg)图标查看: +- 已连接的服务器 +- 可用的提示词和资源 +2. 单击![ImaImageZoomge](/claude-desktop-mcp-hammer-icon.svg)图标查看: +- 提供给模型的工具 +### 查看日志 ### +从 Claude 桌面版查看详细的 MCP 日志: +```js +# 实时跟踪日志 +tail -n 20 -F ~/Library/Logs/Claude/mcp*.log +``` +日志捕获: +- 服务器连接事件 +- 配置问题 +- 运行时错误 +- 消息交换 +### 使用 Chrome 开发者工具 ### +在 Claude 桌面版中访问 Chrome 的开发者工具来调查客户端的错误: +1. 创建一个 developer_settings.json 文件,并将 allowDevTools 设置为 true: +```js +echo '{"allowDevTools": true}' > ~/Library/Application\ Support/Claude/developer_settings.json +``` +2. 打开开发者工具DevTools:Command-Option-Shift-i +注意:您将看到两个 DevTools 窗口: +- 主要内容窗口 +- 应用程序标题栏窗口 + +使用控制台(Console)面板检查客户端错误。 + +使用网络(Network)面板检查: +- 消息负载 +- 连接时序 +## 常见问题 ## +### 工作目录 ### +当在Claude 桌面版使用MCP服务器时: +- 通过 claude_desktop_config.json 启动的服务器的工作目录可能未定义(例如 macOS 上的 /),因为 Claude 桌面版可能会从任何位置启动 +- 始终在您的配置和 .env 文件中使用绝对路径,以确保可靠的操作 +- 对于通过命令行直接测试服务器,工作目录将是您运行命令的位置 + +例如,在 claude_desktop_config.json 中,使用: +```js +{ + "command": "npx", + "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/username/data"] +} +``` +而不是像 ./data 这样的相对路径 +### 环境变量 ### +MCP 服务器仅自动继承环境变量的子集,例如 USER、HOME 和 PATH。 + +要覆盖默认变量或提供您自己的变量,您可以在 claude_desktop_config.json 中指定一个 env 键: +```js +{ + "myserver": { + "command": "mcp-server-myapp", + "env": { + "MYAPP_API_KEY": "some_key", + } + } +} +``` +### 服务器初始化 ### +常见的初始化问题: +1. 路径问题 +- 不正确的服务器可执行文件路径 +- 缺少所需的文件 +- 权限问题 +- 尝试使用command的绝对路径 +2. 配置错误 +- 无效的 JSON 语法 +- 缺少必需字段 +- 类型不匹配 +3. 环境问题 +- 缺少环境变量 +- 不正确的变量值 +- 权限限制 +### 连接问题 ### +当服务器无法连接时: +1. 检查 Claude 桌面版日志 +2. 验证服务器进程是否正在运行 +3. 使用调试器(Inspector) 进行独立测试 +4. 验证协议兼容性 +## 实现日志记录 ## +### 服务器端日志记录 ### +当构建使用本地 stdio 传输(Transport,)的服务器时,所有记录到 stderr(标准错误)的消息将自动被主机应用程序(例如 Claude Desktop)捕获。 + +本地MCP服务器不应该将消息记录到stdout(标准输出),因为这会干扰协议操作。 + +对于所有传输,您还可以通过发送日志消息通知向客户端提供日志记录: + + + ```js + server.request_context.session.send_log_message( + level="info", + data="Server started successfully", +) + ``` + + + ```js + server.sendLoggingMessage({ + level: "info", + data: "Server started successfully", +}); + ``` + + +要记录的重要事件: +- 初始化步骤 +- 资源访问 +- 工具执行 +- 错误情况 +- 性能指标 +### 客户端日志记录 ### +在客户端应用程序中: +1. 启用调试日志记录 +2. 监控网络流量 +3. 跟踪消息交换 +4. 记录错误状态 +## 调试工作流程 ## +### 开发周期 ### +1. 初始开发 +- 使用 Inspector 进行基本测试 +- 实现核心功能 +- 添加日志记录点 +2. 集成测试 +- 在 Claude Desktop 中测试 +- 监控日志 +- 检查错误处理 +### 测试更改 ### +为了有效地测试更改: +- 配置更改:重启 Claude Desktop +- 服务器代码更改:使用 Command-R 重新加载 +- 快速迭代:在开发期间使用 调试器(Inspector) +## 最佳实践 ## +### 日志记录策略 ### +1. 结构化日志记录(Structured Logging) +- 使用一致的格式 +- 包括上下文 +- 添加时间戳 +- 跟踪请求 ID +2. 错误处理(Error Handling) +- 记录堆栈跟踪 +- 包括错误上下文 +- 跟踪错误模式 +- 监控恢复 +3. 性能跟踪(Performance Tracking) +- 记录操作时序 +- 监控资源使用情况 +- 跟踪消息大小 +- 测量延迟 +### 安全注意事项 ### +调试时: +1. 敏感数据(Sensitive Data) +- 清理日志 +- 保护凭据 +- 屏蔽个人信息 +2. 访问控制(Access Control) +- 验证权限 +- 检查身份验证 +- 监控访问模式 +## 获取帮助 ## +遇到问题时: +1. 第一步 +- 检查服务器日志 +- 使用 调试器(Inspector) 进行测试 +- 审查配置 +- 验证环境 +2. 支持渠道 +- GitHub 问题(GitHub issues) +- GitHub 讨论(GitHub discussions) +3. 提供信息 +- 日志摘录 +- 配置文件 +- 重现步骤 +- 环境详情 \ No newline at end of file diff --git a/content/docs/tutorials/inspector.mdx b/content/docs/tutorials/inspector.mdx new file mode 100644 index 0000000..fe8d427 --- /dev/null +++ b/content/docs/tutorials/inspector.mdx @@ -0,0 +1,96 @@ +--- +title: 调试器Inspector +--- +import { Tab, Tabs } from 'fumadocs-ui/components/tabs'; + +以下是使用 MCP 调试器(Inspector)测试和调试模型上下文协议(MCP)服务器的深度指南。 +MCP [调试器](https://github.com/modelcontextprotocol/inspector)是一个交互式的开发者工具,用于测试和调试 MCP 服务器。 虽然调试指南将调试器作为整体调试工具包的一部分进行了介绍,但本文档将详细探讨 Inspector 的特性和功能。 +## 入门 ## +### 安装和基本用法 ### +调试器通过 npx 直接运行,无需安装: +```js +npx @modelcontextprotocol/inspector +``` +```js +npx @modelcontextprotocol/inspector +``` +#### 从 NPM 或 PyPi 检查服务器 #### +从 NPM 或 PyPi 启动的服务器包的常见方式 + + + ```js + npx -y @modelcontextprotocol/inspector npx +# For example +npx -y @modelcontextprotocol/inspector npx server-postgres postgres://127.0.0.1/testdb + ``` + + + ```js + npx @modelcontextprotocol/inspector uvx +# For example +npx @modelcontextprotocol/inspector uvx mcp-server-git --repository ~/code/mcp/servers.git + ``` + + +#### 检查本地开发的服务器 #### +要检查本地开发或作为存储库下载的服务器,最常见的方式是: + + + ```js + npx @modelcontextprotocol/inspector node path/to/server/index.js args... + ``` + + + ```js + npx @modelcontextprotocol/inspector \ + uv \ + --directory path/to/server \ + run \ + package-name \ + args... + ``` + + +请仔细阅读任何随附的 README 文件,以获取最准确的说明。 +## 功能概述 ## +![ImaImageZoomge](/mcp-inspector.png) +MCP 调试器界面 +调试器提供了多个与 MCP 服务器交互的功能: +### 服务器连接面板 ### +- 允许选择用于连接到服务器的传输方式(transport) +- 对于本地服务器,支持自定义命令行参数和环境变量 +### 资源选项卡 ### +- 列出所有可用资源(resource) +- 显示资源元数据(MIME 类型、描述) +- 允许资源内容检查 +- 支持订阅测试 +### 提示选项卡 ### +- 显示可用的提示词模板(prompt template) +- 显示提示词参数和描述 +- 启用带有自定义参数的提示测试 +- 预览生成的消息 +### 工具选项卡 ### +- 列出可用的工具(tool) +- 显示工具模式(schema)和描述 +- 启用带有自定义输入的工具测试 +- 显示工具执行结果 +### 通知面板 ### +- 显示从服务器记录的所有日志 +- 显示从服务器收到的通知 +## 最佳实践 ## +### 开发工作流 ### +1. 开始开发 +- 使用您的服务器启动调试器 +- 验证基本连接 +- 检查能力协商(capability negotiation) +2. 迭代测试 +- 更改服务器 +- 重新构建服务器 +- 重新连接调试器 +- 测试受影响的功能 +- 监控消息 +3. 测试边缘情况 +- 无效输入 +- 缺少提示参数 +- 并发操作 +- 验证错误处理和错误响应 \ No newline at end of file diff --git a/content/docs/your-1st-MCP-server/test.mdx b/content/docs/your-1st-MCP-server/test.mdx deleted file mode 100644 index d1ee3a8..0000000 --- a/content/docs/your-1st-MCP-server/test.mdx +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: Components -description: Components ---- - -## Code Block - -```js -console.log('Hello World'); -``` - -## Cards - - - - - diff --git a/public/claude-desktop-mcp-hammer-icon.svg b/public/claude-desktop-mcp-hammer-icon.svg new file mode 100644 index 0000000..d8e4f80 --- /dev/null +++ b/public/claude-desktop-mcp-hammer-icon.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/claude-desktop-mcp-plug-icon.svg b/public/claude-desktop-mcp-plug-icon.svg new file mode 100644 index 0000000..1cf5678 --- /dev/null +++ b/public/claude-desktop-mcp-plug-icon.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/mcp-inspector.png b/public/mcp-inspector.png new file mode 100644 index 0000000000000000000000000000000000000000..94834e8a5f3ca42ea1c9c5ac87c77bbac5a09072 GIT binary patch literal 300631 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

#%7 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–c=jP6SXwyZCiFr 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 ImkyW&@0@ya+&IPb!Ji|0J*f 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 U`9Q}t3G}neY>(;P9UjsD2FPISIRF3v literal 0 HcmV?d00001 diff --git a/public/quickstart-dotnet-client.png b/public/quickstart-dotnet-client.png new file mode 100644 index 0000000000000000000000000000000000000000..73b9f9faebe573ef77bb640e29d47ec8b76c67e6 GIT binary patch literal 83600 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 CI>(#< literal 0 HcmV?d00001