[{"data":1,"prerenderedAt":819},["ShallowReactive",2],{"navigation_docs":3,"-mcp-troubleshooting":155,"-mcp-troubleshooting-surround":816},[4,26,47,68,93,106,127],{"title":5,"path":6,"stem":7,"children":8,"page":25},"Getting Started","\u002Fgetting-started","1.getting-started",[9,13,17,21],{"title":10,"path":11,"stem":12},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction",{"title":14,"path":15,"stem":16},"Quick Start","\u002Fgetting-started\u002Fquick-start","1.getting-started\u002F2.quick-start",{"title":18,"path":19,"stem":20},"Authentication","\u002Fgetting-started\u002Fauthentication","1.getting-started\u002F3.authentication",{"title":22,"path":23,"stem":24},"Rate Limits","\u002Fgetting-started\u002Frate-limits","1.getting-started\u002F4.rate-limits",false,{"title":27,"path":28,"stem":29,"children":30,"page":25},"API Reference","\u002Fapi-reference","2.api-reference",[31,35,39,43],{"title":32,"path":33,"stem":34},"Overview","\u002Fapi-reference\u002Foverview","2.api-reference\u002F1.overview",{"title":36,"path":37,"stem":38},"REST API","\u002Fapi-reference\u002Frest-api","2.api-reference\u002F2.rest-api",{"title":40,"path":41,"stem":42},"Error Codes","\u002Fapi-reference\u002Ferror-codes","2.api-reference\u002F3.error-codes",{"title":44,"path":45,"stem":46},"Pagination","\u002Fapi-reference\u002Fpagination","2.api-reference\u002F4.pagination",{"title":48,"path":49,"stem":50,"children":51,"page":25},"Map Integration","\u002Fmap-integration","3.map-integration",[52,56,60,64],{"title":53,"path":54,"stem":55},"Embed Maps","\u002Fmap-integration\u002Fembed-maps","3.map-integration\u002F1.embed-maps",{"title":57,"path":58,"stem":59},"Custom Styles","\u002Fmap-integration\u002Fcustom-styles","3.map-integration\u002F2.custom-styles",{"title":61,"path":62,"stem":63},"Tile Rendering","\u002Fmap-integration\u002Ftile-rendering","3.map-integration\u002F3.tile-rendering",{"title":65,"path":66,"stem":67},"Static Maps","\u002Fmap-integration\u002Fstatic-maps","3.map-integration\u002F4.static-maps",{"title":69,"path":70,"stem":71,"children":72,"page":25},"Geocoding","\u002Fgeocoding","4.geocoding",[73,77,81,85,89],{"title":74,"path":75,"stem":76},"Forward Geocoding (Search)","\u002Fgeocoding\u002Fforward-geocoding","4.geocoding\u002F1.forward-geocoding",{"title":78,"path":79,"stem":80},"Reverse Geocoding","\u002Fgeocoding\u002Freverse-geocoding","4.geocoding\u002F2.reverse-geocoding",{"title":82,"path":83,"stem":84},"Autocomplete","\u002Fgeocoding\u002Fautocomplete","4.geocoding\u002F3.autocomplete",{"title":86,"path":87,"stem":88},"Place Lookup","\u002Fgeocoding\u002Fplace-lookup","4.geocoding\u002F4.place-lookup",{"title":90,"path":91,"stem":92},"Nearby Search","\u002Fgeocoding\u002Fnearby","4.geocoding\u002F5.nearby",{"title":94,"path":95,"stem":96,"children":97,"page":25},"Routing","\u002Frouting","5.routing",[98,102],{"title":99,"path":100,"stem":101},"Directions","\u002Frouting\u002Fdirections","5.routing\u002F1.directions",{"title":103,"path":104,"stem":105},"Isochrones","\u002Frouting\u002Fisochrones","5.routing\u002F2.isochrones",{"title":107,"path":108,"stem":109,"children":110,"page":25},"Auth & Security","\u002Fauth-security","6.auth-security",[111,115,119,123],{"title":112,"path":113,"stem":114},"API Keys","\u002Fauth-security\u002Fapi-keys","6.auth-security\u002F1.api-keys",{"title":116,"path":117,"stem":118},"Scopes & Permissions","\u002Fauth-security\u002Fscopes-permissions","6.auth-security\u002F2.scopes-permissions",{"title":120,"path":121,"stem":122},"Rate Limiting","\u002Fauth-security\u002Frate-limiting","6.auth-security\u002F3.rate-limiting",{"title":124,"path":125,"stem":126},"Best Practices","\u002Fauth-security\u002Fbest-practices","6.auth-security\u002F4.best-practices",{"title":128,"path":129,"stem":130,"children":131,"page":25},"Mcp","\u002Fmcp","7.mcp",[132,135,139,143,147,151],{"title":32,"path":133,"stem":134},"\u002Fmcp\u002Foverview","7.mcp\u002F1.overview",{"title":136,"path":137,"stem":138},"Setup","\u002Fmcp\u002Fsetup","7.mcp\u002F2.setup",{"title":140,"path":141,"stem":142},"Available Tools","\u002Fmcp\u002Favailable-tools","7.mcp\u002F3.available-tools",{"title":144,"path":145,"stem":146},"GIS Integration","\u002Fmcp\u002Fgis-integration","7.mcp\u002F4.gis-integration",{"title":148,"path":149,"stem":150},"Examples","\u002Fmcp\u002Fexamples","7.mcp\u002F5.examples",{"title":152,"path":153,"stem":154},"Troubleshooting","\u002Fmcp\u002Ftroubleshooting","7.mcp\u002F6.troubleshooting",{"id":156,"title":152,"body":157,"description":809,"extension":810,"links":811,"meta":812,"navigation":813,"path":153,"seo":814,"stem":154,"__hash__":815},"docs\u002F7.mcp\u002F6.troubleshooting.md",{"type":158,"value":159,"toc":794},"minimark",[160,165,170,183,189,194,238,241,250,277,341,354,358,363,367,406,410,415,419,435,439,444,448,465,468,472,481,485,507,510,514,550,552,556,712,714,718,728,760,762,766,790],[161,162,164],"h2",{"id":163},"common-issues","Common issues",[166,167,169],"h3",{"id":168},"no-authentication-provided-error","\"No authentication provided\" error",[171,172,173,177,178,182],"p",{},[174,175,176],"strong",{},"What you see:"," The server starts but tool calls fail with an auth error pointing you at ",[179,180,181],"code",{},"auth login",".",[171,184,185,188],{},[174,186,187],{},"Fix:"," Pick one path.",[171,190,191],{},[174,192,193],{},"Recommended — sign in once with the CLI:",[195,196,201],"pre",{"className":197,"code":198,"language":199,"meta":200,"style":200},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npx @invarya\u002Fmaps-mcp auth login\nnpx @invarya\u002Fmaps-mcp auth status   # confirm it worked\n","bash","",[179,202,203,222],{"__ignoreMap":200},[204,205,208,212,216,219],"span",{"class":206,"line":207},"line",1,[204,209,211],{"class":210},"sBMFI","npx",[204,213,215],{"class":214},"sfazB"," @invarya\u002Fmaps-mcp",[204,217,218],{"class":214}," auth",[204,220,221],{"class":214}," login\n",[204,223,225,227,229,231,234],{"class":206,"line":224},2,[204,226,211],{"class":210},[204,228,215],{"class":214},[204,230,218],{"class":214},[204,232,233],{"class":214}," status",[204,235,237],{"class":236},"sHwdD","   # confirm it worked\n",[171,239,240],{},"The server reads JWT credentials from your OS keychain on every launch. No config-file env vars needed.",[171,242,243],{},[174,244,245,246,249],{},"Or — paste a ",[179,247,248],{},"mapx_"," key into your client config:",[251,252,253,261,266],"ol",{},[254,255,256,257,260],"li",{},"Confirm ",[179,258,259],{},"MAPS_GURU_API_KEY"," is set in your client's config",[254,262,263,264],{},"The key should start with ",[179,265,248],{},[254,267,268,269,276],{},"Check it's active at ",[270,271,275],"a",{"href":272,"rel":273},"https:\u002F\u002Fmaps.guru\u002Fdashboard\u002Ftokens",[274],"nofollow","maps.guru\u002Fdashboard\u002Ftokens"," and hasn't been revoked",[195,278,282],{"className":279,"code":280,"language":281,"meta":200,"style":200},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"env\": {\n    \"MAPS_GURU_API_KEY\": \"mapx_your_full_key_here\"\n  }\n}\n","json",[179,283,284,290,308,329,335],{"__ignoreMap":200},[204,285,286],{"class":206,"line":207},[204,287,289],{"class":288},"sMK4o","{\n",[204,291,292,295,299,302,305],{"class":206,"line":224},[204,293,294],{"class":288},"  \"",[204,296,298],{"class":297},"spNyl","env",[204,300,301],{"class":288},"\"",[204,303,304],{"class":288},":",[204,306,307],{"class":288}," {\n",[204,309,311,314,316,318,320,323,326],{"class":206,"line":310},3,[204,312,313],{"class":288},"    \"",[204,315,259],{"class":210},[204,317,301],{"class":288},[204,319,304],{"class":288},[204,321,322],{"class":288}," \"",[204,324,325],{"class":214},"mapx_your_full_key_here",[204,327,328],{"class":288},"\"\n",[204,330,332],{"class":206,"line":331},4,[204,333,334],{"class":288},"  }\n",[204,336,338],{"class":206,"line":337},5,[204,339,340],{"class":288},"}\n",[171,342,343,344,347,348,350,351,353],{},"Authentication priority: ",[179,345,346],{},"MAPS_GURU_BEARER_TOKEN"," env > keychain JWT (from ",[179,349,181],{},") > ",[179,352,259],{}," env.",[166,355,357],{"id":356},"server-wont-start","Server won't start",[171,359,360,362],{},[174,361,176],{}," Your MCP client shows \"maps-guru\" as disconnected or unresponsive.",[171,364,365],{},[174,366,187],{},[251,368,369,375,400],{},[254,370,371,372],{},"Check Node.js 18+ is installed: ",[179,373,374],{},"node --version",[254,376,377,378],{},"Run the server directly and watch for errors:\n",[195,379,381],{"className":197,"code":380,"language":199,"meta":200,"style":200},"MAPS_GURU_API_KEY=mapx_your_key npx @invarya\u002Fmaps-mcp\n",[179,382,383],{"__ignoreMap":200},[204,384,385,388,391,394,397],{"class":206,"line":207},[204,386,259],{"class":387},"sTEyZ",[204,389,390],{"class":288},"=",[204,392,393],{"class":214},"mapx_your_key",[204,395,396],{"class":210}," npx",[204,398,399],{"class":214}," @invarya\u002Fmaps-mcp\n",[254,401,402,403],{},"Clear the npx cache if you're on a flaky install: ",[179,404,405],{},"npx clear-npx-cache",[166,407,409],{"id":408},"quota-exceeded-error","\"Quota exceeded\" error",[171,411,412,414],{},[174,413,176],{}," Tools return 403s mentioning quota.",[171,416,417],{},[174,418,187],{},[251,420,421,424,432],{},[254,422,423],{},"Ask the assistant: \"How many API calls have I used this month?\"",[254,425,426,427],{},"Upgrade at ",[270,428,431],{"href":429,"rel":430},"https:\u002F\u002Fmaps.guru\u002Fdashboard\u002Fbilling",[274],"maps.guru\u002Fdashboard\u002Fbilling",[254,433,434],{},"Or wait for the monthly reset (1st of each month, UTC)",[166,436,438],{"id":437},"no-tools-showing-up","No tools showing up",[171,440,441,443],{},[174,442,176],{}," Your AI assistant doesn't list any maps.guru tools.",[171,445,446],{},[174,447,187],{},[251,449,450,453,456,459],{},[254,451,452],{},"Restart the client after any config change — most clients only read the config at startup",[254,454,455],{},"Check the JSON is valid (no trailing commas, properly quoted keys)",[254,457,458],{},"Confirm the config file path is right for your OS",[254,460,461,462,464],{},"Make sure ",[179,463,211],{}," is on your PATH",[466,467],"hr",{},[161,469,471],{"id":470},"debugging-with-mcp-inspector","Debugging with MCP Inspector",[171,473,474,475,480],{},"The ",[270,476,479],{"href":477,"rel":478},"https:\u002F\u002Fmodelcontextprotocol.io\u002Fdocs\u002Ftools\u002Finspector",[274],"MCP Inspector"," is the official way to poke at an MCP server directly.",[166,482,484],{"id":483},"launch-it","Launch it",[195,486,488],{"className":197,"code":487,"language":199,"meta":200,"style":200},"MAPS_GURU_API_KEY=mapx_your_key npx @modelcontextprotocol\u002Finspector npx @invarya\u002Fmaps-mcp\n",[179,489,490],{"__ignoreMap":200},[204,491,492,494,496,498,500,503,505],{"class":206,"line":207},[204,493,259],{"class":387},[204,495,390],{"class":288},[204,497,393],{"class":214},[204,499,396],{"class":210},[204,501,502],{"class":214}," @modelcontextprotocol\u002Finspector",[204,504,396],{"class":214},[204,506,399],{"class":214},[171,508,509],{},"The web UI lets you list tools and resources, invoke them with custom parameters, and watch the raw MCP protocol messages (including error responses).",[166,511,513],{"id":512},"quick-sanity-check","Quick sanity check",[251,515,516,522,536],{},[254,517,518,521],{},[174,519,520],{},"Tools tab"," — all 15 tools should be listed with descriptions",[254,523,524,527,528,531,532,535],{},[174,525,526],{},"Resources tab"," — ",[179,529,530],{},"mapsguru:\u002F\u002Fpresets"," and ",[179,533,534],{},"mapsguru:\u002F\u002Finfo"," should both appear",[254,537,538,541,542,545,546,549],{},[174,539,540],{},"Pick a tool"," — call ",[179,543,544],{},"geocode"," with ",[179,547,548],{},"{ \"query\": \"Paris\" }"," to confirm end-to-end connectivity",[466,551],{},[161,553,555],{"id":554},"error-reference","Error reference",[557,558,559,575],"table",{},[560,561,562],"thead",{},[563,564,565,569,572],"tr",{},[566,567,568],"th",{},"Error",[566,570,571],{},"Cause",[566,573,574],{},"Fix",[576,577,578,597,612,627,640,653,666,679,696],"tbody",{},[563,579,580,586,589],{},[581,582,583],"td",{},[179,584,585],{},"No authentication provided",[581,587,588],{},"No keychain JWT and no env var set",[581,590,591,592,594,595],{},"Run ",[179,593,181],{}," or set ",[179,596,259],{},[563,598,599,604,607],{},[581,600,601],{},[179,602,603],{},"Access token expired",[581,605,606],{},"Keychain JWT expired, no refresh",[581,608,591,609,611],{},[179,610,181],{}," again",[563,613,614,619,622],{},[581,615,616],{},[179,617,618],{},"MAPS_GURU_API_KEY is required",[581,620,621],{},"Env variable not set",[581,623,624,625],{},"Add the key to your client config or ",[179,626,181],{},[563,628,629,634,637],{},[581,630,631],{},[179,632,633],{},"Invalid API key",[581,635,636],{},"Key doesn't exist or was revoked",[581,638,639],{},"Check the dashboard",[563,641,642,647,650],{},[581,643,644],{},[179,645,646],{},"API key quota exceeded",[581,648,649],{},"Monthly limit hit",[581,651,652],{},"Upgrade your plan or wait for reset",[563,654,655,660,663],{},[581,656,657],{},[179,658,659],{},"Rate limited",[581,661,662],{},"Too many requests per second",[581,664,665],{},"Slow down or add small delays between calls",[563,667,668,673,676],{},[581,669,670],{},[179,671,672],{},"Network error",[581,674,675],{},"Can't reach maps.guru API",[581,677,678],{},"Check your connection",[563,680,681,686,689],{},[581,682,683],{},[179,684,685],{},"Style not found",[581,687,688],{},"Unknown style slug or ID",[581,690,691,692,695],{},"Use ",[179,693,694],{},"list_styles"," to find valid identifiers",[563,697,698,703,706],{},[581,699,700],{},[179,701,702],{},"Dataset not found",[581,704,705],{},"Unknown dataset ID",[581,707,691,708,711],{},[179,709,710],{},"list_datasets"," to find valid IDs",[466,713],{},[161,715,717],{"id":716},"logging","Logging",[171,719,720,723,724,727],{},[179,721,722],{},"stdout"," is reserved for MCP protocol messages, so the server writes all logs to ",[179,725,726],{},"stderr",". To capture them:",[195,729,731],{"className":197,"code":730,"language":199,"meta":200,"style":200},"MAPS_GURU_API_KEY=mapx_key npx @invarya\u002Fmaps-mcp 2>mcp-debug.log\ncat mcp-debug.log\n",[179,732,733,752],{"__ignoreMap":200},[204,734,735,737,739,742,744,746,749],{"class":206,"line":207},[204,736,259],{"class":387},[204,738,390],{"class":288},[204,740,741],{"class":214},"mapx_key",[204,743,396],{"class":210},[204,745,215],{"class":214},[204,747,748],{"class":288}," 2>",[204,750,751],{"class":214},"mcp-debug.log\n",[204,753,754,757],{"class":206,"line":224},[204,755,756],{"class":210},"cat",[204,758,759],{"class":214}," mcp-debug.log\n",[466,761],{},[161,763,765],{"id":764},"getting-help","Getting help",[767,768,769,775,781],"ul",{},[254,770,771,774],{},[174,772,773],{},"GitHub Issues"," — report bugs at the maps.guru repository",[254,776,777,780],{},[174,778,779],{},"Discord"," — join the community for real-time help",[254,782,783,527,786],{},[174,784,785],{},"Email",[270,787,789],{"href":788},"mailto:hello@invarya.com","hello@invarya.com",[791,792,793],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}",{"title":200,"searchDepth":310,"depth":310,"links":795},[796,802,806,807,808],{"id":163,"depth":224,"text":164,"children":797},[798,799,800,801],{"id":168,"depth":310,"text":169},{"id":356,"depth":310,"text":357},{"id":408,"depth":310,"text":409},{"id":437,"depth":310,"text":438},{"id":470,"depth":224,"text":471,"children":803},[804,805],{"id":483,"depth":310,"text":484},{"id":512,"depth":310,"text":513},{"id":554,"depth":224,"text":555},{"id":716,"depth":224,"text":717},{"id":764,"depth":224,"text":765},"Common issues, debugging tips, and MCP Inspector usage for the maps.guru MCP server.","md",null,{},true,{"title":152,"description":809},"qEvlu_xZE2n-zJe1nwjLGris9LQ4m6pULSacNESPeTw",[817,811],{"title":148,"path":149,"stem":150,"description":818,"children":-1},"Real-world usage scenarios for the maps.guru MCP server with step-by-step walkthroughs.",1777621084911]