使用说明
MCP服务器演示
实现用于AI模型交互的模型控制协议(MCP)的演示服务器。
概述
该项目展示了一个模块化的MCP服务器实现,允许AI模型:
- 执行工具(计算用户统计数据并更新用户状态)
- 访问资源(用户数据和系统信息)
- 使用预定义的提示进行常见交互
我们提供了一些基本的静态资源、工具和提示,以说明如何构建MCP服务器。服务器被设计为与Claude桌面客户端兼容。
包裹
mcp[cli]软件包版本1.9.4或更高
安装
- 创建并激活虚拟环境:
uv venv
source .venv/bin/activate # On Unix/MacOS
# or
.\.venv\Scripts\activate # On Windows
- 安装所需的软件包:
uv sync
用法
将服务器添加到MCP客户端配置中: 要将此MCP服务器与Claude桌面客户端一起使用,您需要修改客户端配置文件以包含服务器详细信息。 根据您的操作系统,您可以在以下位置找到配置文件:
MacOS/Linux
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
视窗
code %APPDATA%\Claude\claude_desktop_config.json
并添加以下配置:
{
"mcpServers": {
"demo": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/PARENT/FOLDER/demo",
"run",
"demo.py"
]
}
}
}
资源
服务器提供两种内存资源:
memory://users:包含基本信息的用户记录集合memory://system-info:服务器的系统元数据
工具
实施了两个工具:
calculate_user_stats:分析用户数据并返回统计数据update_user_status:修改用户的活动状态
鼓励
预定义的交互模板:
analyze-user-data:用于分析用户数据中的模式generate-report:用于根据可用数据创建格式化报告
项目结构
该项目遵循模块化组织:
mcp-server-demo/
├── demo.py # Main entry point
├── pyproject.toml # Project configuration
├── README.md # This documentation
├── uv.lock # Dependencies lock file
└── src/ # Main package
├── __init__.py # Package initialization
├── server.py # Server creation and configuration
├── resources/ # Resource-related modules
│ ├── __init__.py
│ └── handlers.py # Resource handlers implementation
├── tools/ # Tool-related modules
│ ├── __init__.py
│ └── handlers.py # Tool handlers implementation
└── prompts/ # Prompt-related modules
├── __init__.py
└── handlers.py # Prompt handlers implementation
协议细节
模型控制协议(MCP)定义了AI模型与应用程序交互的标准化方式。它提供:
- 资源:应用程序控制的上下文数据源
- 工具:执行动作的模型控制功能
- 鼓励:LLM交互的用户控制模板