mcp-server-template
MCP Server Template
Universelles MCP-Server-Gerüst — FastAPI + FastMCP Integrationsvorlage.
Was ist das?
Ein sauberer Startpunkt, um schnell einen MCP (Model Context Protocol) Service aufzubauen.
MCP ist der Protokollstandard, mit dem KI-Modelle externe Tools aufrufen können. Diese Vorlage ermöglicht es dir, mit minimaler Konfiguration beliebige Funktionen als KI-aufrufbare Tools bereitzustellen.
你的业务代码 → MCP Server → AI 智能体(Cursor / Claude / 自定义应用)Related MCP server: Simple Remote MCP Server
Architektur
FastAPI(主容器)
├── CORS 中间件
├── 生命周期管理
├── FastAPI 路由(传统 HTTP)
└── FastMCP 子应用(MCP 协议)
└── @mcp.tool() 工具Kernfunktionen:
Ein Dekorator = gleichzeitige Unterstützung von MCP-Protokoll + HTTP-Schnittstelle
Mehrere Module unabhängig eingebunden, ohne gegenseitige Störungen
Sofort einsatzbereite Logging-, Konfigurations- und Docker-Bereitstellung
Schnellstart
Voraussetzungen
Python >= 3.12
Installation
# 克隆模板
git clone <your-repo-url> my-mcp-server
cd my-mcp-server
# 安装依赖
uv sync
# 配置环境变量
cp .env-sample .envStarten
# 方式一:uvicorn(推荐)
uv run uvicorn app.main:app --reload
# 方式二:python
uv run python -m app.main
# 方式三:fastapi CLI
uv run fastapi dev app/main.pyÜberprüfen
# HTTP 端点
curl http://127.0.0.1:8000/example/hello
# => "Hello, World! Running mcp-server-template v0.1.0"
# MCP 协议端点(返回 MCP 端点信息,非 404 即挂载成功)
curl http://127.0.0.1:8000/exampleProjektstruktur
mcp-server-template/
│
├── app/ # 应用主目录
│ ├── routers/ # MCP 工具 + FastAPI 路由
│ │ ├── example.py # 示例模块(供复制参考)
│ │ └── __init__.py
│ ├── utils/ # 工具函数
│ │ └── log.py # 日志(loguru)
│ ├── __init__.py
│ ├── config.py # 配置管理(pydantic-settings)
│ ├── dependencies.py # 依赖注入
│ └── main.py # 应用入口
│
├── docs/ # 文档
├── migrations/ # Alembic 数据库迁移(可选)
├── scripts/ # 开发脚本
├── tests/ # 测试
│
├── .env-sample # 环境变量模板
├── .gitignore
├── .python-version
├── alembic.ini
├── docker-compose.yaml
├── Dockerfile
├── pyproject.toml
└── README.mdNeues Geschäftsmodul hinzufügen
Die Vorlage enthält example.py als Referenz. So erstellst du ein neues Modul:
Kopiere
app/routers/example.pyalsapp/routers/your_module.pyÄndere den Modulinhalt — Name ändern, Routenpräfix ändern, deine Tool-Funktionen schreiben
Registriere es in
app/main.py
# app/main.py
from app.routers import your_module
from fastmcp.utilities.lifespan import combine_lifespans
your_module_app = your_module.mcp.http_app(path="/", stateless_http=True)
app.include_router(your_module.router)
app.mount("/your_module", app=your_module_app)
# 同时把 your_module_app.lifespan 合并进 FastAPI 的 lifespan:
# app = FastAPI(lifespan=combine_lifespans(lifespan, your_module_app.lifespan))Tool-Funktionen können sowohl von der KI (über MCP) als auch vom Browser (über HTTP) aufgerufen werden:
@mcp.tool()
@router.get("/search")
async def search(query: str) -> list:
"""搜索知识库(此描述会暴露给 AI)"""
# 你的业务逻辑
return resultsTesten
uv run pytest tests/ -vDocker-Bereitstellung
# 构建
docker build -t mcp-server:latest .
# 启动
docker compose up -dKonfiguration
Die gesamte Konfiguration erfolgt über Umgebungsvariablen oder die .env-Datei. Siehe .env-sample für Details.
Wichtige Konfigurationsoptionen:
Variable | Beschreibung | Standard |
| Laufzeitumgebung |
|
| Überwachungsadresse |
|
| Überwachungsport |
|
| Datenbankverbindung (optional) |
|
| Logging-Level |
|
Referenzen
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA production-ready MCP server built with FastAPI, providing an enhanced tool registry for creating, managing, and documenting AI tools for Large Language Models (LLMs).34
- FlicenseBqualityDmaintenanceA template and demonstration project for building, testing, and deploying remote MCP servers using FastMCP and uv. It provides a foundational structure for creating MCP-compliant tools that can be hosted publicly and integrated with LLM agents.2
- AlicenseNot gradedqualityDmaintenanceA bare-bones FastMCP server template designed to serve as a starting point for building custom Model Context Protocol servers. It provides a foundational structure for implementing tools over HTTP and includes a built-in health check utility.GPL 3.0
- FlicenseNot gradedqualityBmaintenanceA plugin-based MCP server built on FastAPI that supports dynamic tool loading, hot reloading, and API key authentication for extensible AI tool integrations.
Related MCP Connectors
Primarily to be used as a template repository for developing MCP servers with FastMCP in Python, P…
MCP server for AI dialogue using various LLM models via AceDataCloud
MCP server exposing the Backtest360 engine API as tools for AI agents.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/w0odst0ck/MCPForge'
If you have feedback or need assistance with the MCP directory API, please join our Discord server