模型上下文协议服务器构建

这是一个教授如何构建、使用和评估MCP服务器的6小时强化工作坊,MCP是连接AI应用与外部工具和数据源的新兴标准。

  • by nag9s
  • 本地部署
  • 更新于
在 GitHub 查看 nag9s/MCP-Workshop

使用说明

模型上下文协议研讨会

欢迎参加模型上下文协议(MCP)研讨会!这个6小时的密集研讨会将教你如何构建、使用和评估MCP服务器——这是将人工智能应用程序连接到外部工具和数据源的新兴标准。

工作坊概述

持续时间: 6小时(2节×3小时) 格式: 约80%的实践实验室,约20%的讲座 先决条件: Python经验(1-3年),熟悉LLM和API

你将学到什么

  • 了解MCP架构:服务器、客户端、主机和传输
  • 使用和评估公开可用的MCP服务器
  • 使用FastMCP(Python SDK)构建自定义MCP服务器
  • 实施工具、资源和提示
  • 从您自己的应用程序以编程方式连接到MCP服务器
  • 在评估第三方MCP服务器时应用安全最佳实践

你将建造什么

到本次研讨会结束时,您将建立一个功能齐全的 文档助理MCP服务器 与:

  • 搜索和检索工具
  • 具有URI模式的文档资源
  • 可重复使用的提示模板
  • 生产就绪错误处理

议程

第1讲:基础(3小时)

时间 活动 描述
0:00-0:30 MCP介绍 架构、概念、与REST API的比较
0:30-1:15 实验1:使用公共MCP服务器 使用MCP服务器配置VS Code+GitHub Copilot
1:15-1:30 休息 -
1:30-2:00 MCP安全与最佳实践 评估服务器、风险、信任边界
2:00-2:45 实验2:您的第一台MCP服务器 使用FastMCP装饰器构建服务器
2:45-3:00 总结与问答 复习、预习第2节

课程2:高级(3小时)

时间 活动 描述
0:00-0:30 高级工具和资源 异步工具、资源、URI模式
0:30-1:15 实验3:高级工具和资源 构建异步工具,添加资源,MCP客户端SDK
1:15-1:30 休息 -
1:30-2:00 提示和生产 MCP提示、运输方式、部署
2:00-2:45 实验4:Capstone 构建文档助手MCP服务器
2:45-3:00 演示和总结 参与者演示他们的服务器

存储库结构

MCP-Workshop/
├── README.md                      # This file
├── requirements.txt               # Python dependencies
├── .env.example                   # API key template
├── utils/                         # Shared utilities
├── Labs/
│   ├── Session_1/
│   │   ├── README_Session_1.md    # Session 1 guide
│   │   ├── Lab_1_Using_Public_MCP_Servers.ipynb
│   │   ├── Lab_2_Your_First_MCP_Server.ipynb
│   │   └── assets/
│   └── Session_2/
│       ├── README_Session_2.md    # Session 2 guide
│       ├── Lab_3_Advanced_Tools_and_Resources.ipynb
│       ├── Lab_4_Capstone_Document_Assistant.ipynb
│       └── assets/
├── Solutions/                     # Reference implementations
├── Slides/                        # Presentation decks
└── Supporting_Materials/
    └── Environment_Setup_Guide.md

入门指南

1.先决条件

  • Python 3.10+ (MCP SDK需要)
  • VS Code 使用GitHub Copilot扩展
  • Git 用于版本控制
  • OpenAI API密钥 (用于LLM交互)

2.克隆存储库

git clone https://github.com/your-org/MCP-Workshop.git
cd MCP-Workshop

3.创建虚拟环境

python -m venv .venv
# macOS/Linux
source .venv/bin/activate
# Windows
.\.venv\Scripts\Activate.ps1

4.安装依赖项

pip install --upgrade pip
pip install -r requirements.txt

5.配置API密钥

创建一个 .env 模板中的文件:

cp .env.example .env

编辑 .env 并添加您的API密钥:

OPENAI_API_KEY=sk-...

6.验证安装

# Test MCP CLI is installed
mcp --version

# Run the validation script (optional)
python -c "from utils import setup_llm_client; print('Setup OK')"

实验室概述

实验1:使用公共MCP服务器

学习使用VS Code和GitHub Copilot发现、安装和使用公开可用的MCP服务器。评估服务器质量和安全考虑因素。

实验2:您的第一台MCP服务器

使用FastMCP构建您的第一个MCP服务器。使用创建工具 @mcp.tool() 装饰师,与 mcp dev,并与MCP检查员进行测试。

实验3:高级工具和资源

使用进度报告实现异步工具,使用URI模式将数据作为资源公开,并学习从Python代码以编程方式连接到MCP服务器。

实验4:Capstone-文档助理

构建一个完整的MCP服务器,作为具有搜索工具、文档资源和分析提示的文档助手。


关键资源


API成本估算

本次研讨会使用AI API。每个实验室的估计成本:

实验室 API调用 估计成本
实验1 5-10次工具调用 0.01-0.05美元
实验室2 最低(本地测试) 0.00-0.02美元
实验3 10-15次工具调用 0.02-0.10美元
实验4 20-30次工具调用 0.10-0.30美元
工作坊总计 ~50-60个电话 $0.15 - $0.50

注: 成本可能因型号选择和输入/输出长度而异。


故障排除

常见问题

问题: ModuleNotFoundError: No module named 'mcp'

  • 解决方案: 确保您的虚拟环境已激活并运行 pip install "mcp[cli]"

问题: MCP服务器无法启动

  • 解决方案: 检查你是否使用Python 3.10+ python --version

问题: VS Code无法识别MCP服务器

  • 解决方案: 在settings.json中配置MCP后重新启动VS Code

看 Supporting_Materials/Environment_Setup_Guide.md 了解详细的故障排除。


许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。