Skip to content
THE MANUAL / v0.4.0

Troubleshooting ​

First identify the failing connection: a local configuration error, the MCP client-to-server connection, or an outbound Google request. Correct the relevant layer, then rerun the affected operation.

Start offline ​

sh
mcp-gmap-rs --version
mcp-gmap-rs tools
mcp-gmap-rs doctor

doctor prints JSON even when checks fail. Inspect its exit status and checks[].status: pass, fail or not_tested. Offline checks do not prove IAM, API enablement, billing, certificate trust/expiry or ADC access. /health only proves process liveness.

If a malformed local dotenv file blocks discovery, --no-env-file tools skips it. This can change the selected tool set, so do not mistake it for verification of the intended file configuration.

Interpret common failures ​

SymptomNext check
GOOGLE_MAPS_API_KEY is requiredAPI-key mode is selected or this operation reaches a key-only endpoint.
GOOGLE_CLOUD_QUOTA_PROJECT is requiredSet the consumer project ID/number for OAuth.
Google 403 / API disabledEnable the exact API in the credential’s consumer project; check billing and API-key restrictions.
serviceusage.services.use deniedGrant the service account roles/serviceusage.serviceUsageConsumer on the quota project; allow IAM propagation, then retry.
API-key IP denialAllow the server or cluster’s public egress IP, not its private pod IP.
MCP HTTP 401Send the server’s bearer token; a Google access token authenticates a different connection.
Host/Origin rejectedMatch the configured Host and browser origin exactly, including relevant ports.
HTTP 429 from MCPThe process-wide limiter is exhausted; honor Retry-After and check client concurrency.
OAuth timeoutCheck token/STS/IAM or metadata connectivity, system clock and per-request timeout.
TLS connection failsCheck the certificate chain, hostname, trust and optional mTLS client certificate separately from HTTP authorization.
Exit 0 but incomplete dataInspect matrix/composite per-item errors, not just the process exit status.

Verify live access deliberately ​

Live probes make potentially billable calls. Scope them to the API dependencies you need:

sh
mcp-gmap-rs --enabled-tools maps_weather doctor --live

A passing probe does not guarantee every geographic region or operation. After a Google Cloud change, rerun the same failed call rather than inferring success from console settings. See authentication for IAM and credential sources, configuration for precedence and production operations for budgets, deadlines and metrics. Never print credential JSON or dump the environment into an issue report.