内容
# DNDzgz MCP Server
这是一个 MCP (Model Context Protocol) 服务器,它使用 [DNDzgz](https://www.dndzgz.com/) API 提供有关萨拉戈萨有轨电车系统的信息,包括实时有轨电车到达预估和车站信息。
## 安装
1. 克隆存储库:
```bash
git clone https://github.com/danilat/mcp-dndzgz.git
cd mcp-dndzgz
```
2. 安装依赖项:
```bash
npm install
```
## 运行应用程序
添加带有有效 google maps API 密钥的环境变量,并使用 http 传输运行它
```bash
GOOGLE_MAPS_API_KEY=your-api-key npm start:http
```
服务器将启动,您应该配置您的 MCP 客户端以进行连接。
或者使用 stdio 传输启动服务器:
在您的 MCP 客户端中使用 `npx` 进行配置,例如:
```json
{
"mcpServers": {
"dndzgz": {
"command": "npx @dndzgz/mcp",
"env": {
"GOOGLE_MAPS_API_KEY": "your-api-key"
}
}
}
}
```
服务器将启动并连接到 MCP 服务器。
## 可用工具
服务器提供以下工具:
1. `zaragoza-tram-estimations`:获取特定电车站的实时到达预估
- 参数:
- `station` (number):电车站的 ID
- 返回:包含两个方向的预计到达时间的 JSON
2. `zaragoza-tram-stations`:获取萨拉戈萨所有电车站的列表
- 参数:
- `latitude` (number):用于按距离对车站进行排序的纬度
- `longitude` (number):用于按距离对车站进行排序的经度
- 返回:包含车站信息的 JSON,包括位置、名称和 ID
3. `zaragoza-bus-stops`:获取萨拉戈萨的所有公交车站
- 参数:
- `latitude` (number):用于按距离对站点进行排序的纬度
- `longitude` (number):用于按距离对站点进行排序的经度
- 返回:包含公交车站位置、名称、ID 和线路的 JSON
4. `zaragoza-bus-estimations`:获取特定公交车站的实时到达预估
- 参数:
- `stop` (number):公交车站的 ID
- 返回:包含服务于该站点的每条线路的预计到达时间的 JSON
5. `zaragoza-bizi-stations`:获取萨拉戈萨的所有 Bizi 站点(公共自行车租赁服务)
- 参数:
- `latitude` (number):用于按距离对站点进行排序的纬度
- `longitude` (number):用于按距离对站点进行排序的经度
- 返回:包含 Bizi 站点位置、名称和 ID 的 JSON
6. `zaragoza-bizi-estimations`:获取 Bizi 站点的自行车和空闲插槽的实时可用性
- 参数:
- `station` (number):Bizi 站点的 ID
- 返回:包含自行车和停车位可用性的 JSON
7. `google-maps-link`:获取特定位置的 Google Maps 链接
- 参数:
- `latitude` (number):位置的纬度
- `longitude` (number):位置的经度
- 返回:显示指定位置的 Google Maps URL
8. `geolocation-from-address`:从地址获取地理位置(纬度和经度)以及找到的格式化地址
- 参数:
- `address` (string):要进行地理定位的地址(例如,“Plaza de San Francisco, Zaragoza, Spain”)
- 返回:包含纬度、经度、置信度级别和格式化地址的 JSON
## 依赖项
- @modelcontextprotocol/sdk: ^1.9.0
## 示例
这是一个使用 Claude Desktop 的示例屏幕截图
