mcpField
G
geolocation-mcp

geolocation-mcp

本地服务
github.com/7mza地图与出行03 周前更新

关于 geolocation-mcp

geolocation-mcp 是用于查询最新 IP 地理位置数据的 MCP 服务,支持单个和批量查询,并提供网络及隐私相关标记。

主要功能

  1. 01单个 IP 查询
  2. 02批量 IP 查询
  3. 03位置与时区数据
  4. 04ASN 与网络详情
  5. 05VPN、Tor 和数据中心标记

适用场景

  1. 01查看 IP 地址的位置
  2. 02为记录补充网络详情
  3. 03检查 IP 是否涉及 VPN 或 Tor

MCP 相关

它向 MCP 客户端提供 `getGeoLocationData` 和 `getGeoLocationDataBulk` 工具,用于单个及批量 IP 查询。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"7mza-geolocation": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"7mza/geolocation-mcp:0.0.1"
]
}
}
}
启动命令docker run -i --rm 7mza/geolocation-mcp:0.0.1

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
oci7mza/geolocation-mcp:0.0.1

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

GeoLocation MCP 服务

覆盖率

为大模型提供快速、最新的 IP 地理位置数据

演示

演示

适用于公网 IPv4 / IPv6 地址:

  • 标记:是否为数据中心、Tor 出口节点、VPN
  • 城市名称、地区 ISO 代码、纬度/经度、精度半径、邮政编码、时区
  • 国家名称、ISO 代码、是否属于欧盟/GDPR 适用范围
  • ASN 编号、ISP/组织名称、网络 CIDR

MCP 工具

工具描述
getGeoLocationData查询单个 IP
getGeoLocationDataBulk批量查询,查询失败的 IP 不会影响其他结果

数据来源

数据来源刷新频率
城市 / ASNGeoLite2 通过 P3TERX/GeoLite.mmdb 提供启动时(如果不存在)
Tor 出口节点Tor Project每日
VPN / 数据中心范围X4BNet/lists_vpn每日

使用

# named volume so DBs persist across restarts
docker run -p 8891:8080 -v geolocation_data:/home/nonroot/.geolocation-mcp 7mza/geolocation-mcp:latest

或使用 compose

services:
  geolocation-mcp:
    image: 7mza/geolocation-mcp:latest
    ports:
      - '8891:8080'
    restart: unless-stopped
    volumes:
      - geolocation_data:/home/nonroot/.geolocation-mcp
volumes:
  geolocation_data:
    name: geolocation_data

连接大模型:

# example for claude
claude mcp add --transport http geolocation http://localhost:8891/mcp

使用 MCP inspector 进行测试:

npm i && npm run mcp
# transport: streamable
# url: http://localhost:8891/mcp

从源代码构建

需要 SDKMAN 和 nvm。

nvm use && npm i && sdk env install

JVM:

./gradlew clean ktlintFormat ktlintCheck build
./gradlew bootRun

原生:

./gradlew clean ktlintFormat ktlintCheck build -PgenerateMetadata
./gradlew buildImage
docker run -p 8891:8080 -v geolocation_data:/home/nonroot/.geolocation-mcp 7mza/geolocation-mcp:latest

许可证

GeoLite2 数据库受 GeoLite2 EULA 约束。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。