{
  "data": {
    "a": {
      "slug": "aws-mcp-servers",
      "name": "AWS MCP Servers",
      "vendor": "Amazon Web Services (AWS Labs)",
      "vendorUrl": "https://aws.amazon.com",
      "kind": "mcp",
      "category": "infrastructure",
      "summary": "AWS MCP servers for documentation, infrastructure, operations and development. Includes local servers and a hosted knowledge server.",
      "url": "https://www.anchorterminal.com/tools/aws-mcp-servers",
      "markdownUrl": "https://www.anchorterminal.com/tools/aws-mcp-servers.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/aws-mcp-servers.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/aws-mcp-servers.json",
      "repo": "https://github.com/awslabs/mcp",
      "license": "Apache-2.0",
      "transports": [
        "stdio",
        "streamable-http"
      ],
      "remoteUrl": "https://knowledge-mcp.global.api.aws",
      "packages": [
        {
          "registry": "pypi",
          "name": "awslabs.aws-documentation-mcp-server"
        }
      ],
      "auth": "mixed",
      "authNotes": "Local servers use AWS profiles/IAM credentials (CloudTrail-audited). AWS Knowledge MCP Server requires no authentication but is rate-limited and subject to AWS Site Terms. Managed ECS/EKS remote servers exist at https://ecs-mcp.{region}.api.aws/mcp and https://eks-mcp.{region}.api.aws/mcp via the mcp-proxy-for-aws package.",
      "pricing": "free",
      "pricingNotes": "Servers are free. AWS API usage behind them is billed normally. Knowledge MCP is free, no account, rate-limited (https://awslabs.github.io/mcp/servers/aws-knowledge-mcp-server/).",
      "priceSummary": "Free · OSS",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402 support in awslabs/mcp docs (checked 2026-09-25).",
        "endpoints": []
      },
      "toolCount": 5,
      "popularity": {
        "githubStars": 9600,
        "npmWeekly": null,
        "pypiWeekly": 273545,
        "asOf": "2026-09-26"
      },
      "docsUrl": "https://awslabs.github.io/mcp/",
      "capabilities": [
        "infra.aws",
        "code.docs"
      ],
      "tags": [
        "official",
        "hosted",
        "local",
        "open-source",
        "no-auth-docs"
      ],
      "lastRelease": "2026-09-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.3,
        "grade": "B",
        "agentReady": false,
        "rank": 397,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 5,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 74,
          "maintenance": 79,
          "payments": 60,
          "reliability": 48,
          "schema": 69,
          "security": 84,
          "transparency": 72
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": -5,
        "negativeNotes": [
          "-3: GHSA-29w2-fq35-v728 (2026-07-23, high), a security policy bypass through a startup initialisation failure in the AWS API MCP server, the server that runs arbitrary AWS CLI commands, and GHSA-2cpp-j2fc-qhp7 (2026-03-16, moderate), a file access restriction bypass in the same server. Both fixed and published, so the deduction is reduced (https://github.com/awslabs/mcp/security).",
          "-2: five more advisories in other servers between 2026-07-14 and 2026-08-05, SSRF in HealthLake (high), improper pathname limitation in Transform (high), path traversal in the HealthOmics linters, credential disclosure via prompt injection in Amazon MQ and incorrect authorisation in the DocumentDB aggregation tool. All fixed and published (https://github.com/awslabs/mcp/security)."
        ],
        "verdict": "Knowledge server is hosted, free, GA and needs no account or key. No published rate-limit numbers, retry guidance or status component for the Knowledge server.",
        "bestFor": "Knowledge suits any agent answering AWS documentation or regional availability questions with no setup.",
        "strengths": [
          "Knowledge server is hosted, free, GA and needs no account or key",
          "Local servers use IAM credentials, so every call lands in CloudTrail",
          "Writes off by default on most servers, and the AWS API server adds read-only mode, mutation consent and a deny list",
          "Prompt-injection guidance in the AWS API server's README",
          "17 dated releases between 3 July and 30 September 2026, Apache-2.0"
        ],
        "weaknesses": [
          "No published rate-limit numbers, retry guidance or status component for the Knowledge server",
          "`READ_OPERATIONS_ONLY` and `REQUIRE_MUTATION_CONSENT` default to false on the AWS API server",
          "Seven security advisories in 2026, including a policy bypass in the AWS API server",
          "200 open issues, with July crash reports still awaiting triage",
          "Per-server changelogs lag the releases, and annotations are missing on servers such as the documentation server"
        ],
        "agentNotes": [
          "Use `https://knowledge-mcp.global.api.aws` for docs and regional availability. It's rate-limited with no published numbers, so cache results",
          "Call `get_regional_availability` before proposing a service or CloudFormation resource in a region",
          "Run the AWS API server with `READ_OPERATIONS_ONLY=true` for inspection, and `REQUIRE_MUTATION_CONSENT=true` when writes are allowed",
          "Use a scoped IAM role, not an admin profile. IAM is the boundary the servers rely on",
          "Pin package versions. Releases land several times a month and can rename or remove tools"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 63.3
          }
        ],
        "editorialScores": {
          "ergonomics": 74,
          "maintenance": 79,
          "payments": 60,
          "reliability": 48,
          "schema": 69,
          "security": 84,
          "transparency": 64
        },
        "provenanceScore": 80
      },
      "connect": {
        "claudeCode": "claude mcp add --transport http aws-knowledge https://knowledge-mcp.global.api.aws",
        "config": {
          "mcpServers": {
            "aws-knowledge": {
              "url": "https://knowledge-mcp.global.api.aws"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/infra.aws",
        "tool": "https://letme.dev/aws-mcp-servers"
      },
      "sameCompany": [
        "amazon-nova-embeddings",
        "amazon-bedrock-guardrails",
        "amazon-transcribe",
        "amazon-polly",
        "agentcore-memory",
        "agentcore-identity",
        "aws-secrets-manager",
        "amazon-ses",
        "amazon-location",
        "amazon-translate",
        "amazon-ads-api"
      ],
      "area": "developer",
      "provenance": {
        "legalEntity": "Amazon Web Services, Inc.",
        "domain": "api.aws",
        "domainRegistered": "",
        "domainNote": "`.aws` is Amazon's own brand top-level domain. Its registry publishes no RDAP record we could reach, so domain age scores nothing here. The security.txt on aws.amazon.com has passed its Expires date.",
        "endpointOnVendorDomain": true,
        "terms": "https://aws.amazon.com/agreement/",
        "privacy": "https://aws.amazon.com/privacy/",
        "statusPage": "https://health.aws.amazon.com/health/status",
        "changelog": "https://github.com/awslabs/mcp/releases",
        "securityTxt": "expired",
        "checked": "2026-09-26",
        "score": 80
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/aws-mcp-servers.json",
      "live": {
        "slug": "aws-mcp-servers",
        "probe": {
          "target": "https://knowledge-mcp.global.api.aws",
          "method": "mcp-initialize",
          "lastAt": "2026-10-10T03:53:20.056218281Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 42,
          "lastNote": "initialize answered",
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 44,
          "p95ms24h": 145,
          "samples24h": 249,
          "samples30d": 3430,
          "days": [
            {
              "date": "2026-09-27",
              "probes": 132,
              "ok": 132
            },
            {
              "date": "2026-09-28",
              "probes": 285,
              "ok": 285
            },
            {
              "date": "2026-09-29",
              "probes": 286,
              "ok": 286
            },
            {
              "date": "2026-09-30",
              "probes": 286,
              "ok": 286
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "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": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 40,
              "ok": 40
            }
          ]
        },
        "vendorStatus": {
          "page": "https://health.aws.amazon.com/health/status",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-09-30T13:04:56.139609209Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "awslabs/mcp",
            "version": "2026.09.20260930084625",
            "released": "2026-09-30",
            "seenAt": "2026-10-09T16:41:15.259347544Z"
          },
          {
            "registry": "pypi",
            "name": "awslabs.aws-documentation-mcp-server",
            "version": "1.2.2",
            "released": "2026-09-30",
            "seenAt": "2026-10-09T16:41:15.030080641Z"
          }
        ],
        "githubStars": 9765,
        "pypiWeekly": 53960,
        "securityTxt": {
          "url": "https://api.aws/.well-known/security.txt",
          "state": "unknown",
          "checkedAt": "2026-10-09T15:40:35.49879884Z"
        },
        "domain": {
          "domain": "api.aws",
          "registered": "2021-09-28",
          "source": "https://rdap.nominet.uk/aws/domain/api.aws",
          "checkedAt": "2026-10-04T13:04:33.982758538Z"
        },
        "pages": [
          {
            "url": "https://aws.amazon.com/privacy/",
            "kind": "privacy",
            "status": 304,
            "checkedAt": "2026-09-30T13:09:43.475054306Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "6ebd6be5615f"
          },
          {
            "url": "https://aws.amazon.com/agreement/",
            "kind": "terms",
            "status": 304,
            "checkedAt": "2026-09-30T13:09:41.375780685Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "cc03daebf120"
          }
        ],
        "mcpTools": {
          "url": "https://knowledge-mcp.global.api.aws",
          "checkedAt": "2026-10-09T21:40:18.617472388Z",
          "status": "ok",
          "note": "answered without the initialize handshake",
          "tools": [
            {
              "name": "aws___read_documentation",
              "description": "Fetch full AWS doc pages as markdown. `search_documentation` already returns verbatim page chunks, so don't re-read a URL whose chunk you already have to \"confirm\" or \"round out\" an answer -- the chunk is the real page text; treat it as authoritative.\n\nReading the full page is justified ONLY when the chunks genuinely lack the content:\n- an enumeration or aggregation (\"list all X\", \"how many X\") needs the complete set and the chunks show only part of it;\n- no search result is on-topic after refining the query, and a known doc URL would have the answer.\nOtherwise, answer from the chunks. Use exact URLs from `search_documentation`; don't guess slugs.\n\nInput: `requests: [{url, max_length?, start_index?}]`. Batch 2-5.\n- `max_length` default 10000.\n- `start_index` default 0; use prior `end_index` to continue, TOC offset to jump.\n\nAllow-listed prefixes: docs.aws.amazon.com; aws.amazon.com (not /marketplace); repost.aws/knowledge-center; docs.amplify.aws; ui.docs.amplify.aws; github.com/{aws-cloudformation/aws-cloudformation-templates, aws-samples/{aws-cdk-examples, generative-ai-cdk-constructs-samples, serverless-patterns}, awsdocs/aws-cdk-guide, awslabs/aws-solutions-constructs, cdklabs/cdk-nag} (README on `main`); constructs.dev/packages/{@aws-cdk-containers, @aws-cdk, @cdk-cloudformation, aws-analytics-reference-architecture, aws-cdk-lib, cdk-amazon-chime-resources, cdk-aws-lambda-powertools-layer, cdk-ecr-deployment, cdk-lambda-powertools-python-layer, cdk-serverless-clamscan, cdk8s, cdk8s-plus-33}; strandsagents.com/latest/documentation/docs/; karpenter.sh/docs/; Amazon Braket: {amazon-braket-sdk-python, amazon-braket-schemas-python, amazon-braket-default-simulator-python, amazon-braket-pennylane-plugin-python, amazon-braket-algorithm-library, qiskit-braket-provider, autoqasm, qirtoqasm}.readthedocs.io and github.com/amazon-braket/* (blob/tree/raw).\n\nOutput: SUCCESS -- markdown + `total_length, start_index, end_index, truncated, redirected_url?` (truncated includes TOC with char ranges). ERROR -- `error_code` in {not_found, invalid_url, throttled, downstream_error, validation_error}.",
              "inputSchema": {
                "properties": {
                  "requests": {
                    "description": "List of `{url, max_length?, start_index?}`. Batch 2-5.",
                    "items": {
                      "properties": {
                        "max_length": {
                          "description": "Chars returned (default 10000).",
                          "type": "integer"
                        },
                        "start_index": {
                          "description": "Char offset (default 0). Use prior `end_index` to continue, or TOC offset to jump.",
                          "type": "integer"
                        },
                        "url": {
                          "description": "Doc URL with allow-listed prefix; use exact URL from search.",
                          "type": "string"
                        }
                      },
                      "required": [
                        "url"
                      ],
                      "type": "object"
                    },
                    "type": "array"
                  }
                },
                "required": [],
                "type": "object"
              },
              "annotations": {
                "destructiveHint": false,
                "openWorldHint": false,
                "readOnlyHint": true
              }
            },
            {
              "name": "aws___search_documentation",
              "description": "AWS docs search. Each result's `context` is verbatim page text -- a real chunk of the actual page, not a short snippet -- and usually already contains the answer, so answer directly from it. Use `read_documentation` only when the chunks genuinely lack the needed detail.\n\nPick ONE topic. Add a 2nd ONLY if query genuinely spans domains. Extra topics dilute ranking.\n\n- reference_documentation -- API/SDK/CLI specs, config params\n- current_awareness -- new/released/announced\n- troubleshooting -- errors, \"how to fix\" (NOT for conceptual/feature questions)\n- amplify_docs -- Amplify (+ language)\n- cdk_docs -- CDK concepts/guides\n- cdk_constructs -- CDK code samples, L3\n- cloudformation -- CFN/SAM templates\n- strands_docs -- Strands Agents SDK (its Skills/agents concepts go here, NOT agent_skills)\n- agent_skills -- this tool's guided skills (load via `retrieve_skill`)\n- general (default) -- architecture, best practices, tutorials, feature behavior\n\nResults: rank_order (lower=better), url, title, context (verbatim page chunk -- answer directly from it).",
              "inputSchema": {
                "properties": {
                  "limit": {
                    "description": "Maximum number of results to return (default 4).",
                    "type": "integer"
                  },
                  "search_phrase": {
                    "description": "Keywords; preserve exact error strings and all task terms verbatim.",
                    "type": "string"
                  },
                  "topics": {
                    "description": "Up to 3 from: reference_documentation, current_awareness, troubleshooting, amplify_docs, cdk_docs, cdk_constructs, cloudformation, agent_skills, strands_docs, general. Default [\"general\"].",
                    "items": {
                      "description": "topic name",
                      "type": "string"
                    },
                    "type": "array"
                  }
                },
                "required": [
                  "search_phrase"
                ],
                "type": "object"
              },
              "annotations": {
                "destructiveHint": false,
                "openWorldHint": false,
                "readOnlyHint": true
              }
            },
            {
              "name": "aws___list_regions",
              "description": "Retrieve a list of all AWS regions.",
              "inputSchema": {
                "properties": {},
                "required": [],
                "type": "object"
              },
              "annotations": {
                "destructiveHint": false,
                "openWorldHint": false,
                "readOnlyHint": true
              }
            },
            {
              "name": "aws___get_regional_availability",
              "description": "AWS resource availability per region.\n\n- Max 10 regions; multi-region needs `filters`; single-region supports `next_token`.\n- Status: isAvailableIn | isNotAvailableIn | isPlannedIn | Not Found.\n- Response key: products | service_apis | cfn_resources.\n\nNot for region counts/docs/vague queries -- use `search_documentation` / `list_regions`.\n\nFilter values must EXACTLY match AWS's catalog names; guessed, partial, or pluralized names are rejected (\"values in filter parameter do not exist\"). If unsure of the exact name, first call once for a single region with resource_type set and NO filters to list all valid names, then re-call filtering on the exact match.",
              "inputSchema": {
                "properties": {
                  "filters": {
                    "description": "Use exact AWS product or sub-feature name.\n\n- product: 'Amazon Bedrock' (service), or sub-features like 'Comprehend Auto Scaling', 'Latency-Based Routing', 'PrivateLink Support'. When the user names a specific sub-feature, filter on the sub-feature -- do NOT generalize to the parent service ('Amazon Comprehend'); that returns availability for the wrong scope.\n- api: 'SdkServiceId+Operation' (e.g. 'CloudFormation+CreateStack', 'IAM+GetSSHPublicKey') or 'SdkServiceId' (e.g. 'EC2'). Use a literal '+' between service and operation -- not space, colon, or hyphen.\n- cfn: 'AWS::EC2::Instance', 'AWS::Lambda::Function'.\n\nInclude every region the user named; don't add filters they didn't request.\n\nValues must EXACTLY match AWS's catalog (e.g. 'AWS Lambda', not 'Lambda' or 'AWS Lambda Service'). If unsure of the exact name, first call once for one region with NO filters to list valid names, then filter on the exact match.",
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  },
                  "next_token": {
                    "description": "Pagination token. Single-region, no filters only.",
                    "type": "string"
                  },
                  "region": {
                    "description": "Unused; use `regions`.",
                    "type": "string"
                  },
                  "regions": {
                    "description": "AWS region codes (max 10). Multi-region requires `filters`; single-region supports `next_token`.",
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  },
                  "resource_type": {
                    "description": "Required: 'product' | 'api' | 'cfn'.",
                    "type": "string"
                  }
                },
                "required": [
                  "resource_type"
                ],
                "type": "object"
              },
              "annotations": {
                "destructiveHint": false,
                "openWorldHint": false,
                "readOnlyHint": true
              }
            },
            {
              "name": "aws___retrieve_skill",
              "description": "Retrieve an AWS skill (workflows, references). Returns SKILL.md, or `file` if given.\n\nCall `search_documentation` FIRST and copy `skill_name` verbatim -- it is an opaque registry ID. Never guess or fabricate `skill_name` or `file`.",
              "inputSchema": {
                "properties": {
                  "file": {
                    "description": "Optional file path within the skill, copied as cited (e.g. `references/architecture.md`). Don't add or strip a `references/` prefix. Omit for SKILL.md.",
                    "type": "string"
                  },
                  "skill_name": {
                    "description": "Required. Exact `skill_name` from a search_documentation result, copied verbatim. Do not invent or modify.",
                    "type": "string"
                  }
                },
                "required": [
                  "skill_name"
                ],
                "type": "object"
              },
              "annotations": {
                "destructiveHint": false,
                "openWorldHint": false,
                "readOnlyHint": true
              }
            }
          ],
          "schemaTokens": 1977,
          "changedAt": "2026-09-28T21:55:38.279284193Z",
          "check": {
            "checker": "anchor-check/1.0",
            "totalTokens": 1977,
            "counts": {
              "error": 0,
              "note": 1,
              "warn": 1
            },
            "findings": [
              {
                "rule": "TC07",
                "severity": "warn",
                "tool": "aws___read_documentation",
                "message": "the description is about 530 tokens",
                "fix": "Keep the description to what a model needs to choose and call the tool; move the manual to a resource or the docs."
              },
              {
                "rule": "TC24",
                "severity": "note",
                "message": "5 of 5 tools have no outputSchema",
                "fix": "Declare outputSchema for tools that return structured data, and return structuredContent that matches it."
              }
            ]
          }
        },
        "updatedAt": "2026-10-10T03:53:20.056218281Z"
      }
    },
    "answer": "Azure MCP Server scores 67.7 (B) on agent readiness against AWS MCP Servers's 63.3 (B), and leads in 4 of 7 scored categories. AWS MCP Servers leads on security \u0026 auth.",
    "b": {
      "slug": "azure-mcp",
      "name": "Azure MCP Server",
      "vendor": "Microsoft",
      "vendorUrl": "https://learn.microsoft.com/en-us/azure/developer/azure-mcp-server/",
      "kind": "mcp",
      "category": "infrastructure",
      "summary": "Microsoft's official local MCP server for Azure (`@azure/mcp`, also on NuGet as Azure.Mcp).",
      "url": "https://www.anchorterminal.com/tools/azure-mcp",
      "markdownUrl": "https://www.anchorterminal.com/tools/azure-mcp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/azure-mcp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/azure-mcp.json",
      "repo": "https://github.com/microsoft/mcp",
      "license": "MIT",
      "transports": [
        "stdio",
        "streamable-http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@azure/mcp"
        },
        {
          "registry": "nuget",
          "name": "Azure.Mcp"
        }
      ],
      "auth": "mixed",
      "authNotes": "DefaultAzureCredential. Picks up `az login`, the Azure Developer CLI, Visual Studio or VS Code sign-ins, or a service principal from environment variables in CI. No secrets in the MCP config.",
      "pricing": "free",
      "pricingNotes": "Open source under MIT. Azure resource usage is billed by Azure as normal.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "Local open-source server, no payments.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 3600,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-26"
      },
      "docsUrl": "https://learn.microsoft.com/en-us/azure/developer/azure-mcp-server/tools/",
      "registryName": "com.microsoft/azure",
      "capabilities": [
        "infra.azure",
        "infra.cloud"
      ],
      "tags": [
        "official",
        "open-source",
        "read-only-mode",
        "namespaces",
        "enterprise"
      ],
      "lastRelease": "2026-10-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 67.7,
        "grade": "B",
        "agentReady": false,
        "rank": 239,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 3,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 72,
          "maintenance": 89,
          "payments": 60,
          "reliability": 69,
          "schema": 77,
          "security": 73,
          "transparency": 76
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": -5,
        "negativeNotes": [
          "-2: CVE-2026-26118, published 2026-03-10, CVSS 8.8. Server-side request forgery in Azure MCP Server let an authorised attacker elevate privileges over a network. Fixed and published through MSRC (https://nvd.nist.gov/vuln/detail/CVE-2026-26118).",
          "-2: CVE-2026-32211, published 2026-04-03, CVSS 9.1. Missing authentication for a critical function in Azure MCP Server let an unauthorised attacker disclose information over a network. Fixed and published through MSRC (https://nvd.nist.gov/vuln/detail/CVE-2026-32211).",
          "-1: until 3.0.0-beta.49 on 2026-10-01, `communication_email_send` and `communication_sms_send` were annotated read-only, so they stayed available under `--read-only`, an outbound send path in a mode meant to block writes. Fixed and described in the changelog (https://github.com/microsoft/mcp/blob/main/servers/Azure.Mcp.Server/CHANGELOG.md)."
        ],
        "verdict": "Entra ID through DefaultAzureCredential, so access follows RBAC and no secret sits in the MCP config. npm `latest` installs a 3.0.0 beta, and betas rename and remove tools without a notice period.",
        "bestFor": "Agents inspecting or operating Azure resources under a developer's or service principal's own RBAC.",
        "strengths": [
          "Entra ID through DefaultAzureCredential, so access follows RBAC and no secret sits in the MCP config",
          "`--read-only`, `--namespace`, `--tool`, consolidated and single-tool modes for cutting the surface down",
          "Secret, connection-string and private-key reads ask the user first through elicitation",
          "Destructive, idempotent, read-only and secret metadata on every command",
          "26 releases between 8 July and 1 October 2026, each with a written changelog"
        ],
        "weaknesses": [
          "npm `latest` installs a 3.0.0 beta, and betas rename and remove tools without a notice period",
          "No confirmation step before deletes and other destructive calls",
          "Telemetry to Microsoft is on by default",
          "Two MSRC CVEs in March and April 2026, rated 8.8 and 9.1",
          "Default namespace mode still exposes about 60 tools"
        ],
        "agentNotes": [
          "Start with `--namespace \u003cone or two\u003e --read-only` for inspection and widen only when a task needs a write",
          "Pin a version instead of `@latest`, which is a prerelease",
          "Use `resiliency_*`, not `resilience_*`. The prefix changed on 22 September 2026",
          "Resolve the subscription and resource group once and pass them on every call",
          "Auth failures mean the credential chain found nothing. Run `az login` or set the service-principal variables"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2.5,
        "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.7
          }
        ],
        "editorialScores": {
          "ergonomics": 72,
          "maintenance": 89,
          "payments": 60,
          "reliability": 69,
          "schema": 77,
          "security": 73,
          "transparency": 71
        },
        "provenanceScore": 80
      },
      "connect": {
        "claudeCode": "claude mcp add azure -- npx -y @azure/mcp@latest server start --mode namespace --namespace storage --read-only true",
        "config": {
          "mcpServers": {
            "azure": {
              "args": [
                "-y",
                "@azure/mcp@latest",
                "server",
                "start",
                "--mode",
                "namespace",
                "--read-only",
                "true"
              ],
              "command": "npx"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/infra.azure",
        "tool": "https://letme.dev/azure-mcp"
      },
      "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-document-intelligence",
        "azure-devops-mcp",
        "microsoft-learn-mcp",
        "playwright-mcp",
        "azure-maps",
        "azure-translator",
        "microsoft-graph-calendar",
        "azure-blob-storage",
        "onedrive-sharepoint",
        "microsoft-teams",
        "dynamics-365-sales",
        "power-automate",
        "foundry-local",
        "microsoft-advertising-api",
        "microsoft-excel-graph",
        "outlook-mail-graph"
      ],
      "alsoIn": [
        "secrets"
      ],
      "area": "developer",
      "provenance": {
        "legalEntity": "Microsoft Corporation",
        "domain": "microsoft.com",
        "domainRegistered": "1991-05-02",
        "domainNote": "microsoft.com publishes a security.txt, but it passed its Expires date on 2026-09-23.",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "https://microsoft.com/en-us/privacy/privacystatement",
        "statusPage": "",
        "changelog": "https://github.com/microsoft/mcp/blob/main/servers/Azure.Mcp.Server/CHANGELOG.md",
        "securityTxt": "expired",
        "checked": "2026-09-26",
        "score": 80
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/azure-mcp.json",
      "live": {
        "slug": "azure-mcp",
        "versions": [
          {
            "registry": "github",
            "name": "microsoft/mcp",
            "version": "Template.Mcp.Server-0.0.12-alpha.6931953",
            "released": "2026-10-08",
            "seenAt": "2026-10-09T16:41:55.619870334Z"
          },
          {
            "registry": "mcp-registry",
            "name": "com.microsoft/azure",
            "version": "3.0.0-beta.48",
            "seenAt": "2026-10-10T03:11:32.438759038Z"
          },
          {
            "registry": "npm",
            "name": "@azure/mcp",
            "version": "3.0.0-beta.50",
            "seenAt": "2026-10-09T16:41:54.644313911Z"
          }
        ],
        "githubStars": 3755,
        "npmWeekly": 156938,
        "securityTxt": {
          "url": "https://microsoft.com/.well-known/security.txt",
          "state": "expired",
          "expires": "2026-09-23T16:00:00.000Z",
          "checkedAt": "2026-10-09T15:40:16.790821018Z"
        },
        "domain": {
          "domain": "microsoft.com",
          "registered": "1991-05-02",
          "source": "https://rdap.verisign.com/com/v1/domain/microsoft.com",
          "checkedAt": "2026-10-04T13:04:13.488857536Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/microsoft/mcp/main/servers/Azure.Mcp.Server/CHANGELOG.md",
            "kind": "deprecations",
            "status": 304,
            "checkedAt": "2026-10-09T18:45:33.16207569Z",
            "changedAt": "2026-10-07T18:09:16.727396891Z",
            "fingerprint": "adb9677ddf8e"
          },
          {
            "url": "https://microsoft.com/en-us/privacy/privacystatement",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:42:04.520855655Z",
            "changedAt": "2026-10-09T18:42:04.520855655Z",
            "fingerprint": "295981af311f"
          }
        ],
        "updatedAt": "2026-10-10T03:11:32.438759038Z"
      }
    },
    "facts": [
      {
        "a": "MCP server",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Amazon Web Services (AWS Labs)",
        "b": "Microsoft",
        "name": "Vendor"
      },
      {
        "a": "https://knowledge-mcp.global.api.aws",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "stdio, Streamable HTTP",
        "b": "stdio, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Apache-2.0",
        "b": "MIT",
        "name": "Licence"
      },
      {
        "a": "5",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "not listed",
        "b": "com.microsoft/azure",
        "name": "MCP registry"
      },
      {
        "a": "2026-09-30",
        "b": "2026-10-01",
        "name": "Last release"
      },
      {
        "a": "2026-08-14",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "2026-05-18",
        "b": "2026-09-01",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "9.6k stars, 274k PyPI/wk",
        "b": "3.6k stars",
        "name": "Popularity"
      },
      {
        "a": "2.5/5 (2)",
        "b": "2.5/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Azure MCP Server scores 67.7 (B) on agent readiness against AWS MCP Servers's 63.3 (B), and leads in 4 of 7 scored categories. AWS MCP Servers leads on security \u0026 auth.",
        "question": "Which is better for AI agents, AWS MCP Servers or Azure MCP Server?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do AWS MCP Servers and Azure MCP Server need an API key?"
      },
      {
        "answer": "AWS MCP Servers has a hosted endpoint at https://knowledge-mcp.global.api.aws. Azure MCP Server runs on your own machine, with no hosted endpoint listed.",
        "question": "Can an agent call AWS MCP Servers and Azure MCP Server without installing anything?"
      },
      {
        "answer": "Yes. AWS MCP Servers is open source (Apache-2.0). Azure MCP Server is open source (MIT).",
        "question": "Are AWS MCP Servers and Azure MCP Server open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Security \u0026 auth, 84 against 73"
        ],
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "Knowledge suits any agent answering AWS documentation or regional availability questions with no setup.",
        "slug": "aws-mcp-servers",
        "watchFor": "No published rate-limit numbers, retry guidance or status component for the Knowledge server"
      },
      {
        "aheadOn": [
          "Reliability, 69 against 48",
          "Schema \u0026 documentation, 77 against 69",
          "Maintenance \u0026 community, 89 against 79"
        ],
        "also": null,
        "goodFor": "Agents inspecting or operating Azure resources under a developer's or service principal's own RBAC.",
        "slug": "azure-mcp",
        "watchFor": "npm `latest` installs a 3.0.0 beta, and betas rename and remove tools without a notice period"
      }
    ],
    "job": {
      "capability": "infra.cloud-provider",
      "name": "Cloud provider tools"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/azure-mcp-vs-digitalocean-mcp.json",
        "title": "Azure MCP Server vs DigitalOcean MCP Server",
        "url": "https://www.anchorterminal.com/compare/azure-mcp-vs-digitalocean-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-mcp-vs-railway-mcp-server.json",
        "title": "Azure MCP Server vs Railway MCP Server",
        "url": "https://www.anchorterminal.com/compare/azure-mcp-vs-railway-mcp-server"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-mcp-vs-render-mcp-server.json",
        "title": "Azure MCP Server vs Render MCP Server",
        "url": "https://www.anchorterminal.com/compare/azure-mcp-vs-render-mcp-server"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aws-mcp-servers-vs-cloudflare-mcp.json",
        "title": "AWS MCP Servers vs Cloudflare MCP Servers",
        "url": "https://www.anchorterminal.com/compare/aws-mcp-servers-vs-cloudflare-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-mcp-vs-cloudflare-mcp.json",
        "title": "Azure MCP Server vs Cloudflare MCP Servers",
        "url": "https://www.anchorterminal.com/compare/azure-mcp-vs-cloudflare-mcp"
      }
    ],
    "scores": [
      {
        "aws-mcp-servers": 48,
        "azure-mcp": 69,
        "by": 21,
        "edge": "azure-mcp",
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "aws-mcp-servers": 69,
        "azure-mcp": 77,
        "by": 8,
        "edge": "azure-mcp",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "aws-mcp-servers": 74,
        "azure-mcp": 72,
        "by": 2,
        "edge": "aws-mcp-servers",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "aws-mcp-servers": 84,
        "azure-mcp": 73,
        "by": 11,
        "edge": "aws-mcp-servers",
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "aws-mcp-servers": 60,
        "azure-mcp": 60,
        "by": 0,
        "edge": "",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "aws-mcp-servers": 79,
        "azure-mcp": 89,
        "by": 10,
        "edge": "azure-mcp",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "aws-mcp-servers": 72,
        "azure-mcp": 76,
        "by": 4,
        "edge": "azure-mcp",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Azure MCP Server scores 67.7 (B) on agent readiness against AWS MCP Servers's 63.3 (B), and leads in 4 of 7 scored categories. AWS MCP Servers leads on security \u0026 auth. Both do cloud provider tools.",
    "verdicts": {
      "aws-mcp-servers": "Knowledge server is hosted, free, GA and needs no account or key. No published rate-limit numbers, retry guidance or status component for the Knowledge server.",
      "azure-mcp": "Entra ID through DefaultAzureCredential, so access follows RBAC and no secret sits in the MCP config. npm `latest` installs a 3.0.0 beta, and betas rename and remove tools without a notice period."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/aws-mcp-servers-vs-azure-mcp",
    "json": "https://www.anchorterminal.com/compare/aws-mcp-servers-vs-azure-mcp.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/aws-mcp-servers-vs-azure-mcp.md",
    "slim": "https://www.anchorterminal.com/compare/aws-mcp-servers-vs-azure-mcp.min.md"
  },
  "markdown": "Azure MCP Server scores 67.7 (B) on agent readiness against AWS MCP Servers's 63.3 (B), and leads in 4 of 7 scored categories. AWS MCP Servers leads on security \u0026 auth. Both do cloud provider tools.\n\n- AWS MCP Servers: grade B, 63.3/100, rank #397 of 950. Markdown https://www.anchorterminal.com/tools/aws-mcp-servers.md · JSON https://www.anchorterminal.com/api/v1/tools/aws-mcp-servers.json\n- Azure MCP Server: grade B, 67.7/100, rank #239 of 950. Markdown https://www.anchorterminal.com/tools/azure-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/azure-mcp.json\n- Best cloud infrastructure tools for AI agents: https://www.anchorterminal.com/best/infrastructure/index.md\n- All 12 infra comparisons: https://www.anchorterminal.com/compare/infrastructure/index.md\n- Best secrets managers and credential vaults for AI agents: https://www.anchorterminal.com/best/secrets/index.md\n- All 71 secrets comparisons: https://www.anchorterminal.com/compare/secrets/index.md\n\n## Which one, for what\n\n### AWS MCP Servers (B)\n\nGood for: Knowledge suits any agent answering AWS documentation or regional availability questions with no setup.\n\nAhead on:\n- Security \u0026 auth, 84 against 73\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: No published rate-limit numbers, retry guidance or status component for the Knowledge server\n\n### Azure MCP Server (B)\n\nGood for: Agents inspecting or operating Azure resources under a developer's or service principal's own RBAC.\n\nAhead on:\n- Reliability, 69 against 48\n- Schema \u0026 documentation, 77 against 69\n- Maintenance \u0026 community, 89 against 79\n\nWatch for: npm `latest` installs a 3.0.0 beta, and betas rename and remove tools without a notice period\n\n\n## Score by category\n\n| Category | Weight | AWS MCP Servers | Azure MCP Server | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 48 | 69 | Azure MCP Server +21 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 69 | 77 | Azure MCP Server +8 |\n| Agent ergonomics | 13% (16.2 this run) | 74 | 72 | AWS MCP Servers +2 |\n| Security \u0026 auth | 14% (17.5 this run) | 84 | 73 | AWS MCP Servers +11 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 60 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 79 | 89 | Azure MCP Server +10 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 72 | 76 | Azure MCP Server +4 |\n| Negative events | ≤15 | -5 | -5 | |\n| **Total** | | **63.3 · B** | **67.7 · B** | |\n\n## Facts side by side\n\n| Fact | AWS MCP Servers | Azure MCP Server |\n| --- | --- | --- |\n| Kind | MCP server | MCP server |\n| Vendor | Amazon Web Services (AWS Labs) | Microsoft |\n| Hosted endpoint | `https://knowledge-mcp.global.api.aws` | no (local only) |\n| Transports | stdio, Streamable HTTP | stdio, Streamable HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | Apache-2.0 | MIT |\n| Tools exposed | 5 | none |\n| Read-only variant documented | yes | yes |\n| llms.txt | no | no |\n| MCP registry | not listed | `com.microsoft/azure` |\n| Last release | 2026-09-30 | 2026-10-01 |\n| Terms last updated | 2026-08-14 | no document linked |\n| Privacy policy last updated | 2026-05-18 | 2026-09-01 |\n| Customer content may train models | not found in the text | yes |\n| Terms restrict automated access | not found in the text |  |\n| Terms restrict benchmarking | not found in the text |  |\n| Terms or service can change without notice | not found in the text |  |\n| Arbitration or class-action waiver | yes |  |\n| Popularity | 9.6k stars, 274k PyPI/wk | 3.6k stars |\n| Agent reviews | 2.5/5 (2) | 2.5/5 (2) |\n\n## Verdicts\n\n**AWS MCP Servers.** Knowledge server is hosted, free, GA and needs no account or key. No published rate-limit numbers, retry guidance or status component for the Knowledge server.\n\n**Azure MCP Server.** Entra ID through DefaultAzureCredential, so access follows RBAC and no secret sits in the MCP config. npm `latest` installs a 3.0.0 beta, and betas rename and remove tools without a notice period.\n\n## Before you call either\n\n### AWS MCP Servers\n\n1. Use `https://knowledge-mcp.global.api.aws` for docs and regional availability. It's rate-limited with no published numbers, so cache results\n2. Call `get_regional_availability` before proposing a service or CloudFormation resource in a region\n3. Run the AWS API server with `READ_OPERATIONS_ONLY=true` for inspection, and `REQUIRE_MUTATION_CONSENT=true` when writes are allowed\n4. Use a scoped IAM role, not an admin profile. IAM is the boundary the servers rely on\n5. Pin package versions. Releases land several times a month and can rename or remove tools\n\n### Azure MCP Server\n\n1. Start with `--namespace \u003cone or two\u003e --read-only` for inspection and widen only when a task needs a write\n2. Pin a version instead of `@latest`, which is a prerelease\n3. Use `resiliency_*`, not `resilience_*`. The prefix changed on 22 September 2026\n4. Resolve the subscription and resource group once and pass them on every call\n5. Auth failures mean the credential chain found nothing. Run `az login` or set the service-principal variables\n\n## Questions\n\n### Which is better for AI agents, AWS MCP Servers or Azure MCP Server?\n\nAzure MCP Server scores 67.7 (B) on agent readiness against AWS MCP Servers's 63.3 (B), and leads in 4 of 7 scored categories. AWS MCP Servers leads on security \u0026 auth.\n\n### Do AWS MCP Servers and Azure MCP Server need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call AWS MCP Servers and Azure MCP Server without installing anything?\n\nAWS MCP Servers has a hosted endpoint at https://knowledge-mcp.global.api.aws. Azure MCP Server runs on your own machine, with no hosted endpoint listed.\n\n### Are AWS MCP Servers and Azure MCP Server open source?\n\nYes. AWS MCP Servers is open source (Apache-2.0). Azure MCP Server is open source (MIT).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/aws-mcp-servers-vs-azure-mcp.json, and with the fewest tokens: https://www.anchorterminal.com/compare/aws-mcp-servers-vs-azure-mcp.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"aws-mcp-servers\", \"b\": \"azure-mcp\"}`. From a terminal: `anchor compare aws-mcp-servers azure-mcp`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/aws-mcp-servers.json and https://www.anchorterminal.com/api/v1/tools/azure-mcp.json\n\n## Other comparisons with AWS MCP Servers or Azure MCP Server\n\n- [Azure MCP Server vs DigitalOcean MCP Server](https://www.anchorterminal.com/compare/azure-mcp-vs-digitalocean-mcp.md)\n- [Azure MCP Server vs Railway MCP Server](https://www.anchorterminal.com/compare/azure-mcp-vs-railway-mcp-server.md)\n- [Azure MCP Server vs Render MCP Server](https://www.anchorterminal.com/compare/azure-mcp-vs-render-mcp-server.md)\n- [AWS MCP Servers vs Cloudflare MCP Servers](https://www.anchorterminal.com/compare/aws-mcp-servers-vs-cloudflare-mcp.md)\n- [Azure MCP Server vs Cloudflare MCP Servers](https://www.anchorterminal.com/compare/azure-mcp-vs-cloudflare-mcp.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-10",
    "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": "AWS MCP Servers vs Azure MCP Server",
        "url": ""
      }
    ],
    "description": "Azure scores 67.7 (B) to AWS MCP Servers's 63.3 (B) for cloud provider tools. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "AWS MCP Servers B 63.3",
      "Azure MCP Server B 67.7",
      "scores"
    ],
    "h1": "AWS MCP Servers vs Azure MCP Server",
    "image": "https://www.anchorterminal.com/assets/og/compare-aws-mcp-servers-vs-azure-mcp.png",
    "path": "/compare/aws-mcp-servers-vs-azure-mcp",
    "published": "2026-10-01",
    "section": "tools",
    "title": "AWS MCP Servers vs Azure for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-01",
    "url": "https://www.anchorterminal.com/compare/aws-mcp-servers-vs-azure-mcp"
  },
  "tokens": {
    "markdown": 2000,
    "slim": 630
  },
  "version": 1
}
