使用说明
MCP模板
一个简单的FastMCP服务器模板,带有承载令牌身份验证,用于开始使用模型上下文协议(MCP)。
概述
此模板提供了一个基本的MCP服务器,其中包括:
- 使用API密钥的承载令牌身份验证
- 演示MCP功能的简单“添加”工具
- 远程连接的HTTP传输支持
快速开始
先决条件
- Python 3.13或更高版本
- 紫外线 (推荐)-一个快速的Python包管理器和项目管理器
# Install uv curl -LsSf https://astral.sh/uv/install.sh | sh # or on macOS/Linux with Homebrew brew install uv - 或者,使用pip进行包管理
安装
- 克隆此存储库:
git clone <your-repo-url>
cd mcp-template
- 安装依赖项:
# With uv (recommended - faster dependency resolution)
uv sync
# or with pip:
pip install -e .
运行服务器
- 设置API密钥(可选-默认为“dev-API-key-12345”):
export API_KEY="your-secure-api-key-here"
- 启动MCP服务器:
uv run hello.py
# or with pip:
# python hello.py
服务器将启动并监听连接。
使用ngrok进行HTTP隧道
要远程访问您的MCP服务器,您可以使用ngrok:
设置ngrok
-
安装ngrok:
- 下载自 ngrok.com
- 或者通过软件包管理器安装:
# macOS brew install ngrok # Linux (apt) sudo apt install ngrok
-
在以下网址创建免费ngrok帐户 ngrok.com 并获取您的身份验证令牌
-
配置ngrok:
ngrok config add-authtoken <your-auth-token>
创建隧道
-
启动MCP服务器(在一个终端中):
uv run hello.py -
在另一个终端中,创建HTTP隧道:
ngrok http 8000 -
ngrok将显示一个公共URL,如
https://abc123.ngrok.io-这是您的隧道URL
认证
此模板使用 持有者 令牌身份验证:
- 当前实施情况:带有承载令牌的API密钥
- 即将推出:OAuth支持
API密钥设置
-
创建一个
.env模板中的文件:cp .env.example .env -
编辑
.env并设置您的API密钥:API_KEY="your-secure-api-key-here"
安全说明
- 永远不要将API密钥提交到版本控制
- 在生产中使用强大、独特的API密钥
- 考虑定期旋转API键
- 默认开发密钥(
dev-api-key-12345)应仅用于本地测试
可用工具
add(a:int,b:int)->int
将两个数字相加。
示例用法:
result = add(5, 3) # Returns 8
发展
项目结构
mcp-template/
├── hello.py # Main MCP server implementation
├── pyproject.toml # Project dependencies and metadata
├── README.md # This file
├── .env.example # Environment variable template
├── .gitignore # Git ignore file
└── uv.lock # Dependency lock file (auto-generated)
扩展模板
要添加新工具,请执行以下操作:
-
使用
@mcp.tool装饰师:@mcp.tool def your_tool(param: str) -> str: """Description of your tool""" return f"Result: {param}" -
重新启动服务器以加载新工具