MCP server providing shared memory functionality across multiple Claude Code instances through a centralized Git-backed storage system. Supports project-specific configurations, templated instructions, and collaborative workflow management.
This MCP server exposes a single tool (ip_get_details) with reasonable documentation and a complete Zod schema. The naming is verb-first and clear, the description is comprehensive and exceeds 100 characters, and parameters include type information and descriptions. However, there are several quality gaps: (1) the tool is READ_ONLY but lacks tool annotations (readOnlyHint/destructiveHint) in the schema that the current MCP spec (2026-07-28) expects; (2) the output schema is not documented in the code, we can infer the tool returns text content but no formal schema is declared; (3) parameter descriptions are present but could be more explicit about constraints (e.g., what defines a 'private IP' or how includeExtendedData interacts with tokens); (4) no error handling examples or recovery guidance are provided in the description. The server correctly uses Zod for validation and follows a verb_noun pattern, but falls short of A-grade polish that would include explicit output schemas, tool annotations, and structured error responses.
Retrieves detailed geolocation and network information for a public IP address (`ipAddress`). If no IP is provided, automatically uses the server's current public IP. Returns comprehensive location data including country, region, city, coordinates, timezone, and network details like ISP and organization. Use `includeExtendedData` to get additional information such as ASN, mobile/proxy detection (requires API token). **Note:** Cannot lookup private IPs (e.g., 192.168.x.x, 10.x.x.x). Powered by ip-api.com. Enable `useHttps` for secure connections (required for paid tier).
Tool lacks MCP spec-compliant annotations (readOnlyHint, destructiveHint, idempotentHint). The ip_get_details tool is READ_ONLY but does not declare this via tool annotations, making it harder for agents to reason about safety.
Output schema not documented. The tool handler returns text content in a specific format, but no formal JSON Schema is documented in the source or returned to the client. This forces LLMs to infer the response structure and limits downstream tool composition.
Parameter constraint descriptions lack specificity. The 'ipAddress' parameter description says 'omit for current IP' but does not explain what constitutes a valid IP (IPv4 vs IPv6, private IP rejection). The 'includeExtendedData' description mentions 'requires API token' but does not explain how to configure or provide it.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | C | 61 | <=2025-11-25 | v2 |
| 2026-03-09 | C | 60 | - | v1 |
No error handling guidance in the description. The tool description does not mention what happens when an invalid IP is provided, when the API is unreachable, or when the API token is missing/invalid. This leaves agents unable to predict failures and plan recovery.
The 'useHttps' parameter defaults to true but its interaction with the paid tier and API availability is not explained. This could confuse agents about when to set it to false.