使用说明
项目简介
test-python-mcp-server 是一个使用 Python 开发的 MCP (Model Context Protocol) 服务器示例项目。它旨在演示如何构建一个基于 MCP 协议的后端服务,为 LLM 客户端提供上下文信息和功能。该服务器实现了一个简单的笔记管理系统,包括资源管理、Prompt 模板和工具注册,帮助开发者理解和实践 MCP 服务器的开发。
主要功能点
- 资源 (Resources) 管理:
- 提供 'note://' URI 方案用于访问和管理笔记资源。
- 每个笔记资源包含名称、描述和 'text/plain' MIME 类型。
- 客户端可以列出和读取笔记资源。
- Prompt 模板 (Prompts):
- 提供 'summarize-notes' Prompt 模板,用于生成笔记摘要。
- 支持可选的 'style' 参数('brief' 或 'detailed')来控制摘要的详细程度。
- Prompt 模板结合服务器端存储的笔记数据生成 Prompt 内容。
- 工具 (Tools):
- 提供 'add-note' 工具,允许客户端向服务器添加新的笔记。
- 'add-note' 工具接受 'name' 和 'content' 两个字符串参数。
- 工具执行后,服务器状态更新,并可以通知客户端资源变更(示例代码中通知部分被注释,实际应用中应启用)。
安装步骤
- 下载仓库代码: 从 GitHub 仓库 'https://github.com/jtorreggiani/test-python-mcp-server' 下载代码到本地。
- 安装依赖: 导航到仓库根目录,运行命令 'uv sync' 安装项目依赖。确保你已安装 'uv' 包管理器。如果未安装,请参考 uv installation 进行安装。
- 构建: 运行命令 'uv build' 构建项目,这将在 'dist/' 目录下生成发布包(可选,本地开发可跳过)。
服务器配置
要将此 MCP 服务器配置到 MCP 客户端(例如 Claude Desktop),你需要提供服务器的启动命令和参数。以下是针对开发环境的配置示例,你需要根据你的实际环境进行调整。
MCP 客户端配置 (JSON 格式示例):
{ "mcpServers": { "test-server": { "command": "uv", "args": [ "--directory", "/path/to/test-python-mcp-server/test-server", // 将此路径替换为你的本地仓库 test-server 目录的绝对路径 "run", "test-server" ] } } }
配置参数说明:
- '"server name": "test-server"': 服务器名称,用于在客户端中标识和引用此服务器。
- '"command": "uv"': 启动服务器的命令。这里使用 'uv' 命令运行 Python 脚本。你需要确保 'uv' 命令在你的系统环境变量 'PATH' 中可用。如果使用 'python3' 直接运行,可以将 'command' 更改为 'python3'。
- '"args"': 传递给 'command' 的参数列表。
- '"--directory"': 指定服务器代码所在的目录。请务必将 '/path/to/test-python-mcp-server/test-server' 替换为你本地 'test-python-mcp-server' 仓库中 'test-server' 目录的绝对路径。 例如,如果你的仓库路径是 '/Users/yourname/repos/test-python-mcp-server',那么此参数的值应为 '/Users/yourname/repos/test-python-mcp-server/test-server'。
- '"run"': 'uv run' 命令的子命令,用于运行指定的 Python 模块或脚本。
- '"test-server"': 指定要运行的 Python 模块名称。这里对应 'src/test_server/init.py' 中定义的 'main' 函数。
如何找到仓库的绝对路径? 在你的终端中,导航到 'test-python-mcp-server/test-server' 目录,然后运行命令 'pwd' (macOS/Linux) 或 'Get-Location' (Windows PowerShell),终端会输出当前目录的绝对路径,复制该路径并替换到配置文件中。
将配置添加到 MCP 客户端: 根据你使用的 MCP 客户端 (如 Claude Desktop) 的文档,找到 MCP 服务器配置文件的位置 (例如 'claude_desktop_config.json'),并将上述 JSON 配置片段添加到 'mcpServers' 字段中。
基本使用方法
- 启动 MCP 服务器: 客户端配置完成后,当客户端尝试连接 'test-server' 时,会自动根据配置启动该 MCP 服务器。
- 客户端交互: 使用 MCP 客户端提供的界面或 API,你可以:
- 列出可用的笔记资源。
- 读取指定 URI 的笔记内容。
- 调用 'summarize-notes' Prompt 模板来生成笔记摘要,并可选择摘要风格。
- 调用 'add-note' 工具来添加新的笔记。
具体操作方式取决于你使用的 MCP 客户端的功能和界面设计,请参考相应的客户端使用文档。
调试: 如果遇到问题,可以使用 MCP Inspector 工具进行调试,具体方法请参考仓库 README.md 中的 "Debugging" 部分。
信息
分类
生产力应用