Entur MCP服务器
entur-mcp 是一个 FastMCP 通过以下方式公开Entur的Journey Planner API的服务器 模型上下文协议。它允许助理和自动化系统计划行程、检查出发情况,并列出挪威公共交通的服务警报。
出于演示目的,它在以下公共端点上运行:
https://eide-entur.fastmcp.app/mcp特性
plan_trip:两地之间的多式联运规划。stop_departures:实时出发前往停靠地点。nearest_places:附近的车站、码头和交通设施。service_alerts:主动中断,可按停止和严重程度进行过滤。
安装
使用 紫外线:
uv tool install entur-mcp或者:
pipx install entur-mcp
# or
pip install entur-mcp用法
FastMCP CLI(推荐)
该项目附带了一个名为的FastMCP服务器对象 server.使用FastMCP CLI运行它(可选通过 uv 了解项目环境):
# From the repository root
uv run fastmcp run entur_mcp/server.py
# Explicit object selection (optional)
uv run fastmcp run entur_mcp/server.py:server
# Streamable HTTP transport for remote agents
uv run fastmcp run entur_mcp/server.py --transport http --host 0.0.0.0 --port 8000
# -> exposes https://localhost:8000/mcp by default便利入口点
仍然提供stdio包装器以实现兼容性:
entur-mcp # via console script
# or
python -m entur_mcp服务器自动向MCP客户端注册其工具和模式。
配置
Entur要求呼叫者使用描述性的客户端名称来标识自己。在启动服务器之前配置以下环境变量:
ENTUR_CLIENT_NAME: 必需例如。MyApp/1.0 (contact@example.com).ENTUR_CLIENT_ID:可选。如果您有企业颁发的API密钥,请提供该密钥。ENTUR_USER_AGENT:可选。覆盖HTTPUser-Agent.默认为ENTUR_CLIENT_NAME.
如果省略变量,服务器将回退到占位符值,但您应该始终提供自己的联系方式,以遵守Entur的使用指南。
发展
uv venv # or python -m venv .venv
source .venv/bin/activate
pip install -e .[test]
pytest测试套件使用 respx 模拟Entur的HTTP API。测试期间不进行网络呼叫。
FastMCP云部署
FastMCP Cloud使您的服务器在公共HTTPS URL上可用。分三步部署:
- 将此存储库推送到GitHub(公共或私有)。
- 登录到…… fastmcp.cloud 使用您的GitHub帐户并创建一个新项目。
- 将项目指向您的仓库并使用
entur_mcp/server.py:server作为入口点。
FastMCP Cloud从以下位置安装依赖项 pyproject.toml,构建项目,并返回一个URL,例如 https:// .fastmcp.app/mcp。与MCP兼容代理共享该端点。(部署上线后,请在此处替换URL。)
许可证
根据MIT许可证分发。看 LICENSE 了解详情。
