使用说明
NGROK IS SET TO ON MODE IS 在发布部分
FastMcp
FastMcp是一个模块化、安全且可扩展的MCP服务器,具有干净的CLI。
特性
- 33种分类工具(系统、身份验证、文件系统、数据库、运行时、git、http、云、ai、内存、工作流、可观察性、安全性、转换、搜索、消息传递、秘密)
- JSON模式验证工具I/O
- 基于角色的授权(RBAC)
- 每个工具的速率限制和超时
- 审计日志+结构化日志+指标
- 命令/代码执行的运行时沙盒限制
- 通过Gradio实现MCP兼容端点(
/gradio_api/mcp/和/gradio_api/mcp/sse)
快速开始
./install_and_run.sh
脚本创建/使用 .venv,悄悄安装依赖项,然后启动 fastmcp run.
命令行界面
python -m fastmcp run --ngrok off
python -m fastmcp run --host 127.0.0.1 --ngrok on
python -m fastmcp doctor
python -m fastmcp tools
python -m fastmcp tools --format json
安装软件包后:
fastmcp run --ngrok off
认证
从env设置角色令牌(推荐):
export MCP_AUTH_TOKENS_JSON='{"admin":"change-me-admin-token","operator":"change-me-operator-token","reader":"change-me-reader-token"}'
然后通过 _auth 在工具有效载荷中:
{
"_auth": {
"role": "admin",
"auth_token": "change-me-admin-token"
}
}
如果 MCP_AUTH_TOKENS_JSON 如果未设置,FastMcp将退回开发令牌供本地使用。
环境变量
MCP_HOST(默认值:127.0.0.1)MCP_PORT(默认值:7860)MCP_WORKSPACE(默认值:./workspace)MCP_AUTH_TOKENS_JSON(角色令牌映射)NGROK_MODE(默认值:off,值:off|auto|on)FASTMCP_VERBOSE_LOGS=1将结构化日志打印到stdout
看 SECURITY.md 用于部署检查表。
发展
source .venv/bin/activate
python -m pip install -e .[dev]
python -m pytest -q
许可证
麻省理工学院
