使用说明
基本能力
产品定位
MCP是一个用于管理和执行AI模型上下文的框架,支持多种类型的模型上下文,包括LLM提示、Jupyter笔记本和Python脚本。
核心功能
- 注册和管理不同类型的MCP(LLM提示、笔记本、脚本)
- 执行MCP并在Web UI中查看结果
- 监控服务器健康状况和统计信息
- 可扩展以支持新的MCP类型
适用场景
- AI模型开发和测试
- 数据分析和可视化
- 自动化脚本执行
- 模型监控和管理
使用教程
使用依赖
- Python 3.9+
- 推荐创建并激活虚拟环境
安装教程
pip install -r requirements.txt
环境变量
- 设置
MCP_API_KEY用于API认证(可选,默认提供) - 对于LLM,如果使用Claude,设置
ANTHROPIC_API_KEY
启动后端
uvicorn mcp.api.main:app --reload
启动前端
streamlit run mcp/ui/app.py
调试方式
- 访问仪表盘:http://localhost:8501
- 从UI创建、管理和测试MCP
- 从侧边栏监控健康状况和统计信息
添加新的MCP
- 在
mcp/core/中实现一个新的MCP类 - 在后端注册
- 在
mcp/ui/app.py中添加UI支持
运行测试
pytest
API文档
服务器运行后,可以访问:
- API文档:http://localhost:8000/docs
- Prometheus指标:http://localhost:8000/metrics
- 健康检查:http://localhost:8000/health
- 统计信息:http://localhost:8000/stats
安全
- 所有端点都需要API密钥认证
- 默认启用速率限制
- CORS配置为仅允许特定来源
- 所有敏感配置通过环境变量管理
监控
服务器包括:
- Prometheus指标,用于请求计数、延迟和服务器执行
- 结构化JSON日志
- 健康检查端点
- 服务器统计端点
贡献
- Fork仓库
- 创建特性分支
- 提交更改
- 推送到分支
- 创建Pull Request
笔记本和LLM集成的额外依赖
此项目现在需要以下额外的Python包:
- pandas
- numpy
- matplotlib
- papermill
- nbformat
- jupyter
- anthropic
安装所有依赖:
pip install -r requirements.txt
使用笔记本MCP调用LLM(Claude)
示例笔记本(mcp/notebooks/example.ipynb)演示了:
- 数据分析和绘图
- 通过
anthropicPython包调用Claude LLM
要使用LLM单元格,请确保在环境或.env文件中设置了ANTHROPIC_API_KEY。
LLM的笔记本单元格如下:
import os
import anthropic
api_key = os.getenv('ANTHROPIC_API_KEY')
if not api_key:
raise ValueError('ANTHROPIC_API_KEY not set in environment!')
client = anthropic.Anthropic(api_key=api_key)
response = client.messages.create(
model='claude-3-sonnet-20240229',
max_tokens=256,
temperature=0.7,
messages=[
{'role': 'user', 'content': 'Tell me a joke about data science.'}
]
)
print('Claude says:', response.content[0].text)
