电影目录MCP服务器
MCP(模型上下文协议)服务器,用于支持双架构的电影目录信息。
先决条件
- Python>=3.12
- uv(Python包管理器)
快速开始
1.安装uv
如果你没有 uv 尚未安装:
macOS/Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh窗户:
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"或者通过pip安装:
pip install uv2.安装依赖项
克隆存储库并安装依赖项:
# Navigate to project directory
cd movie-catalog-mcp-server
# Install dependencies with uv (automatically creates virtual environment)
uv sync这将创建一个虚拟环境并安装所有必需的软件包,包括:
- FastMCP框架
- MCP-SDK
- httpx用于异步HTTP请求
- 配置的复制设置
运行服务器
该项目提供 三种不同的服务器配置:
1.手动MCP服务器(流式HTTP)
具有显式工具注册的默认服务器:
uv run movie-catalog-mcp-server- 运输:流式HTTP(支持SSE流式传输)
- 主机: 0.0.0.0
- 端口: 8100
- 用例:自定义业务逻辑和细粒度控制
2.手动MCP服务器(标准)
与上述相同,但使用stdio传输进行本地集成:
uv run movie-catalog-stdio-mcp-server- 运输:标准输入/输出
- 用例:本地MCP客户端集成(例如,Claude Desktop)
3.FastMCP自动生成服务器
根据OpenAPI规范自动生成工具:
uv run movie-catalog-fastmcp-server- 运输:流式HTTP
- 主机: 0.0.0.0
- 端口: 8100
- 用例:无需手动工具实现的快速API代理
- 需要:具有OpenAPI规范的后端API位于
http://localhost:8000/openapi.json
开发与测试
MCP检查员
用于在开发过程中测试和调试MCP工具的交互式工具:
uv run mcp dev src/movie_catalog_mcp_server/inspector_run.py检查器提供了一个web界面来测试所有注册的MCP工具。
配置
使用环境变量或 .env 文件:
MCP服务器设置
MCP_NAME=movie-catalog-mcp-server # Server name
MCP_HOST=0.0.0.0 # Server host
MCP_PORT=8100 # Server port后端API设置
API_SERVER_URL=http://localhost:8000/ # Backend API base URL
API_ROOT_PATH=/api/v1 # API root path
API_OPENAPI_PATH=/openapi.json # OpenAPI spec path快速开始
- 安装依赖项:
uv sync- 启动后端API (必填):
# Make sure your movie catalog API is running at http://localhost:8000- 运行MCP服务器:
# For manual server:
uv run movie-catalog-mcp-server
# OR for auto-generated server:
uv run movie-catalog-fastmcp-server- 使用MCP检查员进行测试:
uv run mcp dev src/movie_catalog_mcp_server/inspector_run.py- MCP配置json:
{
"mcpServers": {
"movie-catalog-mcp-server": {
"url": "http://localhost:8100/mcp"
},
"movie-catalog-stdio-mcp-server": {
"command": "uv",
"args": [
"run",
"movie-catalog-stdio-mcp-server"
],
"env": {}
}
}
}