ip-info-mcp
by yuwan0405
README.md
# ip-info-mcp
基于 MCP (Model Context Protocol) 协议的 IP 地址信息查询服务器,通过 **stdio 传输层** 与 AI 客户端通信。
## 功能
- **查本机 IP** — 获取当前公网 IP 及归属地信息
- **查指定 IP** — 查询任意 IP 地址的归属地、ISP、经纬度等
- **综合查询** — 支持 IPv4/IPv6,含主机名、组织、邮编、时区等
## MCP stdio 通信机制
本项目使用 MCP 协议的 **stdio 传输层**:
```
┌─────────────────┐ ┌──────────────────────┐
│ AI 客户端 │ stdin │ MCP Server (本进程) │
│ (CodeBuddy 等) │◄───────►│ python server.py │
│ │ stdout │ │
└─────────────────┘ └──────────────────────┘
```
- 客户端通过 `stdin` 发送 JSON-RPC 请求(如 `tools/call`)
- 服务器通过 `stdout` 返回 JSON-RPC 响应
- `stderr` 用于日志输出,不影响通信协议
- 无需 HTTP 服务,启动轻量,适合本地工具集成
## 快速开始
### 1. 安装依赖
```bash
pip install -r requirements.txt
```
### 2. 配置到 AI 客户端
在 CodeBuddy 的 **Settings → MCP → Add MCP** 中添加:
```json
{
"mcpServers": {
"ip-info": {
"type": "stdio",
"command": "python",
"args": ["path/to/server.py"],
"description": "IP 地址信息查询工具"
}
}
}
```
### 3. 使用
配置后直接在对话中提问:
- "我的公网 IP 是什么?"
- "查询 8.8.8.8 的归属地"
- "查一下这个 IP 的信息:114.114.114.114"
## 项目结构
```
ip-info-mcp/
├── server.py # MCP 服务器主文件
├── requirements.txt # Python 依赖
├── README.md # 本文件
└── chatmcp.yaml # chatmcp 平台配置
```
## 技术栈
- [MCP Python SDK](https://github.com/modelcontextprotocol/python-sdk) — MCP 协议实现
- [httpx](https://www.python-httpx.org/) — 异步 HTTP 客户端
- [ip-api.com](http://ip-api.com) / [ipinfo.io](https://ipinfo.io) — 免费 IP 查询 API
## 许可证
MITThis server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues