MCP Geocoder Rosetta

MCP Geocoder Rosetta

site icon
2025.04.15 0
Python地理编码服务MCP工具实现位置服务
MCP Geocoder Rosetta 是一个基于 Model Context Protocol (MCP) 的地理编码器实现集合,支持多种编程语言和方法。它作为开发者创建自己的 MCP 工具的参考实现,提供了使用 Google Maps API 进行地理编码的不同实现方式。
View on GitHub

Overview

基本能力

产品定位

MCP Geocoder Rosetta 是一个地理编码服务的参考实现,旨在为开发者提供不同语言和方法的地理编码工具实现示例。

核心功能

  1. 提供三种不同的地理编码实现:
  2. Python + urllib(最小依赖)
  3. Python + Google Maps SDK(官方客户端)
  4. TypeScript + Google Maps SDK(类型安全)
  5. 支持通过 Google Maps API 进行地理编码
  6. 提供 MCP 协议的标准实现
  7. 包含调试和测试工具

适用场景

  1. 开发者学习如何实现 MCP 工具
  2. 需要地理编码功能的 AI 应用
  3. 比较不同语言和方法的实现差异
  4. 集成到 Claude Desktop 等 AI 平台

工具列表

  1. run_geocoder.py: 运行客户端和服务器的脚本
  2. test_direct.py: 直接测试 MCP 通信
  3. test_server.py: 测试服务器功能
  4. debug_mcp.sh: 调试脚本

常见问题解答

  1. Missing API Key: 确保设置了 Google Maps API key
  2. Module Not Found: 安装所需依赖
  3. Connection Issues: 检查 Python 版本和 MCP SDK 兼容性
  4. Tool Disambiguation: 一次只安装一个地理编码实现

使用教程

使用依赖

  1. Google Maps API key
  2. Python 3.13+(Python 实现)
  3. Node.js 16+(TypeScript 实现)
  4. MCP CLI 工具

安装教程

git clone https://github.com/yourusername/mcp-geocoder-rosetta.git
cd mcp-geocoder-rosetta

# 设置 API key
export GOOGLE_MAPS_API_KEY=your-api-key-here

# 安装 MCP CLI
pip install mcp[cli]

调试方式

# 运行调试脚本
chmod +x debug_mcp.sh
./debug_mcp.sh

# 测试 Python 实现
python test_direct.py urllib
python test_server.py urllib

# 测试 TypeScript 实现
python run_geocoder.py typescript

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。