Rocky Geo Mcp
About
MCP (Model Context Protocol) server that wraps the RockyGeo IP geolocation API hosted on RapidAPI. Lets MCP-compatible clients (Claude Desktop, Claude Code, etc.) perform IPv4/IPv6 geolocation lookups via tool calls
Details
- Author
- racccoinorg
- Downloads
- 275
- Categories
- Developer Tools, API
Jump to
- Single‑IP geolocation via lookup_ip tool
- Batch geolocation (1–100 IPs) via lookup_ips_batch
- Health check endpoint (health_check) returning status and data version
- Supports both IPv4 and IPv6 addresses
- Configurable base URL for self‑hosted RockyGeo instances
- Private/reserved IPs return { found: false }
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Rocky Geo McpCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Install with npm install && npm run build, then configure the RAPIDAPI_KEY environment variable (or pass via --api-key). Add the server to your MCP client config (e.g., claude_desktop_config.json) using the node command pointing at the built dist/index.js file.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"rocky geo mcp": {
"rockygeo": {
"command": "node",
"args": [
"/Users/cyborg97/rockygeomcp/dist/index.js"
],
"env": {
"RAPIDAPI_KEY": "<your-key>"
}
}
}
}
}
McpServers
{
"rockygeo": {
"command": "node",
"args": [
"/Users/cyborg97/rockygeomcp/dist/index.js"
],
"env": {
"RAPIDAPI_KEY": "<your-key>"
}
}
}
rockygeo-mcp
MCP (Model Context Protocol) server that wraps the RockyGeo IP geolocation API hosted on RapidAPI. Lets MCP-compatible clients (Claude Desktop, Claude Code, etc.) perform IPv4/IPv6 geolocation lookups via tool calls.Install
``bash
npm install
npm run build
`
Configure
| Variable | Default | Notes |
| ------------------------ | --------------------------------------- | ------------------------------------------------------- |
| RAPIDAPI_KEY | (required) | Sent as x-rapidapi-key. Override with --api-key <k>. |
| ROCKYGEO_BASE_URL | https://rocky-geo.p.rapidapi.com/v1 | Point at a self-hosted RockyGeo if you have one. |
| ROCKYGEO_RAPIDAPI_HOST | parsed from base URL | Sent as x-rapidapi-host for *.rapidapi.com hosts. |
MCP client setup
Add to your client config (Claude Code ~/.claude.json, Claude Desktop claude_desktop_config.json, etc.):
`json
{
"mcpServers": {
"rockygeo": {
"command": "node",
"args": ["/Users/cyborg97/rockygeomcp/dist/index.js"],
"env": { "RAPIDAPI_KEY": "<your-key>" }
}
}
}
`
Tools
- lookup_ip — { ip: string } → geolocation for one IP. Private/reserved IPs return { found: false }.
- lookup_ips_batch — { ips: string[] } (1–100) → { results: { [ip]: ... } }.
- health_check — {} → { status, dataVersion, lastSyncAt, uptime }.
Smoke test with the inspector
`bash
RAPIDAPI_KEY=<key> npx @modelcontextprotocol/inspector node dist/index.js
`
Then in the inspector UI: list tools, run lookup_ip with { "ip": "8.8.8.8" }.
Integration tests
End-to-end tests in tests/integration.test.js spawn the built server as a child
process and exercise every tool over the real MCP stdio transport, hitting the
live RockyGeo API.
`bash
npm test
`
If RAPIDAPI_KEY is not in the environment, the runner prompts for it (input is
hidden). The runner also auto-builds dist/` if it is missing.
> Note: tests hit the real upstream API, so they consume RapidAPI quota and may
> be rate-limited on the Free plan (1 RPS).
License
MIT.Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





