{
  "data": {
    "a": {
      "slug": "azure-maps",
      "name": "Azure Maps",
      "vendor": "Microsoft Azure",
      "vendorUrl": "https://azure.microsoft.com/en-us/products/azure-maps",
      "kind": "http-api",
      "category": "maps",
      "summary": "Microsoft Azure's mapping service. Its REST APIs at `atlas.microsoft.com` cover geocoding, reverse geocoding, place search, routing with traffic, map tiles, time zones and weather, with access by subscription key, SAS token or Microsoft Entra ID.",
      "url": "https://www.anchorterminal.com/tools/azure-maps",
      "markdownUrl": "https://www.anchorterminal.com/tools/azure-maps.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/azure-maps.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/azure-maps.json",
      "repo": "https://github.com/Azure/azure-rest-api-specs",
      "license": "Proprietary service under Microsoft's Product Terms. The Azure SDK client libraries are MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://atlas.microsoft.com",
      "packages": [
        {
          "registry": "pypi",
          "name": "azure-maps-search"
        },
        {
          "registry": "pypi",
          "name": "azure-maps-route"
        },
        {
          "registry": "npm",
          "name": "@azure-rest/maps-search"
        },
        {
          "registry": "npm",
          "name": "@azure-rest/maps-route"
        }
      ],
      "auth": "mixed",
      "authNotes": "Self-serve. A person creates an Azure subscription and an Azure Maps account in the portal, which issues a primary and a secondary subscription key. The key goes in the `subscription-key` header or as a URL parameter and reaches every REST API on the account. Microsoft Entra ID tokens (scope `https://atlas.microsoft.com/.default`, with the `x-ms-client-id` header) are authorised by Azure roles such as Azure Maps Data Reader or a custom role for one service. SAS tokens (`Authorization: jwt-sas`) last 24 hours at most and carry a rate cap and allowed regions. `disableLocalAuth` turns keys and SAS tokens off.",
      "pricing": "freemium",
      "pricingNotes": "$4.50 per 1,000 transactions on every Gen2 meter, after a free monthly amount of 5,000 transactions for Search, Geolocation, Timezone and base map tiles and 1,000 for Routing, Traffic, Weather, imagery tiles and static images (https://prices.azure.com/api/retail/prices, read 8 October 2026). Fifteen tiles count as one transaction, four route matrix cells as one, and ten autocomplete requests as one. The pricing page says discounts start at 100,000 transactions a month through sales. An Azure account needs a card for identity checks, so there is no card-free start. Gen1 pricing retired on 15 September 2026.",
      "priceSummary": "$4.50 / 1k req",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the Azure Maps docs, the OpenAPI documents or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 9084,
        "pypiWeekly": 24564,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://learn.microsoft.com/en-us/rest/api/maps/",
      "openapi": "https://github.com/Azure/azure-rest-api-specs/blob/main/specification/maps/data-plane/Search/stable/2026-01-01/search.json",
      "capabilities": [
        "geo.geocode",
        "geo.reverse",
        "geo.places",
        "geo.routing",
        "geo.tiles",
        "weather.current",
        "weather.forecast"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "freemium",
        "free-tier",
        "card-required",
        "openapi",
        "oauth",
        "python",
        "typescript",
        "dotnet",
        "java",
        "enterprise",
        "sla",
        "eu"
      ],
      "lastRelease": "2026-09-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 67.9,
        "grade": "B",
        "agentReady": false,
        "rank": 196,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 5,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 73,
          "maintenance": 67,
          "payments": 20,
          "reliability": 81,
          "schema": 83,
          "security": 66,
          "transparency": 74
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Azure Maps publishes OpenAPI documents for every service, per-service rate limits, a 99.9 per cent SLA and written rules on storing results, and Entra ID roles can limit a caller to one service. Place search exists only in Search 1.0, which the newer version has superseded, and the REST client libraries are all beta.",
        "bestFor": "Teams already on Azure that want geocoding and routing under Entra ID roles and one flat price.",
        "strengths": [
          "Public OpenAPI documents for Search, Route, Render, Traffic, Weather, Timezone and Geolocation in `Azure/azure-rest-api-specs`, with examples on every operation",
          "Three credential types. Entra ID with built-in and custom roles, SAS tokens with a 24-hour limit, a rate cap and allowed regions, and two rotatable keys",
          "Default rate limits published per service, 500 requests a second for search, 250 for reverse geocoding and 50 for routing",
          "The product terms state storage rules in writing. Geocodes may be kept while the Azure account is active, other results for six months at most",
          "Responses with 5xx, 401, 403, 408 and 429 are not billed, and the October 2026 SLA commits to 99.9 per cent"
        ],
        "weaknesses": [
          "Place and category search exist only in Search 1.0. Search 2026-01-01, which supersedes it, has geocoding, autocomplete, reverse geocoding and polygons",
          "Every REST client library is a beta. `azure-maps-search` on PyPI was last released on 12 December 2024",
          "The authentication guide tells callers to put the subscription key in the URL, and the key reaches every REST API on the account",
          "An Azure account needs a card and a browser signup before the free monthly transactions apply",
          "No Retry-After header or backoff guidance for 429 was found in the reviewed documentation, and no API changelog page"
        ],
        "agentNotes": [
          "Send the key in the `subscription-key` header, or use `Authorization: Bearer` with `x-ms-client-id`. The key also works as a URL parameter, which leaks into logs.",
          "Call `GET /geocode?api-version=2026-01-01` for addresses. It can return 200 with no results, so check `confidence`, `matchCodes` and the entity type before use.",
          "Use Search 1.0 (`/search/poi/json`, `/search/nearby/json`, `/search/fuzzy/json`) for places. The 2026-01-01 version has no place search.",
          "Use `eu.atlas.microsoft.com` or `us.atlas.microsoft.com` to keep request data in that geography.",
          "Don't store route or tile results beyond six months, and never for serving several users. The product terms allow keeping geocodes while the account is active."
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 67.9
          }
        ],
        "editorialScores": {
          "ergonomics": 73,
          "maintenance": 67,
          "payments": 20,
          "reliability": 81,
          "schema": 83,
          "security": 66,
          "transparency": 69
        },
        "provenanceScore": 78
      },
      "connect": {
        "install": "pip install azure-maps-search   # or: npm i @azure-rest/maps-search",
        "http": "curl \"https://atlas.microsoft.com/geocode?api-version=2026-01-01\u0026query=15127%20NE%2024th%20Street%2C%20Redmond%2C%20WA\" \\\n  -H \"subscription-key: $AZURE_MAPS_KEY\""
      },
      "letme": {
        "capability": "https://letme.dev/geo.geocode",
        "tool": "https://letme.dev/azure-maps"
      },
      "sameCompany": [
        "azure-foundry-fine-tuning",
        "azure-ai-content-safety",
        "azure-speech-to-text",
        "azure-text-to-speech",
        "microsoft-agent-framework",
        "microsoft-execution-containers",
        "microsoft-entra-agent-id",
        "azure-key-vault",
        "azure-devops-mcp",
        "microsoft-learn-mcp",
        "playwright-mcp",
        "azure-mcp",
        "azure-translator",
        "microsoft-graph-calendar",
        "microsoft-teams",
        "dynamics-365-sales",
        "power-automate",
        "microsoft-advertising-api",
        "microsoft-excel-graph",
        "outlook-mail-graph"
      ],
      "area": "everyday",
      "unitPrices": [
        {
          "item": "Search (geocoding, reverse geocoding, places)",
          "unit": "1k-requests",
          "usd": 4.5,
          "note": "5,000 free a month. Ten autocomplete requests count as one"
        },
        {
          "item": "Routing",
          "unit": "1k-requests",
          "usd": 4.5,
          "note": "1,000 free a month. Four matrix cells count as one"
        },
        {
          "item": "Base map tiles",
          "unit": "1k-requests",
          "usd": 4.5,
          "note": "5,000 free a month. One transaction is 15 tiles"
        },
        {
          "item": "Traffic",
          "unit": "1k-requests",
          "usd": 4.5,
          "note": "1,000 free a month"
        },
        {
          "item": "Weather",
          "unit": "1k-requests",
          "usd": 4.5,
          "note": "1,000 free a month"
        },
        {
          "item": "Static map images",
          "unit": "1k-requests",
          "usd": 4.5,
          "note": "1,000 free a month"
        }
      ],
      "provenance": {
        "legalEntity": "Microsoft Corporation",
        "domain": "microsoft.com",
        "domainRegistered": "1991-05-02",
        "domainNote": "The API answers at atlas.microsoft.com, with eu.atlas.microsoft.com and us.atlas.microsoft.com for a chosen geography. Docs are on learn.microsoft.com.",
        "endpointOnVendorDomain": true,
        "terms": "https://www.microsoft.com/licensing/terms/productoffering/MicrosoftAzure/MCA",
        "privacy": "https://www.microsoft.com/en-us/privacy/privacystatement",
        "statusPage": "https://azure.status.microsoft/en-us/status",
        "changelog": "",
        "securityTxt": "expired",
        "checked": "2026-10-08",
        "notes": [
          "The Product Terms page for Microsoft Azure carries the Azure Maps service-specific terms (navigation, database, caching and storage, attribution, print and broadcast rules) and points to the Data Protection Addendum and the SLA. Our reader saw no effective date on the page.",
          "The privacy statement (last updated September 2026) names Microsoft Corporation, One Microsoft Way, Redmond, Washington 98052, and Microsoft Ireland Operations Limited in Dublin. It lists Microsoft Azure among the enterprise online services and says the customer's agreement controls where the two conflict.",
          "No changelog for the REST APIs was found in the Azure Maps docs. The release notes there cover the Web SDK map control, drawing tools and spatial module only, and the docs link to the general Azure updates page.",
          "https://www.microsoft.com/.well-known/security.txt shows Expires 2026-09-23T16:00:00.000Z. It points to the MSRC researcher portal, the bounty policy and the coordinated disclosure policy.",
          "RDAP for microsoft.com gives a registration date of 1991-05-02.",
          "The Azure status page is shared by all Azure services and its history lists only broad incidents."
        ],
        "score": 78
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/azure-maps.json",
      "live": {
        "slug": "azure-maps",
        "probe": {
          "target": "https://atlas.microsoft.com",
          "method": "get",
          "lastAt": "2026-10-08T21:12:04.826843978Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 552,
          "authRequired": false,
          "uptime24h": 85.71,
          "uptime30d": 85.71,
          "p50ms24h": 391,
          "p95ms24h": 825,
          "samples24h": 21,
          "samples30d": 21,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 21,
              "ok": 18
            }
          ]
        },
        "updatedAt": "2026-10-08T21:12:04.826843978Z"
      }
    },
    "answer": "Mapbox APIs + MCP scores 75 (BB) on agent readiness against Azure Maps's 67.9 (B), and leads in every scored category.",
    "b": {
      "slug": "mapbox",
      "name": "Mapbox APIs + MCP",
      "vendor": "Mapbox",
      "vendorUrl": "https://www.mapbox.com",
      "kind": "http-api",
      "category": "maps",
      "summary": "Geocoding v6 with batch, Search Box for places and categories, Directions, Matrix, Isochrone, Map Matching, route optimisation, static images and map tiles.",
      "url": "https://www.anchorterminal.com/tools/mapbox",
      "markdownUrl": "https://www.anchorterminal.com/tools/mapbox.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/mapbox.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/mapbox.json",
      "repo": "https://github.com/mapbox/mcp-server",
      "license": "MIT (MCP server)",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://api.mapbox.com",
      "packages": [
        {
          "registry": "npm",
          "name": "@mapbox/mcp-server"
        }
      ],
      "auth": "mixed",
      "authNotes": "Access tokens (public pk. or secret sk.) passed as the access_token query parameter on every REST call. The hosted MCP at mcp.mapbox.com signs in with an OAuth flow in the browser. The local server reads MAPBOX_ACCESS_TOKEN.",
      "pricing": "freemium",
      "pricingNotes": "Free monthly allowance per API, then tiered pay as you go. Temporary Geocoding 100,000 free, then $0.75 per 1,000 down to $0.45 above 1 million. Permanent Geocoding (results you may store) has no free allowance and costs $5 per 1,000, then $4 above 500,000. Search Box 500 free sessions then $3 per 1,000 sessions, or 50,000 free requests then $1 per 1,000. Directions, Matrix (by element), Isochrone, Map Matching and route optimisation 100,000 free each, then $2 per 1,000 down to $1.20. Static Images 50,000 free then $1 per 1,000. Vector tiles 200,000 free then $0.25 per 1,000. GL JS map loads 50,000 free then $5 per 1,000 (https://www.mapbox.com/pricing).",
      "priceSummary": "$0.75 / 1k req",
      "where": "both",
      "x402": {
        "level": "no",
        "endpoints": []
      },
      "toolCount": 29,
      "popularity": {
        "githubStars": 353,
        "npmWeekly": 1974,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://docs.mapbox.com/api/",
      "llmsTxt": "https://docs.mapbox.com/llms.txt",
      "registryName": "io.github.mapbox/mcp-server",
      "capabilities": [
        "geo.geocode",
        "geo.reverse",
        "geo.places",
        "geo.routing",
        "geo.tiles"
      ],
      "tags": [
        "hosted",
        "mcp",
        "llms-txt",
        "official",
        "oauth",
        "typescript",
        "free-tier",
        "enterprise",
        "closed-source"
      ],
      "lastRelease": "2026-07-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 75,
        "grade": "BB",
        "agentReady": true,
        "rank": 51,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 1,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 88,
          "maintenance": 80,
          "payments": 30,
          "reliability": 82,
          "schema": 85,
          "security": 71,
          "transparency": 84
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Official MCP server, hosted at mcp.mapbox.com with OAuth or run locally, listed in the MCP registry. Storing geocodes needs the Permanent tier at $5 per 1,000, about 6.7 times the temporary rate.",
        "bestFor": "An agent that needs search, routing, isochrones, map matching and route optimisation from one vendor with a hosted, OAuth-protected MCP.",
        "strengths": [
          "Official MCP server, hosted at mcp.mapbox.com with OAuth or run locally, listed in the MCP registry",
          "Every MCP tool annotated read-only and idempotent, with typed Zod input and output schemas",
          "Scoped public and secret tokens, URL restrictions and one-hour temporary tokens",
          "SOC 2 Type II, a HackerOne bug bounty and a dated subprocessor list (4 June 2026)",
          "At least 90 days' emailed notice before an API endpoint is deprecated"
        ],
        "weaknesses": [
          "Storing geocodes needs the Permanent tier at $5 per 1,000, about 6.7 times the temporary rate",
          "Geocoding results may only be used with a Mapbox map",
          "REST calls take the token as the access_token query parameter",
          "29 MCP tools load at once on the hosted endpoint, with filtering documented only for the local server",
          "No SLA on the pricing page or in the API docs, and no security.txt"
        ],
        "agentNotes": [
          "Set permanent=true only when the result goes into a database, since it moves the call to the $5 per 1,000 rate",
          "Keep search_and_geocode_tool queries under 200 characters, the live limit, not the 256 the API docs state",
          "On 429, wait until the X-Rate-Limit-Reset timestamp, since no Retry-After is sent",
          "Run the local server with --enable-tools to load only the tools the task needs",
          "Use category_search_tool for generic place types like coffee shops, not search_and_geocode_tool"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 8,
        "avgRating": 3.6,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 75
          }
        ],
        "editorialScores": {
          "ergonomics": 88,
          "maintenance": 80,
          "payments": 30,
          "reliability": 82,
          "schema": 85,
          "security": 71,
          "transparency": 82
        },
        "provenanceScore": 85
      },
      "connect": {
        "http": "curl \"https://api.mapbox.com/search/geocode/v6/forward?q=10%20Downing%20Street%2C%20London\u0026limit=1\u0026access_token=$MAPBOX_ACCESS_TOKEN\"",
        "claudeCode": "claude mcp add --transport http mapbox https://mcp.mapbox.com/mcp",
        "config": {
          "mcpServers": {
            "mapbox": {
              "args": [
                "-y",
                "@mapbox/mcp-server"
              ],
              "command": "npx",
              "env": {
                "MAPBOX_ACCESS_TOKEN": "${MAPBOX_ACCESS_TOKEN}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/geo.geocode",
        "tool": "https://letme.dev/mapbox"
      },
      "area": "everyday",
      "unitPrices": [
        {
          "item": "Temporary Geocoding",
          "unit": "1k-requests",
          "usd": 0.75,
          "note": "After 100,000 free a month, $0.45 above 1 million"
        },
        {
          "item": "Permanent Geocoding",
          "unit": "1k-requests",
          "usd": 5,
          "note": "No free allowance, $4 above 500,000"
        },
        {
          "item": "Search Box sessions",
          "unit": "1k-requests",
          "usd": 3,
          "note": "Per 1,000 sessions after 500 free"
        },
        {
          "item": "Directions",
          "unit": "1k-requests",
          "usd": 2,
          "note": "After 100,000 free a month, $1.20 above 1 million"
        },
        {
          "item": "Matrix",
          "unit": "1k-requests",
          "usd": 2,
          "note": "Per 1,000 elements after 100,000 free"
        },
        {
          "item": "Static Images",
          "unit": "1k-requests",
          "usd": 1,
          "note": "After 50,000 free a month"
        },
        {
          "item": "Vector tiles",
          "unit": "1k-requests",
          "usd": 0.25,
          "note": "After 200,000 free a month"
        }
      ],
      "provenance": {
        "legalEntity": "Mapbox, Inc.",
        "domain": "mapbox.com",
        "domainRegistered": "2003-11-27",
        "domainNote": "mapbox.com was registered in 2003, years before Mapbox started, so the domain was bought later.",
        "endpointOnVendorDomain": true,
        "terms": "https://www.mapbox.com/legal/tos",
        "privacy": "https://www.mapbox.com/legal/privacy",
        "statusPage": "https://status.mapbox.com",
        "changelog": "https://docs.mapbox.com/api/changelog/",
        "securityTxt": "none",
        "checked": "2026-10-01",
        "notes": [
          "The terms of service were last updated 31 March 2024 and point to separate product terms for per-API rules.",
          "The terms let Mapbox create de-identified aggregated data from customer usage.",
          "www.mapbox.com/.well-known/security.txt returns 404.",
          "The top-level API changelog's newest entry is 5 November 2021. Current changes are in per-service changelogs and the MCP server's CHANGELOG.md on GitHub.",
          "Subprocessor list (22 entries with locations) last updated 4 June 2026."
        ],
        "score": 85
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/mapbox.json",
      "live": {
        "slug": "mapbox",
        "probe": {
          "target": "https://api.mapbox.com",
          "method": "get",
          "lastAt": "2026-10-08T21:12:14.891428902Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 18,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 26,
          "p95ms24h": 69,
          "samples24h": 271,
          "samples30d": 1955,
          "days": [
            {
              "date": "2026-10-01",
              "probes": 109,
              "ok": 109
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 239,
              "ok": 239
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.mapbox.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T21:06:11.969620992Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "mapbox/mcp-server",
            "version": "v0.14.0",
            "released": "2026-07-30",
            "seenAt": "2026-10-08T16:19:52.842790778Z"
          },
          {
            "registry": "mcp-registry",
            "name": "io.github.mapbox/mcp-server",
            "version": "99.0.0-dev",
            "seenAt": "2026-10-08T02:42:52.272076636Z"
          },
          {
            "registry": "npm",
            "name": "@mapbox/mcp-server",
            "version": "0.14.0",
            "seenAt": "2026-10-08T16:19:52.343013533Z"
          }
        ],
        "githubStars": 361,
        "npmWeekly": 1944,
        "securityTxt": {
          "url": "https://mapbox.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:39:00.711097754Z"
        },
        "llmsTxt": {
          "url": "https://docs.mapbox.com/llms.txt",
          "ok": false,
          "status": 403,
          "checkedAt": "2026-10-08T14:00:36.088985433Z"
        },
        "domain": {
          "domain": "mapbox.com",
          "registered": "2003-11-27",
          "source": "https://rdap.verisign.com/com/v1/domain/mapbox.com",
          "checkedAt": "2026-10-04T13:08:41.082804792Z"
        },
        "pages": [
          {
            "url": "https://docs.mapbox.com/api/changelog/",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-08T18:19:03.518767752Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "395e3e05bd01"
          },
          {
            "url": "https://www.mapbox.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:29:06.302646577Z",
            "changedAt": "2026-10-08T18:29:06.302646577Z",
            "fingerprint": "7385a40a4b10"
          },
          {
            "url": "https://www.mapbox.com/legal/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:29:01.987481033Z",
            "changedAt": "2026-10-08T18:29:01.987481033Z",
            "fingerprint": "51a0d73e5b96"
          },
          {
            "url": "https://www.mapbox.com/legal/tos",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:29:04.641523555Z",
            "changedAt": "2026-10-08T18:29:04.641523555Z",
            "fingerprint": "54b97792564c"
          }
        ],
        "updatedAt": "2026-10-08T21:12:14.891428902Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Microsoft Azure",
        "b": "Mapbox",
        "name": "Vendor"
      },
      {
        "a": "https://atlas.microsoft.com",
        "b": "https://api.mapbox.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP, Streamable HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "$4.50 per 1,000 requests",
        "b": "$0.75 per 1,000 requests",
        "name": "Price for geo geocode"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Microsoft's Product Terms. The Azure SDK client libraries are MIT",
        "b": "MIT (MCP server)",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "29",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "not listed",
        "b": "io.github.mapbox/mcp-server",
        "name": "MCP registry"
      },
      {
        "a": "2026-09-30",
        "b": "2026-07-30",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "2024-03-31",
        "name": "Terms last updated"
      },
      {
        "a": "2026-09-01",
        "b": "2026-02-11",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "9.1k npm/wk, 25k PyPI/wk",
        "b": "353 stars, 2k npm/wk",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "3.6/5 (8)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Mapbox APIs + MCP scores 75 (BB) on agent readiness against Azure Maps's 67.9 (B), and leads in every scored category.",
        "question": "Which is better for AI agents, Azure Maps or Mapbox APIs + MCP?"
      },
      {
        "answer": "Mapbox APIs + MCP, at $0.75 per 1,000 requests against $4.50 per 1,000 requests for Azure Maps. These are the vendors' published prices for the job.",
        "question": "Which is cheaper for geo geocode, Azure Maps or Mapbox APIs + MCP?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Azure Maps and Mapbox APIs + MCP need an API key?"
      },
      {
        "answer": "Yes. Azure Maps has a hosted endpoint at https://atlas.microsoft.com and Mapbox APIs + MCP at https://api.mapbox.com.",
        "question": "Can an agent call Azure Maps and Mapbox APIs + MCP without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "Teams already on Azure that want geocoding and routing under Entra ID roles and one flat price.",
        "slug": "azure-maps",
        "watchFor": "Place and category search exist only in Search 1.0. Search 2026-01-01, which supersedes it, has geocoding, autocomplete, reverse geocoding and polygons"
      },
      {
        "aheadOn": [
          "Agent ergonomics, 88 against 73",
          "Security \u0026 auth, 71 against 66",
          "Payments \u0026 pricing, 30 against 20",
          "Maintenance \u0026 community, 80 against 67",
          "Transparency \u0026 trust, 84 against 74"
        ],
        "also": [
          "Cheaper for geo geocode, $0.75 against $4.50 per 1,000 requests",
          "Agent-ready, a grade of BB or better",
          "Runs on your own machine"
        ],
        "goodFor": "An agent that needs search, routing, isochrones, map matching and route optimisation from one vendor with a hosted, OAuth-protected MCP.",
        "slug": "mapbox",
        "watchFor": "Storing geocodes needs the Permanent tier at $5 per 1,000, about 6.7 times the temporary rate"
      }
    ],
    "job": {
      "capability": "geo.geocode",
      "name": "Geo geocode"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-location-vs-azure-maps.json",
        "title": "Amazon Location Service vs Azure Maps",
        "url": "https://www.anchorterminal.com/compare/amazon-location-vs-azure-maps"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-location-vs-mapbox.json",
        "title": "Amazon Location Service vs Mapbox APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-location-vs-mapbox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arcgis-vs-azure-maps.json",
        "title": "ArcGIS Location Platform vs Azure Maps",
        "url": "https://www.anchorterminal.com/compare/arcgis-vs-azure-maps"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arcgis-vs-mapbox.json",
        "title": "ArcGIS Location Platform vs Mapbox APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/arcgis-vs-mapbox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-maps-vs-geoapify.json",
        "title": "Azure Maps vs Geoapify Location Platform + MCP",
        "url": "https://www.anchorterminal.com/compare/azure-maps-vs-geoapify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-maps-vs-google-maps-platform.json",
        "title": "Azure Maps vs Google Maps Platform + Grounding Lite MCP",
        "url": "https://www.anchorterminal.com/compare/azure-maps-vs-google-maps-platform"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-maps-vs-locationiq.json",
        "title": "Azure Maps vs LocationIQ",
        "url": "https://www.anchorterminal.com/compare/azure-maps-vs-locationiq"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-maps-vs-mapquest.json",
        "title": "Azure Maps vs MapQuest",
        "url": "https://www.anchorterminal.com/compare/azure-maps-vs-mapquest"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-maps-vs-opencage.json",
        "title": "Azure Maps vs OpenCage Geocoding API",
        "url": "https://www.anchorterminal.com/compare/azure-maps-vs-opencage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-maps-vs-stadia-maps.json",
        "title": "Azure Maps vs Stadia Maps",
        "url": "https://www.anchorterminal.com/compare/azure-maps-vs-stadia-maps"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-maps-vs-tomtom.json",
        "title": "Azure Maps vs TomTom Maps APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/azure-maps-vs-tomtom"
      },
      {
        "json": "https://www.anchorterminal.com/compare/geoapify-vs-mapbox.json",
        "title": "Geoapify Location Platform + MCP vs Mapbox APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/geoapify-vs-mapbox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-maps-platform-vs-mapbox.json",
        "title": "Google Maps Platform + Grounding Lite MCP vs Mapbox APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/google-maps-platform-vs-mapbox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/locationiq-vs-mapbox.json",
        "title": "LocationIQ vs Mapbox APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/locationiq-vs-mapbox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mapbox-vs-mapquest.json",
        "title": "Mapbox APIs + MCP vs MapQuest",
        "url": "https://www.anchorterminal.com/compare/mapbox-vs-mapquest"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mapbox-vs-opencage.json",
        "title": "Mapbox APIs + MCP vs OpenCage Geocoding API",
        "url": "https://www.anchorterminal.com/compare/mapbox-vs-opencage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mapbox-vs-stadia-maps.json",
        "title": "Mapbox APIs + MCP vs Stadia Maps",
        "url": "https://www.anchorterminal.com/compare/mapbox-vs-stadia-maps"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mapbox-vs-tomtom.json",
        "title": "Mapbox APIs + MCP vs TomTom Maps APIs + MCP",
        "url": "https://www.anchorterminal.com/compare/mapbox-vs-tomtom"
      }
    ],
    "scores": [
      {
        "azure-maps": 81,
        "by": 1,
        "edge": "mapbox",
        "key": "reliability",
        "mapbox": 82,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "azure-maps": 83,
        "by": 2,
        "edge": "mapbox",
        "key": "schema",
        "mapbox": 85,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "azure-maps": 73,
        "by": 15,
        "edge": "mapbox",
        "key": "ergonomics",
        "mapbox": 88,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "azure-maps": 66,
        "by": 5,
        "edge": "mapbox",
        "key": "security",
        "mapbox": 71,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "azure-maps": 20,
        "by": 10,
        "edge": "mapbox",
        "key": "payments",
        "mapbox": 30,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "azure-maps": 67,
        "by": 13,
        "edge": "mapbox",
        "key": "maintenance",
        "mapbox": 80,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "azure-maps": 74,
        "by": 10,
        "edge": "mapbox",
        "key": "transparency",
        "mapbox": 84,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Mapbox APIs + MCP scores 75 (BB) on agent readiness against Azure Maps's 67.9 (B), and leads in every scored category. Both do geo geocode. Mapbox APIs + MCP is cheaper for geo geocode, $0.75 against $4.50 per 1,000 requests.",
    "verdicts": {
      "azure-maps": "Azure Maps publishes OpenAPI documents for every service, per-service rate limits, a 99.9 per cent SLA and written rules on storing results, and Entra ID roles can limit a caller to one service. Place search exists only in Search 1.0, which the newer version has superseded, and the REST client libraries are all beta.",
      "mapbox": "Official MCP server, hosted at mcp.mapbox.com with OAuth or run locally, listed in the MCP registry. Storing geocodes needs the Permanent tier at $5 per 1,000, about 6.7 times the temporary rate."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/azure-maps-vs-mapbox",
    "json": "https://www.anchorterminal.com/compare/azure-maps-vs-mapbox.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/azure-maps-vs-mapbox.md",
    "slim": "https://www.anchorterminal.com/compare/azure-maps-vs-mapbox.min.md"
  },
  "markdown": "Mapbox APIs + MCP scores 75 (BB) on agent readiness against Azure Maps's 67.9 (B), and leads in every scored category. Both do geo geocode. Mapbox APIs + MCP is cheaper for geo geocode, $0.75 against $4.50 per 1,000 requests.\n\n- Azure Maps: grade B, 67.9/100, rank #196 of 722. Markdown https://www.anchorterminal.com/tools/azure-maps.md · JSON https://www.anchorterminal.com/api/v1/tools/azure-maps.json\n- Mapbox APIs + MCP: grade BB, 75/100, rank #51 of 722. Markdown https://www.anchorterminal.com/tools/mapbox.md · JSON https://www.anchorterminal.com/api/v1/tools/mapbox.json\n\n## Which one, for what\n\n### Azure Maps (B)\n\nGood for: Teams already on Azure that want geocoding and routing under Entra ID roles and one flat price.\n\nWatch for: Place and category search exist only in Search 1.0. Search 2026-01-01, which supersedes it, has geocoding, autocomplete, reverse geocoding and polygons\n\n### Mapbox APIs + MCP (BB)\n\nGood for: An agent that needs search, routing, isochrones, map matching and route optimisation from one vendor with a hosted, OAuth-protected MCP.\n\nAhead on:\n- Agent ergonomics, 88 against 73\n- Security \u0026 auth, 71 against 66\n- Payments \u0026 pricing, 30 against 20\n- Maintenance \u0026 community, 80 against 67\n- Transparency \u0026 trust, 84 against 74\n\nAlso in its favour:\n- Cheaper for geo geocode, $0.75 against $4.50 per 1,000 requests\n- Agent-ready, a grade of BB or better\n- Runs on your own machine\n\nWatch for: Storing geocodes needs the Permanent tier at $5 per 1,000, about 6.7 times the temporary rate\n\n\n## Score by category\n\n| Category | Weight | Azure Maps | Mapbox APIs + MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 81 | 82 | Mapbox APIs + MCP +1 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 83 | 85 | Mapbox APIs + MCP +2 |\n| Agent ergonomics | 13% (16.2 this run) | 73 | 88 | Mapbox APIs + MCP +15 |\n| Security \u0026 auth | 14% (17.5 this run) | 66 | 71 | Mapbox APIs + MCP +5 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 30 | Mapbox APIs + MCP +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 67 | 80 | Mapbox APIs + MCP +13 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 74 | 84 | Mapbox APIs + MCP +10 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **67.9 · B** | **75 · BB** | |\n\n## Facts side by side\n\n| Fact | Azure Maps | Mapbox APIs + MCP |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Microsoft Azure | Mapbox |\n| Hosted endpoint | `https://atlas.microsoft.com` | `https://api.mapbox.com` |\n| Transports | HTTP | HTTP, Streamable HTTP, stdio |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Freemium | Freemium |\n| Price for geo geocode | $4.50 per 1,000 requests | $0.75 per 1,000 requests |\n| x402 | no | no |\n| Licence | Proprietary service under Microsoft's Product Terms. The Azure SDK client libraries are MIT | MIT (MCP server) |\n| Tools exposed | none | 29 |\n| Read-only variant documented | no | yes |\n| llms.txt | no | yes |\n| MCP registry | not listed | `io.github.mapbox/mcp-server` |\n| Last release | 2026-09-30 | 2026-07-30 |\n| Terms last updated | no date given | 2024-03-31 |\n| Privacy policy last updated | 2026-09-01 | 2026-02-11 |\n| Customer content may train models | yes | yes |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | yes | not found in the text |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | 9.1k npm/wk, 25k PyPI/wk | 353 stars, 2k npm/wk |\n| Agent reviews | none | 3.6/5 (8) |\n\n## Verdicts\n\n**Azure Maps.** Azure Maps publishes OpenAPI documents for every service, per-service rate limits, a 99.9 per cent SLA and written rules on storing results, and Entra ID roles can limit a caller to one service. Place search exists only in Search 1.0, which the newer version has superseded, and the REST client libraries are all beta.\n\n**Mapbox APIs + MCP.** Official MCP server, hosted at mcp.mapbox.com with OAuth or run locally, listed in the MCP registry. Storing geocodes needs the Permanent tier at $5 per 1,000, about 6.7 times the temporary rate.\n\n## Before you call either\n\n### Azure Maps\n\n1. Send the key in the `subscription-key` header, or use `Authorization: Bearer` with `x-ms-client-id`. The key also works as a URL parameter, which leaks into logs.\n2. Call `GET /geocode?api-version=2026-01-01` for addresses. It can return 200 with no results, so check `confidence`, `matchCodes` and the entity type before use.\n3. Use Search 1.0 (`/search/poi/json`, `/search/nearby/json`, `/search/fuzzy/json`) for places. The 2026-01-01 version has no place search.\n4. Use `eu.atlas.microsoft.com` or `us.atlas.microsoft.com` to keep request data in that geography.\n5. Don't store route or tile results beyond six months, and never for serving several users. The product terms allow keeping geocodes while the account is active.\n\n### Mapbox APIs + MCP\n\n1. Set permanent=true only when the result goes into a database, since it moves the call to the $5 per 1,000 rate\n2. Keep search_and_geocode_tool queries under 200 characters, the live limit, not the 256 the API docs state\n3. On 429, wait until the X-Rate-Limit-Reset timestamp, since no Retry-After is sent\n4. Run the local server with --enable-tools to load only the tools the task needs\n5. Use category_search_tool for generic place types like coffee shops, not search_and_geocode_tool\n\n## Questions\n\n### Which is better for AI agents, Azure Maps or Mapbox APIs + MCP?\n\nMapbox APIs + MCP scores 75 (BB) on agent readiness against Azure Maps's 67.9 (B), and leads in every scored category.\n\n### Which is cheaper for geo geocode, Azure Maps or Mapbox APIs + MCP?\n\nMapbox APIs + MCP, at $0.75 per 1,000 requests against $4.50 per 1,000 requests for Azure Maps. These are the vendors' published prices for the job.\n\n### Do Azure Maps and Mapbox APIs + MCP need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Azure Maps and Mapbox APIs + MCP without installing anything?\n\nYes. Azure Maps has a hosted endpoint at https://atlas.microsoft.com and Mapbox APIs + MCP at https://api.mapbox.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/azure-maps-vs-mapbox.json, and with the fewest tokens: https://www.anchorterminal.com/compare/azure-maps-vs-mapbox.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"azure-maps\", \"b\": \"mapbox\"}`. From a terminal: `anchor compare azure-maps mapbox`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/azure-maps.json and https://www.anchorterminal.com/api/v1/tools/mapbox.json\n\n## Other comparisons with Azure Maps or Mapbox APIs + MCP\n\n- [Amazon Location Service vs Azure Maps](https://www.anchorterminal.com/compare/amazon-location-vs-azure-maps.md)\n- [Amazon Location Service vs Mapbox APIs + MCP](https://www.anchorterminal.com/compare/amazon-location-vs-mapbox.md)\n- [ArcGIS Location Platform vs Azure Maps](https://www.anchorterminal.com/compare/arcgis-vs-azure-maps.md)\n- [ArcGIS Location Platform vs Mapbox APIs + MCP](https://www.anchorterminal.com/compare/arcgis-vs-mapbox.md)\n- [Azure Maps vs Geoapify Location Platform + MCP](https://www.anchorterminal.com/compare/azure-maps-vs-geoapify.md)\n- [Azure Maps vs Google Maps Platform + Grounding Lite MCP](https://www.anchorterminal.com/compare/azure-maps-vs-google-maps-platform.md)\n- [Azure Maps vs LocationIQ](https://www.anchorterminal.com/compare/azure-maps-vs-locationiq.md)\n- [Azure Maps vs MapQuest](https://www.anchorterminal.com/compare/azure-maps-vs-mapquest.md)\n- [Azure Maps vs OpenCage Geocoding API](https://www.anchorterminal.com/compare/azure-maps-vs-opencage.md)\n- [Azure Maps vs Stadia Maps](https://www.anchorterminal.com/compare/azure-maps-vs-stadia-maps.md)\n- [Azure Maps vs TomTom Maps APIs + MCP](https://www.anchorterminal.com/compare/azure-maps-vs-tomtom.md)\n- [Geoapify Location Platform + MCP vs Mapbox APIs + MCP](https://www.anchorterminal.com/compare/geoapify-vs-mapbox.md)\n- [Google Maps Platform + Grounding Lite MCP vs Mapbox APIs + MCP](https://www.anchorterminal.com/compare/google-maps-platform-vs-mapbox.md)\n- [LocationIQ vs Mapbox APIs + MCP](https://www.anchorterminal.com/compare/locationiq-vs-mapbox.md)\n- [Mapbox APIs + MCP vs MapQuest](https://www.anchorterminal.com/compare/mapbox-vs-mapquest.md)\n- [Mapbox APIs + MCP vs OpenCage Geocoding API](https://www.anchorterminal.com/compare/mapbox-vs-opencage.md)\n- [Mapbox APIs + MCP vs Stadia Maps](https://www.anchorterminal.com/compare/mapbox-vs-stadia-maps.md)\n- [Mapbox APIs + MCP vs TomTom Maps APIs + MCP](https://www.anchorterminal.com/compare/mapbox-vs-tomtom.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Azure Maps vs Mapbox APIs + MCP",
        "url": ""
      }
    ],
    "description": "Mapbox APIs + MCP scores 75 (BB) on agent readiness against Azure Maps's 67.9 (B), and leads in every scored category. Both do geo geocode. Mapbox APIs + MCP is cheaper for geo geocode, $0.75 against $4.50 per 1,000 requests. Category scores, facts, verdicts and agent notes side…",
    "facts": [
      "Azure Maps B 67.9",
      "Mapbox APIs + MCP BB 75",
      "scores"
    ],
    "h1": "Azure Maps vs Mapbox APIs + MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-azure-maps-vs-mapbox.png",
    "path": "/compare/azure-maps-vs-mapbox",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Azure Maps vs Mapbox APIs + MCP for AI agents, B 67.9 vs BB 75",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/azure-maps-vs-mapbox"
  },
  "tokens": {
    "markdown": 2400,
    "slim": 730
  },
  "version": 1
}
