MarineTraffic MCP服务器
MarineTraffic MCP服务器
服务介绍
MarineTraffic MCP 服务器
一个提供访问 MarineTraffic 船舶跟踪数据的模型上下文协议 (MCP) 服务器。
功能
此 MCP 服务器提供以下功能:
工具
- get_vessel_position: 通过 MMSI 或 IMO 号获取船舶的实时位置
- get_vessel_details: 通过 MMSI 或 IMO 号获取关于船舶的详细信息
- search_vessels: 按名称、MMSI、IMO 或船舶类型搜索船舶
- get_vessels_in_area: 获取指定地理区域内的船舶
资源
- vessel://{identifier}: 通过 MMSI 或 IMO 号获取关于船舶的信息
- vessels://area/{lat}/{lon}/{radius}: 列出指定地理区域内的船舶
安装
前提条件
- Node.js 18 或更高版本
- 一个 MarineTraffic API 密钥(可从 MarineTraffic API 服务 获取)
设置
- 克隆此仓库或下载源代码
- 安装依赖项:
bash
cd marinetraffic-server
npm install
- 构建服务器:
bash
npm run build
配置
该服务器需要 MarineTraffic API 密钥才能运行。您可以通过环境变量 MARINETRAFFIC_API_KEY 提供此密钥。
MCP 设置配置
要将此服务器与 Claude 一起使用,请将其添加到您的 MCP 设置配置文件中:
对于 Claude 桌面应用程序 (macOS)
编辑 ~/Library/Application Support/Claude/claude_desktop_config.json:
json
{
"mcpServers": {
"marinetraffic": {
"command": "node",
"args": ["/path/to/marinetraffic-server/build/index.js"],
"env": {
"MARINETRAFFIC_API_KEY": "your-api-key-here"
},
"disabled": false,
"autoApprove": []
}
}
}
对于 Claude VSCode 扩展
编辑 ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json:
json
{
"mcpServers": {
"marinetraffic": {
"command": "node",
"args": ["/path/to/marinetraffic-server/build/index.js"],
"env": {
"MARINETRAFFIC_API_KEY": "your-api-key-here"
},
"disabled": false,
"autoApprove": []
}
}
}
使用示例
一旦服务器配置并运行,您可以使用它与 Claude 访问船舶跟踪数据:
获取船舶位置
<use_mcp_tool>
<server_name>marinetraffic</server_name>
<tool_name>get_vessel_position</tool_name>
{
"identifier": "123456789"
}
</use_mcp_tool>
搜索船舶
<use_mcp_tool>
<server_name>marinetraffic</server_name>
<tool_name>search_vessels</tool_name>
{
"vessel_name": "MAERSK"
}
</use_mcp_tool>
获取区域内船舶
<use_mcp_tool>
<server_name>marinetraffic</server_name>
<tool_name>get_vessels_in_area</tool_name>
{
"latitude": 37.8199,
"longitude": -122.4783,
"radius": 10
}
</use_mcp_tool>
访问船舶资源
<access_mcp_resource>
<server_name>marinetraffic</server_name>
vessel://123456789
</access_mcp_resource>
API 密钥限制
MarineTraffic API 根据您的订阅计划有不同的使用限制。在使用服务器时请注意这些限制以避免超出配额。
故障排除
- API 密钥错误:确保您的 MarineTraffic API 密钥有效且已在环境变量中正确设置。
- 速率限制:如果您遇到速率限制错误,服务器将自动使用指数退避重试,但您可能需要等待一段时间后再进行额外请求。
通过 API 可获得的详细船舶信息示例
API 密钥限制
MarineTraffic API 根据您的订阅计划有不同的使用限制。在使用服务器时请注意这些限制以避免超出配额。
故障排除
- API 密钥错误:确保您的 MarineTraffic API 密钥有效且已在环境变量中正确设置。- 速率限制:如果您遇到速率限制错误,服务器将自动使用指数退避进行重试,但您可能需要等待一段时间后才能发出更多请求。
- 未找到数据:某些船只可能没有实时跟踪数据可用,特别是小型船只或位于AIS覆盖范围有限的区域内的船只。
许可证
本项目采用ISC许可证。