AI agents that reason about physical locations need authoritative, reproducible data — not LLM-hallucinated approximations. Mireye Earth provides two integration paths: the MCP server for tool-calling agents (Claude Desktop, Cursor, and any MCP-aware client), and the HTTP API for custom pipelines that need direct, structured access.Documentation Index
Fetch the complete documentation index at: https://www.mireye.ai/llms.txt
Use this file to discover all available pages before exploring further.
Why LLMs need Mireye
LLMs are trained on text about places, not on geospatial primitives. Ask an LLM for the precise elevation at a coordinate and you’ll get a hallucination, a refusal, or a Wikipedia snippet about a nearby city. Mireye returns13.15 meters from USGS EPQS with a source_url and a fetched_at timestamp — values that are authoritative, reproducible, and auditable. For any agent that needs to make claims about the physical world, that difference is the whole point.
MCP integration (Claude Desktop, Cursor)
Install the MCP server withuv:
~/Library/Application Support/Claude/claude_desktop_config.json:
ask and fetch. The agent calls them like any other MCP tool — no HTTP wiring, no field catalog management, no prompt engineering required. The MCP server handles the transport layer so your agent gets cited geospatial answers without any additional infrastructure.
See /mcp/tools for full tool schemas, including all accepted parameters and the response shape for both tools.
HTTP API integration
For custom pipelines that don’t run an MCP client, call/v1/ask directly over HTTP. Here is a minimal Python helper using httpx:
citations array gives your agent the full provenance chain for every value referenced in the answer — source name, source URL, and fetch timestamp. If your pipeline needs to store or surface citations downstream, they arrive already structured.
Using /v1/fetch for structured pipelines
When your pipeline needs raw field values rather than a narrative answer, use/v1/fetch. You get deterministic, typed values with per-field provenance:
data["partial_failures"] before consuming results. This array tells you which fields failed to fetch and whether each failure is retryable — without crashing the overall call. A field that times out shows up here, not as a silent zero or a missing key.
Batch scoring
To score a list of coordinates, iterate over the list and call/v1/fetch for each with your chosen preset. Use asyncio and an async HTTP client for throughput:
The field catalog at
GET /v1/meta/fields is machine-readable and ETag-cached with a one-hour max-age. Agents that plan field selection dynamically — such as agents that build fields arrays from user intent — should fetch the catalog once at startup and cache it locally for the session.