QuantaRoute MCP服务器
模型上下文协议(MCP)服务器,使用QuantaRoute地理编码API为AI助手(Claude Desktop、Cursor等)提供强大的地理编码、位置查找和DigiPin处理功能。
包裹: @quantaroute/mcp-server (用于AI代理的MCP服务器)\ 软件开发工具包: quantaroute-geocoding (Node.js/TypeScript SDK)
✅ 与Claude Desktop和Cursor完全兼容
特性
🗺️ 地理编码工具
- 地理代码地址 DigiPin代码和坐标
- 逆地理编码 DigiPin代码到地址
- 转换坐标 DigiPin代码
- 验证DigiPin 格式和位置
- 批量地理编码 多个地址(最多100个)
- 自动完成 地址建议
🚀 使用Nominim+Pincode+Digipin进行革命性的位置查找
- 查找管理边界 根据坐标(pincode、state、division、locality)
- 从DigiPin查找 代码
- 批量位置查找 适用于多个地点
- 查找附近的边界 在半径范围内\[即将到来…\]
- 访问 36000+邮政边界 印度各地
📊 实用工具
- 获取API使用情况 统计
- 获取位置统计信息 (边界、州、分区)
- 检查API运行状况 状态
安装
此MCP服务器与 克劳德桌面 和 光标请按照以下针对您平台的说明进行操作。
适用于克劳德桌面
- 找到Claude Desktop配置文件:
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json - 视窗: %APPDATA%\Claude\claude_desktop_config.json - Linux: ~/.config/Claude/claude_desktop_config.json
- 编辑配置文件 并添加:
{
"mcpServers": {
"quantaroute": {
"command": "npx",
"args": [
"-y",
"@quantaroute/mcp-server"
],
"env": {
"QUANTAROUTE_API_KEY": "your-api-key-here"
}
}
}
}- 保存并重新启动Claude Desktop 以应用更改。
对于光标
添加到MCP配置文件(~/.cursor/mcp.json):
{
"mcpServers": {
"quantaroute": {
"command": "npx",
"args": [
"-y",
"@quantaroute/mcp-server"
],
"env": {
"QUANTAROUTE_API_KEY": "your-api-key-here"
}
}
}
}更改后重新启动Cursor。
环境变量
QUANTAROUTE_API_KEY(必需):您的QuantaRoute API密钥
- 从以下位置获取API密钥:https://developers.quantaroute.com - 免费等级测试密钥: demo_free_key_123 (用于测试)
可用工具
geocode
对地址进行地理编码,以获取DigiPin代码和坐标。
参数:
address(必填):要进行地理编码的地址city(可选):城市名称state(可选):州名称pincode(可选):邮政编码country(可选):国家名称(默认为印度)
例子:
{
"address": "Rohra Address, New Town",
"city": "New Town",
"state": "West Bengal",
"pincode": "700163"
}reverse_geocode
对DigiPin代码进行反向地理编码,以获取坐标和地址。
参数:
digipin(必填):DigiPin代码(格式:XXX-XXX-XXXX)
coordinates_to_digipin
将纬度和经度转换为DigiPin代码。
参数:
latitude(必填):纬度(-90至90)longitude(必填):经度(-180至180)
lookup_location_from_coordinates
🚀 革命的:从坐标中获取行政边界。
返回:pincode、state、division、local、district、population density等。
参数:
latitude(必填):纬度坐标longitude(必填):经度坐标
lookup_location_from_digipin
从DigiPin代码获取管理边界。
参数:
digipin(必填):DigiPin代码
batch_location_lookup
批量查找多个位置(最多100个)。
参数:
locations(必填):位置对象数组
- 每个对象都可以有 latitude + longitude 或 digipin
batch_geocode
在单个请求中对多个地址进行地理编码(最多100个)。
参数:
addresses(必填):地址对象数组
autocomplete
获取地址自动补全建议。
参数:
query(必填):搜索查询(最少3个字符)limit(可选):最大建议值(默认值:5,最大值:10)
find_nearby_boundaries [COMING SOON...]
查找半径范围内的附近邮政边界。
参数:
latitude(必填):中心纬度longitude(必填):中心经度radius_km(可选):搜索半径,单位为公里(默认值:5.0,最大值:100)limit(可选):最大结果(默认值:10,最大值:50)
validate_digipin
验证DigiPin格式并检查其是否为真实位置。
参数:
digipin(必填):验证DigiPin代码
get_usage
获取API使用统计信息和配额信息。
get_location_statistics
获取有关位置查找服务的实时统计数据。
get_health
检查API运行状况。
REST API包装器
该项目包括一个REST API包装器,使所有MCP工具都可以通过移动和web应用程序的HTTP端点访问。
特性
- ✅ RESTful API:所有作为HTTP端点公开的MCP工具
- ✅ 认证:通过标头或环境变量的API密钥
- ✅ CORS支持:已为web和移动应用程序做好准备
- ✅ Vercel准备就绪:针对无服务器部署进行了优化
- ✅ 错误处理:全面的错误处理和验证
快速开始
REST API是 已部署 并准备在以下地点使用:
基础URL: https://mcp-gc.quantaroute.com/api
备注: mcp-gc 代表MCP地理编码。这遵循命名约定:
mcp-gc.quantaroute.com-地理编码MCP服务器(本项目)
使用REST API
1.获取API信息:
curl https://mcp-gc.quantaroute.com/api2.地理编码和地址:
curl -X POST https://mcp-gc.quantaroute.com/api/geocode \
-H "Content-Type: application/json" \
-H "x-api-key: your-api-key-here" \
-d '{
"address": "Rohra Address, New Town",
"city": "New Town",
"state": "West Bengal",
"pincode": "700163"
}'3.健康检查:
curl -X GET https://mcp-gc.quantaroute.com/api/health \
-H "x-api-key: your-api-key-here"4.寻找附近的边界:\[尚未发布,即将发布…\]
curl -X POST https://mcp-gc.quantaroute.com/api/find-nearby-boundaries \
-H "Content-Type: application/json" \
-H "x-api-key: your-api-key-here" \
-d '{
"latitude": 28.6139,
"longitude": 77.2090,
"radius_km": 5.0,
"limit": 10
}'此端点在指定半径内查找附近的邮政边界。适用于:
- 查找某个位置X公里范围内的所有夹点
- 发现附近的行政边界
- 基于位置的搜索和发现
JavaScript/TypeScript示例
// Geocode an address
const response = await fetch('https://mcp-gc.quantaroute.com/api/geocode', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': 'your-api-key-here'
},
body: JSON.stringify({
address: 'Rohra Address, Action Area I',
city: 'New Town',
state: 'West Bengal'
})
});
const data = await response.json();
console.log(data);Python示例
import requests
# Geocode an address
response = requests.post(
'https://mcp-gc.quantaroute.com/api/geocode',
headers={
'Content-Type': 'application/json',
'x-api-key': 'your-api-key-here'
},
json={
'address': 'Rohra Address, Action Area I, Ghuni',
'city': 'New Town',
'state': 'West Bengal'
}
)
data = response.json()
print(data)部署您自己的实例
如果你想部署自己的实例:
- 部署到Vercel:
vercel- 设置环境变量 (可选,用于测试):
vercel env add QUANTAROUTE_API_KEY- 配置自定义域 (可选):
- 在Vercel中添加您的自定义域名 - 配置指向Vercel的DNS CNAME记录 - 等待DNS传播和SSL证书
API 文档
有关完整的REST API文档,请参阅 API毫米.
可用端点:
GET /api-API信息GET /api/health-健康检查GET /api/usage-使用统计GET /api/location-statistics-位置服务统计GET /api/autocomplete?q=query-地址自动补全GET /api/validate-digipin?digipin=XXX-XXX-XXXX-验证DigiPinPOST /api/geocode-对地址进行地理编码POST /api/reverse-geocode-反向地理编码DigiPinPOST /api/coordinates-to-digipin-将坐标转换为DigiPinPOST /api/batch-geocode-批量地理编码地址POST /api/lookup-location-from-coordinates-从坐标查找POST /api/lookup-location-from-digipin-从DigiPin查找POST /api/batch-location-lookup-批量位置查找POST /api/find-nearby-boundaries-寻找附近的边界\[即将到来…\]
认证
API通过两种方式支持身份验证:
- 请求头 (推荐用于生产):
x-api-key: your-api-key-here- 用户应该从获取自己的API密钥 developers.quantaroute.com - 在中发送API密钥 x-api-key 每个请求的标题 - 每个用户的API密钥由后端API验证,并单独跟踪使用情况
- 环境变量 (测试的可选回退):
QUANTAROUTE_API_KEY=your-api-key-here- 仅在没有时使用 x-api-key 提供了标题 - 对测试和开发有用 - 不建议用于生产
优先级:请求标头优先于环境变量。
获取API密钥:
- 访问 developers.quantaroute.com
- 注册并获取您的API密钥
- 在
x-api-key所有API请求的标头
发展
先决条件
- Node.js 18+
- TypeScript 5+
设置
# Install dependencies
npm install
# Build the project
npm run build
# Run in development mode
npm run dev项目结构
mcp-server/
├── src/
│ ├── index.ts # Main MCP server implementation
│ └── client.ts # QuantaRoute API client
├── api/
│ └── [...path].ts # REST API wrapper (Vercel serverless function)
├── dist/ # Compiled JavaScript (generated)
├── package.json
├── tsconfig.json
├── vercel.json # Vercel configuration
├── README.md
└── API.md # REST API documentationAPI 文档
API完整文档:https://api.quantaroute.com/v1/digipin/docs
许可证
MIT许可证
支持
- 网站: https://quantaroute.com
- API文件: https://api.quantaroute.com/v1/digipin/docs
- 问题: https://github.com/mapdevsaikat/quantaroute-geocoder/issues
支持的平台
✅ 克劳德桌面 -完全支持\ ✅ 光标 -完全支持\ ✅ 其他MCP兼容客户端 -应适用于任何与MCP兼容的应用程序
AI助手中的示例用法
配置后,AI助手(Claude、Cursor AI等)可以使用以下工具:
示例1:地理编码
User: "What's the DigiPin for Biswa Bangla Gate, New Town?"
Assistant: [Uses geocode tool]
The DigiPin code for that address is 2TF-39M-JT5F, located at coordinates 22.5788545, 88.4716628.
Full Address: Biswa Bangla Gate, New Town, Biswa Bangla Sarani, Action Area I, New Town, Bidhannagar, North 24 Parganas, West Bengal, 700156, India示例2:位置查找
User: "What administrative boundaries are at coordinates 28.6139, 77.2090?"
Assistant: [Uses lookup_location_from_coordinates tool]
That location is in:
- Pincode: 110001
- State: Delhi
- Division: New Delhi Central
- Locality: Connaught Place
- District: New Delhi示例3:反向地理编码
User: "What's the address for DigiPin 2TF-3FT-J825?"
Assistant: [Uses reverse_geocode tool]
The DigiPin 2TF-3FT-J825 corresponds to:
- Address: FE Block, Sector III, Bidhannagar, North 24 Parganas, West Bengal, 700106, India
- Coordinates: 22.580587°N, 88.419001°E故障排除
Claude桌面问题
- 服务器未出现在Claude Desktop中:
- 验证配置文件路径是否适用于您的操作系统 - 检查JSON语法是否有效 - 完全重新启动克劳德桌面
- “找不到命令”错误:
- 确保已安装Node.js 18+: node --version - 验证 npx 可用: which npx
- API身份验证错误:
- 检查一下 QUANTAROUTE_API_KEY 在配置中设置正确 - 验证API密钥在https://api.quantaroute.com
光标问题
- MCP服务器未加载:
- 检查 ~/.cursor/mcp.json 存在并且具有有效的JSON - 完全重新启动游标 - 检查Cursor的MCP日志是否有错误
- 工具不可用:
- 验证服务器是否正在运行(检查Cursor的MCP状态) - 确保正确配置了API密钥
