{
  "data": {
    "a": {
      "slug": "x-mcp",
      "name": "X MCP",
      "vendor": "X Corp.",
      "vendorUrl": "https://docs.x.com/tools/mcp",
      "kind": "mcp",
      "category": "social-media",
      "summary": "X MCP is X Corp.'s hosted Model Context Protocol server for the X API at api.x.com/mcp. It lets a model search posts, look up users, manage bookmarks, read trends and news, and draft Articles.",
      "url": "https://www.anchorterminal.com/tools/x-mcp",
      "markdownUrl": "https://www.anchorterminal.com/tools/x-mcp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/x-mcp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/x-mcp.json",
      "dns": "x-mcp.grade.anchorterminal.com",
      "repo": "https://github.com/xdevplatform/xurl",
      "license": "Proprietary hosted server under the X Developer Agreement. The xurl bridge on GitHub and npm is MIT",
      "transports": [
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://api.x.com/mcp",
      "packages": [
        {
          "registry": "npm",
          "name": "@xdevplatform/xurl"
        }
      ],
      "auth": "mixed",
      "authNotes": "A person creates an app in the X Developer Portal, on the Pay-per-use package in Production. Reads work with the app-only Bearer token in an `Authorization` header sent straight to https://api.x.com/mcp. User-context tools (bookmarks, Articles, the current user) need OAuth 2.0 authorisation code with PKCE through the local `xurl mcp` bridge, which takes CLIENT_ID and CLIENT_SECRET, needs the redirect URI http://localhost:8080/callback registered, opens a browser once, then caches and refreshes tokens in ~/.xurl. No dynamic client registration. Self-serve, with no review step documented.",
      "pricing": "usage",
      "pricingNotes": "Pay-per-use credits bought in advance in the Developer Console, with no subscription and no free tier. Reads are charged per resource returned ($0.005 a post, $0.010 a user, $0.001 for the app owner's own data) and writes per request ($0.005 a bookmark, $0.010 a trends request). A one-time $20 credit needs a saved payment card. The MCP page doesn't say MCP calls are billed at these API rates, though it requires a Pay-per-use app (https://docs.x.com/x-api/getting-started/pricing.md).",
      "priceSummary": "$0.005 / call",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the MCP page, the pricing page, the docs index or the OpenAPI spec (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 1352,
        "npmWeekly": 6027,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.x.com/tools/mcp",
      "llmsTxt": "https://docs.x.com/llms.txt",
      "openapi": "https://api.x.com/2/openapi.json",
      "capabilities": [
        "social.analytics"
      ],
      "tags": [
        "official",
        "hosted",
        "mcp",
        "oauth",
        "usage-priced",
        "prepaid",
        "card-required",
        "openapi",
        "llms-txt",
        "closed-source",
        "cli",
        "go"
      ],
      "lastRelease": "2026-09-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 53.1,
        "grade": "D",
        "agentReady": false,
        "rank": 967,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 7,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 45,
          "maintenance": 70,
          "payments": 20,
          "reliability": 72,
          "schema": 65,
          "security": 40,
          "transparency": 59
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-11-04"
        },
        "negative": 0,
        "verdict": "First-party access to full-archive post search, user lookup, trends and news, with OAuth 2.0 PKCE scopes and per-resource prices published without a login. Every user must create a paid X developer app, the tool list isn't published, and the documented tools don't create posts.",
        "bestFor": "Research and monitoring on X by an agent whose owner already has, or will pay for, an X developer app, such as searching the archive, reading timelines and mentions, and filing bookmarks.",
        "strengths": [
          "Hosted by X on api.x.com, with full-archive post search, user search and news search among the documented tools",
          "OAuth 2.0 with PKCE (S256 in the xurl bridge) and automatic token refresh, with the token sent in a header",
          "Per-resource prices are public, such as $0.005 a post read and $0.001 for reads of the app owner's own data",
          "The xurl bridge is MIT, with CI that builds, tests and lints on every push to main",
          "llms.txt, Markdown for every docs page and a public OpenAPI spec (version 2.173, 200 paths)"
        ],
        "weaknesses": [
          "No dynamic client registration, so each user creates an X developer app on the Pay-per-use package in Production",
          "The tool list and tool schemas aren't published, and neither public repository carries them",
          "The documented tools don't create posts, replies, likes or follows. Writes cover bookmarks and Articles",
          "xurl 1.3.4 asks for a fixed set of 24 scopes, including tweet.write and dm.write, with no flag to narrow them",
          "No guidance on prompt injection, though every post returned is text written by strangers",
          "The platform changelog has no entry for the hosted server, which publishes no version history"
        ],
        "agentNotes": [
          "Use the app-only Bearer header for read-only work. Bookmarks, Articles and any tool working in the user's name need the xurl bridge",
          "Set the client's startup timeout to 300 seconds or more, because the bridge holds the handshake until the first browser login ends",
          "On a headless host run `xurl auth oauth2 --headless` first, with CLIENT_ID and CLIENT_SECRET exported in that shell",
          "On `client-not-enrolled`, move the app to Pay-per-use and Production in the developer portal",
          "On 429, wait until the Unix time in `x-rate-limit-reset`. No Retry-After header is documented"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "D",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 53.1
          }
        ],
        "editorialScores": {
          "ergonomics": 45,
          "maintenance": 70,
          "payments": 20,
          "reliability": 72,
          "schema": 65,
          "security": 40,
          "transparency": 33
        },
        "provenanceScore": 85,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-04",
            "maintenance": "2026-11-04",
            "payments": "2026-11-04",
            "reliability": "2026-11-04",
            "schema": "2026-11-04",
            "security": "2026-11-04",
            "transparency": "2026-11-04"
          },
          "last": "2026-11-04",
          "lastMoved": "2026-11-04",
          "oldest": "2026-11-04",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npm install -g @xdevplatform/xurl",
        "config": {
          "mcpServers": {
            "xapi": {
              "args": [
                "-y",
                "@xdevplatform/xurl",
                "mcp",
                "https://api.x.com/mcp"
              ],
              "command": "npx",
              "env": {
                "CLIENT_ID": "YOUR_X_APP_CLIENT_ID",
                "CLIENT_SECRET": "YOUR_X_APP_CLIENT_SECRET"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/social.analytics",
        "tool": "https://letme.dev/x-mcp"
      },
      "sameCompany": [
        "x-ads"
      ],
      "area": "communication",
      "unitPrices": [
        {
          "item": "Post read",
          "unit": "record",
          "usd": 0.005,
          "note": "per post returned, deduplicated within a UTC day"
        },
        {
          "item": "User read",
          "unit": "record",
          "usd": 0.01,
          "note": "per user returned"
        },
        {
          "item": "Owned read (the app owner's own posts, bookmarks, followers)",
          "unit": "record",
          "usd": 0.001,
          "note": "when the authenticated user owns the app"
        },
        {
          "item": "Bookmark write",
          "unit": "call",
          "usd": 0.005,
          "note": "per request"
        },
        {
          "item": "Trends request",
          "unit": "call",
          "usd": 0.01,
          "note": "per request"
        }
      ],
      "provenance": {
        "legalEntity": "X Corp.",
        "domain": "x.com",
        "domainRegistered": "1993-04-02",
        "endpointOnVendorDomain": true,
        "terms": "https://docs.x.com/developer-terms/agreement",
        "privacy": "https://x.com/en/privacy",
        "statusPage": "https://developer.x.com/status",
        "changelog": "https://docs.x.com/changelog",
        "securityTxt": "unknown",
        "checked": "2026-11-04",
        "notes": [
          "The Developer Agreement (last updated 27 April 2026, re-read on 4 November) names X Corp. as the contracting party, or X Internet Unlimited Company for a developer in the EU, EFTA or the United Kingdom.",
          "The privacy link is x.com/en/privacy. x.com's robots.txt disallows every path for unnamed agents, so the policy and X's general terms of service are closed to us and their 8 October readings are struck.",
          "x.com/.well-known/security.txt is closed to us by robots.txt, so its 8 October reading (expired 1 January 2024) is struck. docs.x.com and developer.x.com returned 404 for the file on 4 November, and api.x.com's robots.txt disallows every path for unnamed agents.",
          "https://developer.x.com/status needs JavaScript and showed our reader no status data on 8 October. The incident history is at https://docs.x.com/incidents.md.",
          "RDAP for x.com gives a registration date of 1993-04-02."
        ],
        "score": 85
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/x-mcp.json",
      "live": {
        "slug": "x-mcp",
        "probe": {
          "target": "https://api.x.com/mcp",
          "method": "mcp-initialize",
          "lastAt": "2026-11-08T00:56:15.45648236Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 200,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 138,
          "p95ms24h": 229,
          "samples24h": 244,
          "samples30d": 7529,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 93,
              "ok": 93
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-29",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-11-02",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-11-03",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-11-04",
              "probes": 246,
              "ok": 246
            },
            {
              "date": "2026-11-05",
              "probes": 185,
              "ok": 185
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 243,
              "ok": 243
            },
            {
              "date": "2026-11-08",
              "probes": 10,
              "ok": 10
            }
          ]
        },
        "vendorStatus": {
          "page": "https://developer.x.com/status",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-08T00:32:38.223861776Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "xdevplatform/xurl",
            "version": "v1.3.4",
            "released": "2026-09-29",
            "seenAt": "2026-11-07T00:18:06.841117376Z"
          },
          {
            "registry": "npm",
            "name": "@xdevplatform/xurl",
            "version": "1.3.4",
            "seenAt": "2026-11-07T00:18:06.410394603Z"
          }
        ],
        "githubStars": 1365,
        "npmWeekly": 4788,
        "securityTxt": {
          "url": "https://x.com/.well-known/security.txt",
          "state": "expired",
          "expires": "2024-01-01T06:00:00.000Z",
          "checkedAt": "2026-11-07T16:01:24.213831632Z"
        },
        "llmsTxt": {
          "url": "https://docs.x.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:34:26.588701548Z"
        },
        "domain": {
          "domain": "x.com",
          "registered": "1993-04-02",
          "source": "https://rdap.verisign.com/com/v1/domain/x.com",
          "checkedAt": "2026-11-01T14:25:10.648320067Z"
        },
        "pages": [
          {
            "url": "https://docs.x.com/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:19:48.52525792Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "d1064f68558e"
          },
          {
            "url": "https://docs.x.com/x-api/getting-started/pricing.md",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:08:51.11758556Z",
            "changedAt": "2026-10-31T06:11:50.27229026Z",
            "fingerprint": "7318d8cce7ac"
          },
          {
            "url": "https://x.com/en/privacy",
            "kind": "privacy",
            "status": 0,
            "checkedAt": "2026-11-07T14:38:09.200102329Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "blockedByRobots": true
          },
          {
            "url": "https://docs.x.com/developer-terms/agreement",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:19:50.776391045Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "69ecb268f31a"
          }
        ],
        "mcpTools": {
          "url": "https://api.x.com/mcp",
          "checkedAt": "2026-11-07T01:49:14.492812265Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-10-08T21:34:02.68340277Z"
        },
        "github": {
          "repo": "xdevplatform/xurl",
          "checkedAt": "2026-11-02T09:39:32.883519302Z",
          "stars": 1364,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-09-29T21:20:24Z",
          "openIssues": 12,
          "openPRs": 11,
          "issuesOpened90d": 8,
          "issuesClosed90d": 0,
          "prsMerged90d": 4,
          "ci": {
            "branch": "main",
            "runs": 42,
            "success": 42,
            "failure": 0,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-09-29T21:23:44Z"
          },
          "replies": {
            "sampled": 25,
            "unanswered": 12,
            "medianDays": 34.9
          }
        },
        "updatedAt": "2026-11-08T00:56:15.45648236Z"
      }
    },
    "answer": "X MCP scores 53.1 (D) on agent readiness against Xpoz MCP's 39.6 (E), and leads in 5 of 7 scored categories. Xpoz MCP leads on agent ergonomics and payments \u0026 pricing.",
    "b": {
      "slug": "xpoz-mcp",
      "name": "Xpoz MCP",
      "vendor": "XPOZ",
      "vendorUrl": "https://xpoz.ai",
      "kind": "mcp",
      "category": "social-media",
      "summary": "Xpoz's hosted MCP server gives an agent 52 tools to search posts and profiles on X, Instagram, TikTok and Reddit, track brands and competitors and analyse engagement, with an API key and no platform API keys of its own.",
      "url": "https://www.anchorterminal.com/tools/xpoz-mcp",
      "markdownUrl": "https://www.anchorterminal.com/tools/xpoz-mcp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/xpoz-mcp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/xpoz-mcp.json",
      "dns": "xpoz-mcp.grade.anchorterminal.com",
      "repo": "https://github.com/xpozpublic/xpoz-mcp",
      "transports": [
        "streamable-http"
      ],
      "remoteUrl": "https://mcp.xpoz.ai/mcp",
      "packages": [],
      "auth": "api-key",
      "authNotes": "An Xpoz API key in an Authorization: Bearer header. No X, Instagram, TikTok or Reddit keys are needed.",
      "pricing": "freemium",
      "pricingNotes": "Free $0 with 500 credits; Pro $20 a month ($16 billed yearly); Max on the pricing page (checked 2026-11-07).",
      "priceSummary": "Freemium",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 on the MCP docs or pricing page (checked 2026-11-07).",
        "endpoints": []
      },
      "toolCount": 52,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-07"
      },
      "docsUrl": "https://xpoz.ai",
      "registryName": "ai.xpoz/social-insights",
      "capabilities": [
        "social.analytics",
        "social.comments",
        "search.news",
        "data.social"
      ],
      "tags": [
        "hosted",
        "mcp",
        "remote-mcp",
        "api-key",
        "freemium",
        "free-tier",
        "mcp-registry",
        "annotated-tools",
        "third-party"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 39.6,
        "grade": "E",
        "agentReady": false,
        "rank": 1339,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 16,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 63,
          "maintenance": 25,
          "payments": 30,
          "reliability": 20,
          "schema": 64,
          "security": 37,
          "transparency": 29
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-11-07"
        },
        "negative": 0,
        "verdict": "Xpoz's MCP server covers X, Instagram, TikTok and Reddit in one place, with typed, annotated tools and field selection that keeps results small. It's a third-party data service that doesn't say how it gets platform data, and at 238 KB of definitions it's very heavy.",
        "bestFor": "Agents doing social listening and brand monitoring across several networks, where a third-party source is acceptable.",
        "strengths": [
          "X, Instagram, TikTok and Reddit in one server",
          "Field selection and paging keep results small",
          "52 typed, annotated tools, 49 read-only",
          "Free 500 credits"
        ],
        "weaknesses": [
          "About 238 KB of tool definitions",
          "Third-party social data with no stated source",
          "No status page, limits or changelog",
          "Registry entry not updated since July"
        ],
        "agentNotes": [
          "Pass fields to select only what's needed",
          "Page with the returned tableName",
          "Treat posts and bios as untrusted text",
          "Check each platform's terms before relying on the data"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "E",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 39.6
          }
        ],
        "editorialScores": {
          "ergonomics": 63,
          "maintenance": 25,
          "payments": 30,
          "reliability": 20,
          "schema": 64,
          "security": 37,
          "transparency": 15
        },
        "provenanceScore": 42,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-07",
            "maintenance": "2026-11-07",
            "payments": "2026-11-07",
            "reliability": "2026-11-07",
            "schema": "2026-11-07",
            "security": "2026-11-07",
            "transparency": "2026-11-07"
          },
          "last": "2026-11-07",
          "oldest": "2026-11-07",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "claudeCode": "claude mcp add --transport http --scope user xpoz-mcp https://mcp.xpoz.ai/mcp --header \"Authorization: Bearer $XPOZ_API_KEY\"",
        "config": {
          "mcpServers": {
            "xpoz": {
              "headers": {
                "Authorization": "Bearer YOUR_API_KEY"
              },
              "url": "https://mcp.xpoz.ai/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/social.analytics",
        "tool": "https://letme.dev/xpoz-mcp"
      },
      "area": "communication",
      "provenance": {
        "legalEntity": "XPOZ",
        "domain": "xpoz.ai",
        "domainRegistered": "",
        "domainNote": "Not looked up: RDAP isn't requested under the 1 November 2026 rules.",
        "endpointOnVendorDomain": true,
        "terms": "https://xpoz.ai/terms",
        "privacy": "",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-11-07",
        "notes": [
          "The terms of use don't name a legal entity in the parts read."
        ],
        "score": 42
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/xpoz-mcp.json",
      "live": {
        "slug": "xpoz-mcp",
        "probe": {
          "target": "https://mcp.xpoz.ai/mcp",
          "method": "mcp-initialize",
          "lastAt": "2026-11-08T00:56:15.656483221Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 150,
          "lastNote": "initialize answered",
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 100,
          "p95ms24h": 152,
          "samples24h": 63,
          "samples30d": 63,
          "days": [
            {
              "date": "2026-11-07",
              "probes": 53,
              "ok": 53
            },
            {
              "date": "2026-11-08",
              "probes": 10,
              "ok": 10
            }
          ]
        },
        "updatedAt": "2026-11-08T00:56:15.656483221Z"
      }
    },
    "edges": [
      {
        "by": 52,
        "category": "reliability",
        "leads": "x-mcp",
        "name": "Reliability",
        "reasons": {
          "a": "Read with the hosted lines, since the server runs at api.x.com and the bridge only relays. docs.x.com and developer.x.com are separate hosts with open robots.txt files. The incident history was re-read on 4 November, and the other lines are per the 8 October check, not re-read. A status page exists at developer.x.com/status but needs JavaScript and showed our reader nothing. The dated incident history at docs.x.com/incidents.md lists incidents by title, with no component view and no MCP entry (15 of 20, an earlier partial kept). On 4 November that history still has no incident dated after 1 July 2026, apart from a 'Missing entities.annotations' entry marked ongoing since 24 March 2026, so the earlier partial stays, as the x-ads listing holds it on the same page (25 of 30). API rate limits are published per endpoint, such as 300 per 15 minutes and 1 a second for full-archive search and 50 per 15 minutes for bookmark writes. The MCP page gives no numbers of its own and says only that writes are stricter than reads (12 of 15, an earlier partial kept). 429s come with `x-rate-limit-reset` and the docs advise waiting for it and backing off. No Retry-After and no idempotency keys or safe-retry guidance for writes were found, so backoff alone (10). No SLA found for Pay-per-use (0). The MCP page carries no beta or preview label (10). 15+25+12+10+0+10 = 72.",
          "b": "No status page found (0). No history (5). Credit allowances, no rate limits found (5 of 15). No retry guidance (0). No SLA (0). Not labelled beta (10). 0 + 5 + 5 + 0 + 0 + 10 = 20."
        },
        "scores": {
          "a": 72,
          "b": 20
        }
      },
      {
        "by": 45,
        "category": "maintenance",
        "leads": "x-mcp",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "X's platform changelog (re-read on 4 November) has an X API v2 entry dated 26 October 2026 (Direct Message refusal error details), 9 days before 4 November, and the xurl bridge's newest release is 1.3.4 on 29 September 2026 (30). In the 90 days from 6 August the changelog dates six X API v2 entries, on 1 September (documented media limits), 21 September (OAuth 1.0a to 2.0 token exchange), 29 September (broadcast chat removal events), 1 October (a rewritten guide), 2 October (free credit incentives) and 26 October. Ads API entries are left to the x-ads listing. xurl tagged 1.3.2 (24 September, a Homebrew cask fix, packaging-only, half), 1.3.3 (29 September, an `xurl chat add-members` fix, full) and 1.3.4 (29 September, republishing 1.3.3's binaries and npm package, packaging-only, half). Well over three dated entries (20). The xmcp repository has no tags and no commit since 9 April 2026. The xurl changelog credits fixes to numbered issues. Issue threads couldn't be read (GitHub's pages answer 403) and the developer forum's robots.txt closes it to us (12 of 25, an earlier partial kept). The registry line's readings on 8 October and 4 November both came from the official MCP registry's JSON search API, which this run doesn't use, so they are struck and no registry entry is established (0). Go 1.24 with build, test, gofmt and release-build jobs in CI, results unread (8 of 10). 30+20+12+0+8 = 70.",
          "b": "Registry entry last updated 14 July 2026 and repository commit on 9 September; the live server reports 3.0.0 (10). No dated releases in 90 days (0). Issues not read (0). Official registry entry ai.xpoz/social-insights (15). Docker packaging only (0). 10 + 0 + 0 + 15 + 0 = 25. Registry presence read from Anchor Terminal's own daily import of the official MCP registry (/api/v1/registry.json, 6 November 2026), not the registry's API."
        },
        "scores": {
          "a": 70,
          "b": 25
        }
      },
      {
        "by": 30,
        "category": "transparency",
        "leads": "x-mcp",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Editorial half only. The hosted server is closed, under a Developer Agreement last updated 27 April 2026, and the bridge is MIT per the xurl LICENSE read on 4 November (18 of 30, an earlier partial kept). The 8 October data-handling reading came from X's privacy policy and terms of service on x.com, whose robots.txt disallows every path for unnamed agents, so it is struck. The Developer Agreement (re-read on 4 November) links a controller-to-controller data protection addendum on gdpr.x.com, which wasn't read, and no retention statement or subprocessor list for developers was found in the pages still readable (0 of 30). The versioning page (re-read on 4 November) limits breaking changes to major versions, at most yearly, with migration guides, and says a deprecated version works for 'a defined period' without stating one. Dated notices exist but can be short, such as five days for the Account Activity replay endpoint in March 2026 and four days for the removal of follows, likes and quote posts from self-serve tiers in April 2026. Dated notices with no stated period take this run's settled 15 (15 of 20, from 14). The controller names came from the struck privacy policy, and no subprocessor or data location list was found (0 of 20). 18+0+15+0 = 33.",
          "b": "Closed service; terms of use read without a legal entity (10 of 30). Data handling not read (5 of 30). No deprecation policy (0). Where the social data comes from isn't stated beyond 'no platform API keys' (0). 10 + 5 + 0 + 0 = 15."
        },
        "scores": {
          "a": 59,
          "b": 29
        }
      },
      {
        "by": 18,
        "category": "ergonomics",
        "leads": "xpoz-mcp",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Per the 8 October check, not re-read on 4 November, apart from the xurl clone and the MCP page. The number of tools isn't published. One docs page lists six groups and another says XMCP exposes 200+ endpoints as tools, so context cost is not established (5 of 25). The API has `max_results`, `pagination_token`, field selection and expansions. Whether each MCP tool passes them through is unread (12 of 20). Errors are problem+json with a type URI, title and detail, and the xurl CHANGELOG (1.2.0) says the bridge turns transport and token failures into JSON-RPC errors keyed to the request (15 of 20). No idempotency keys, and no readOnlyHint or destructiveHint documented. The bridge refreshes the token and retries after a 401 (4 of 20). One npx line starts the bridge and the URL has a default, but each user first creates an app, registers a redirect URI and sets a 300-second startup timeout. Official XDKs exist for Python and TypeScript (9 of 15). 5+12+15+4+9 = 45.",
          "b": "52 tools totalling about 238 KB (5). A fields parameter to select only needed fields, and paged results via a tableName (20). No documented errors (3 of 20). All annotated, 49 read-only (20). SDKs and a CLI (15). 5 + 20 + 3 + 20 + 15 = 63."
        },
        "scores": {
          "a": 45,
          "b": 63
        }
      },
      {
        "by": 10,
        "category": "payments",
        "leads": "xpoz-mcp",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "Per the 8 October check, not re-read on 4 November. No x402, MPP or L402 (0). Per-resource and per-request prices are published without a login, such as $0.005 a post read, $0.010 a user read and $0.005 a bookmark write (20). No free tier. Credits are bought in advance, and the one-time $20 credit needs a saved payment card (0). A person signs in to the developer portal, creates an app and completes a browser login (0). 0+20+0+0 = 20.",
          "b": "No machine payment protocol (0). Plan prices public (10). Free 500 credits (20). A person signs in for a key (0). 0 + 10 + 20 + 0 = 30."
        },
        "scores": {
          "a": 20,
          "b": 30
        }
      }
    ],
    "facts": [
      {
        "a": "MCP server",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "X Corp.",
        "b": "XPOZ",
        "name": "Vendor"
      },
      {
        "a": "https://api.x.com/mcp",
        "b": "https://mcp.xpoz.ai/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "Streamable HTTP, stdio",
        "b": "Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary hosted server under the X Developer Agreement. The xurl bridge on GitHub and npm is MIT",
        "b": "none",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "52",
        "name": "Tools exposed"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "not listed",
        "b": "ai.xpoz/social-insights",
        "name": "MCP registry"
      },
      {
        "a": "2026-09-29",
        "b": "none",
        "name": "Last release"
      },
      {
        "a": "2026-04-27",
        "b": "not read yet",
        "name": "Terms last updated"
      },
      {
        "a": "couldn't be read",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not read yet",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not read yet",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "not read yet",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not read yet",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not read yet",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "1.4k stars, 6k npm/wk",
        "b": "none",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "X MCP scores 53.1 (D) on agent readiness against Xpoz MCP's 39.6 (E), and leads in 5 of 7 scored categories. Xpoz MCP leads on agent ergonomics and payments \u0026 pricing.",
        "question": "Which is better for AI agents, X MCP or Xpoz MCP?"
      },
      {
        "answer": "X MCP takes an API key or an OAuth sign-in. Xpoz MCP needs an API key.",
        "question": "Do X MCP and Xpoz MCP need an API key?"
      },
      {
        "answer": "Yes. X MCP has a hosted endpoint at https://api.x.com/mcp and Xpoz MCP at https://mcp.xpoz.ai/mcp.",
        "question": "Can an agent call X MCP and Xpoz MCP without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 72 against 20",
          "Maintenance \u0026 community, 70 against 25",
          "Transparency \u0026 trust, 59 against 29"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "Research and monitoring on X by an agent whose owner already has, or will pay for, an X developer app, such as searching the archive, reading timelines and mentions, and filing bookmarks.",
        "slug": "x-mcp",
        "watchFor": "No dynamic client registration, so each user creates an X developer app on the Pay-per-use package in Production"
      },
      {
        "aheadOn": [
          "Agent ergonomics, 63 against 45",
          "Payments \u0026 pricing, 30 against 20"
        ],
        "also": null,
        "goodFor": "Agents doing social listening and brand monitoring across several networks, where a third-party source is acceptable.",
        "slug": "xpoz-mcp",
        "watchFor": "About 238 KB of tool definitions"
      }
    ],
    "history": {
      "x-mcp": [
        {
          "causes": [
            "evidence"
          ],
          "date": "2026-11-04",
          "delta": -2.3,
          "from": 55.4,
          "fromGrade": "C",
          "to": 53.1,
          "toGrade": "D"
        }
      ],
      "xpoz-mcp": null
    },
    "job": {
      "capability": "social.analytics",
      "name": "Social analytics"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/ayrshare-vs-x-mcp.json",
        "title": "Ayrshare API + MCP vs X MCP",
        "url": "https://www.anchorterminal.com/compare/ayrshare-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ayrshare-vs-xpoz-mcp.json",
        "title": "Ayrshare API + MCP vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/ayrshare-vs-xpoz-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/blotato-vs-x-mcp.json",
        "title": "Blotato vs X MCP",
        "url": "https://www.anchorterminal.com/compare/blotato-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/blotato-vs-xpoz-mcp.json",
        "title": "Blotato vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/blotato-vs-xpoz-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/buffer-vs-x-mcp.json",
        "title": "Buffer API + MCP vs X MCP",
        "url": "https://www.anchorterminal.com/compare/buffer-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/buffer-vs-xpoz-mcp.json",
        "title": "Buffer API + MCP vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/buffer-vs-xpoz-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bundle-social-vs-x-mcp.json",
        "title": "bundle.social vs X MCP",
        "url": "https://www.anchorterminal.com/compare/bundle-social-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bundle-social-vs-xpoz-mcp.json",
        "title": "bundle.social vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/bundle-social-vs-xpoz-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/late-vs-x-mcp.json",
        "title": "Zernio (formerly Late) API + MCP vs X MCP",
        "url": "https://www.anchorterminal.com/compare/late-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/late-vs-xpoz-mcp.json",
        "title": "Zernio (formerly Late) API + MCP vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/late-vs-xpoz-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metricool-vs-x-mcp.json",
        "title": "Metricool API + MCP vs X MCP",
        "url": "https://www.anchorterminal.com/compare/metricool-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metricool-vs-xpoz-mcp.json",
        "title": "Metricool API + MCP vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/metricool-vs-xpoz-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mixpost-vs-x-mcp.json",
        "title": "Mixpost API + MCP vs X MCP",
        "url": "https://www.anchorterminal.com/compare/mixpost-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mixpost-vs-xpoz-mcp.json",
        "title": "Mixpost API + MCP vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/mixpost-vs-xpoz-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/oneup-vs-x-mcp.json",
        "title": "OneUp API + MCP vs X MCP",
        "url": "https://www.anchorterminal.com/compare/oneup-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/oneup-vs-xpoz-mcp.json",
        "title": "OneUp API + MCP vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/oneup-vs-xpoz-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/post-bridge-vs-x-mcp.json",
        "title": "Post Bridge API + MCP vs X MCP",
        "url": "https://www.anchorterminal.com/compare/post-bridge-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/post-bridge-vs-xpoz-mcp.json",
        "title": "Post Bridge API + MCP vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/post-bridge-vs-xpoz-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/postiz-vs-x-mcp.json",
        "title": "Postiz API + MCP vs X MCP",
        "url": "https://www.anchorterminal.com/compare/postiz-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/postiz-vs-xpoz-mcp.json",
        "title": "Postiz API + MCP vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/postiz-vs-xpoz-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/publer-vs-x-mcp.json",
        "title": "Publer API + MCP vs X MCP",
        "url": "https://www.anchorterminal.com/compare/publer-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/publer-vs-xpoz-mcp.json",
        "title": "Publer API + MCP vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/publer-vs-xpoz-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/socialcannon-vs-x-mcp.json",
        "title": "SocialCannon vs X MCP",
        "url": "https://www.anchorterminal.com/compare/socialcannon-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/socialcannon-vs-xpoz-mcp.json",
        "title": "SocialCannon vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/socialcannon-vs-xpoz-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sprout-social-vs-x-mcp.json",
        "title": "Sprout Social API vs X MCP",
        "url": "https://www.anchorterminal.com/compare/sprout-social-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sprout-social-vs-xpoz-mcp.json",
        "title": "Sprout Social API vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/sprout-social-vs-xpoz-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/twitterapi-io-mcp-vs-x-mcp.json",
        "title": "TwitterAPI.io MCP vs X MCP",
        "url": "https://www.anchorterminal.com/compare/twitterapi-io-mcp-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/twitterapi-io-mcp-vs-xpoz-mcp.json",
        "title": "TwitterAPI.io MCP vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/twitterapi-io-mcp-vs-xpoz-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/upload-post-vs-x-mcp.json",
        "title": "Upload-Post API + MCP vs X MCP",
        "url": "https://www.anchorterminal.com/compare/upload-post-vs-x-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/upload-post-vs-xpoz-mcp.json",
        "title": "Upload-Post API + MCP vs Xpoz MCP",
        "url": "https://www.anchorterminal.com/compare/upload-post-vs-xpoz-mcp"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 52,
        "edge": "x-mcp",
        "key": "reliability",
        "name": "Reliability",
        "weight": 16,
        "x-mcp": 72,
        "xpoz-mcp": 20
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 1,
        "edge": "x-mcp",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13,
        "x-mcp": 65,
        "xpoz-mcp": 64
      },
      {
        "by": 18,
        "edge": "xpoz-mcp",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13,
        "x-mcp": 45,
        "xpoz-mcp": 63
      },
      {
        "by": 3,
        "edge": "x-mcp",
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14,
        "x-mcp": 40,
        "xpoz-mcp": 37
      },
      {
        "by": 10,
        "edge": "xpoz-mcp",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10,
        "x-mcp": 20,
        "xpoz-mcp": 30
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 45,
        "edge": "x-mcp",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7,
        "x-mcp": 70,
        "xpoz-mcp": 25
      },
      {
        "by": 30,
        "edge": "x-mcp",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7,
        "x-mcp": 59,
        "xpoz-mcp": 29
      }
    ],
    "summary": "X MCP scores 53.1 (D) on agent readiness against Xpoz MCP's 39.6 (E), and leads in 5 of 7 scored categories. Xpoz MCP leads on agent ergonomics and payments \u0026 pricing. Both do social analytics.",
    "tasks": null,
    "tutorials": [
      {
        "title": "Research product mentions with X MCP",
        "tool": "x-mcp",
        "url": "https://www.anchorterminal.com/tutorials/x-mcp/"
      }
    ],
    "verdicts": {
      "x-mcp": "First-party access to full-archive post search, user lookup, trends and news, with OAuth 2.0 PKCE scopes and per-resource prices published without a login. Every user must create a paid X developer app, the tool list isn't published, and the documented tools don't create posts.",
      "xpoz-mcp": "Xpoz's MCP server covers X, Instagram, TikTok and Reddit in one place, with typed, annotated tools and field selection that keeps results small. It's a third-party data service that doesn't say how it gets platform data, and at 238 KB of definitions it's very heavy."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/x-mcp-vs-xpoz-mcp",
    "json": "https://www.anchorterminal.com/compare/x-mcp-vs-xpoz-mcp.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/x-mcp-vs-xpoz-mcp.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/x-mcp-vs-xpoz-mcp.min.md"
  },
  "markdown": "X MCP scores 53.1 (D) on agent readiness against Xpoz MCP's 39.6 (E), and leads in 5 of 7 scored categories. Xpoz MCP leads on agent ergonomics and payments \u0026 pricing. Both do social analytics.\n\n- X MCP: grade D, 53.1/100, rank #967 of 1510. Markdown https://www.anchorterminal.com/tools/x-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/x-mcp.json\n- Xpoz MCP: grade E, 39.6/100, rank #1339 of 1510. Markdown https://www.anchorterminal.com/tools/xpoz-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/xpoz-mcp.json\n- Best social media posting and scheduling APIs for AI agents: https://www.anchorterminal.com/best/social-media/index.md\n- All 163 social comparisons: https://www.anchorterminal.com/compare/social-media/index.md\n\n## Which one, for what\n\n### X MCP (D)\n\nGood for: Research and monitoring on X by an agent whose owner already has, or will pay for, an X developer app, such as searching the archive, reading timelines and mentions, and filing bookmarks.\n\nAhead on:\n- Reliability, 72 against 20\n- Maintenance \u0026 community, 70 against 25\n- Transparency \u0026 trust, 59 against 29\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: No dynamic client registration, so each user creates an X developer app on the Pay-per-use package in Production\n\n### Xpoz MCP (E)\n\nGood for: Agents doing social listening and brand monitoring across several networks, where a third-party source is acceptable.\n\nAhead on:\n- Agent ergonomics, 63 against 45\n- Payments \u0026 pricing, 30 against 20\n\nWatch for: About 238 KB of tool definitions\n\n\n## Why the edge\n\n### Reliability: X MCP +52\n\n- X MCP (72): Read with the hosted lines, since the server runs at api.x.com and the bridge only relays. docs.x.com and developer.x.com are separate hosts with open robots.txt files. The incident history was re-read on 4 November, and the other lines are per the 8 October check, not re-read. A status page exists at developer.x.com/status but needs JavaScript and showed our reader nothing. The dated incident history at docs.x.com/incidents.md lists incidents by title, with no component view and no MCP entry (15 of 20, an earlier partial kept). On 4 November that history still has no incident dated after 1 July 2026, apart from a 'Missing entities.annotations' entry marked ongoing since 24 March 2026, so the earlier partial stays, as the x-ads listing holds it on the same page (25 of 30). API rate limits are published per endpoint, such as 300 per 15 minutes and 1 a second for full-archive search and 50 per 15 minutes for bookmark writes. The MCP page gives no numbers of its own and says only that writes are stricter than reads (12 of 15, an earlier partial kept). 429s come with `x-rate-limit-reset` and the docs advise waiting for it and backing off. No Retry-After and no idempotency keys or safe-retry guidance for writes were found, so backoff alone (10). No SLA found for Pay-per-use (0). The MCP page carries no beta or preview label (10). 15+25+12+10+0+10 = 72.\n- Xpoz MCP (20): No status page found (0). No history (5). Credit allowances, no rate limits found (5 of 15). No retry guidance (0). No SLA (0). Not labelled beta (10). 0 + 5 + 5 + 0 + 0 + 10 = 20.\n\n### Maintenance \u0026 community: X MCP +45\n\n- X MCP (70): X's platform changelog (re-read on 4 November) has an X API v2 entry dated 26 October 2026 (Direct Message refusal error details), 9 days before 4 November, and the xurl bridge's newest release is 1.3.4 on 29 September 2026 (30). In the 90 days from 6 August the changelog dates six X API v2 entries, on 1 September (documented media limits), 21 September (OAuth 1.0a to 2.0 token exchange), 29 September (broadcast chat removal events), 1 October (a rewritten guide), 2 October (free credit incentives) and 26 October. Ads API entries are left to the x-ads listing. xurl tagged 1.3.2 (24 September, a Homebrew cask fix, packaging-only, half), 1.3.3 (29 September, an `xurl chat add-members` fix, full) and 1.3.4 (29 September, republishing 1.3.3's binaries and npm package, packaging-only, half). Well over three dated entries (20). The xmcp repository has no tags and no commit since 9 April 2026. The xurl changelog credits fixes to numbered issues. Issue threads couldn't be read (GitHub's pages answer 403) and the developer forum's robots.txt closes it to us (12 of 25, an earlier partial kept). The registry line's readings on 8 October and 4 November both came from the official MCP registry's JSON search API, which this run doesn't use, so they are struck and no registry entry is established (0). Go 1.24 with build, test, gofmt and release-build jobs in CI, results unread (8 of 10). 30+20+12+0+8 = 70.\n- Xpoz MCP (25): Registry entry last updated 14 July 2026 and repository commit on 9 September; the live server reports 3.0.0 (10). No dated releases in 90 days (0). Issues not read (0). Official registry entry ai.xpoz/social-insights (15). Docker packaging only (0). 10 + 0 + 0 + 15 + 0 = 25. Registry presence read from Anchor Terminal's own daily import of the official MCP registry (/api/v1/registry.json, 6 November 2026), not the registry's API.\n\n### Transparency \u0026 trust: X MCP +30\n\n- X MCP (59): Editorial half only. The hosted server is closed, under a Developer Agreement last updated 27 April 2026, and the bridge is MIT per the xurl LICENSE read on 4 November (18 of 30, an earlier partial kept). The 8 October data-handling reading came from X's privacy policy and terms of service on x.com, whose robots.txt disallows every path for unnamed agents, so it is struck. The Developer Agreement (re-read on 4 November) links a controller-to-controller data protection addendum on gdpr.x.com, which wasn't read, and no retention statement or subprocessor list for developers was found in the pages still readable (0 of 30). The versioning page (re-read on 4 November) limits breaking changes to major versions, at most yearly, with migration guides, and says a deprecated version works for 'a defined period' without stating one. Dated notices exist but can be short, such as five days for the Account Activity replay endpoint in March 2026 and four days for the removal of follows, likes and quote posts from self-serve tiers in April 2026. Dated notices with no stated period take this run's settled 15 (15 of 20, from 14). The controller names came from the struck privacy policy, and no subprocessor or data location list was found (0 of 20). 18+0+15+0 = 33.\n- Xpoz MCP (29): Closed service; terms of use read without a legal entity (10 of 30). Data handling not read (5 of 30). No deprecation policy (0). Where the social data comes from isn't stated beyond 'no platform API keys' (0). 10 + 5 + 0 + 0 = 15.\n\n### Agent ergonomics: Xpoz MCP +18\n\n- X MCP (45): Per the 8 October check, not re-read on 4 November, apart from the xurl clone and the MCP page. The number of tools isn't published. One docs page lists six groups and another says XMCP exposes 200+ endpoints as tools, so context cost is not established (5 of 25). The API has `max_results`, `pagination_token`, field selection and expansions. Whether each MCP tool passes them through is unread (12 of 20). Errors are problem+json with a type URI, title and detail, and the xurl CHANGELOG (1.2.0) says the bridge turns transport and token failures into JSON-RPC errors keyed to the request (15 of 20). No idempotency keys, and no readOnlyHint or destructiveHint documented. The bridge refreshes the token and retries after a 401 (4 of 20). One npx line starts the bridge and the URL has a default, but each user first creates an app, registers a redirect URI and sets a 300-second startup timeout. Official XDKs exist for Python and TypeScript (9 of 15). 5+12+15+4+9 = 45.\n- Xpoz MCP (63): 52 tools totalling about 238 KB (5). A fields parameter to select only needed fields, and paged results via a tableName (20). No documented errors (3 of 20). All annotated, 49 read-only (20). SDKs and a CLI (15). 5 + 20 + 3 + 20 + 15 = 63.\n\n### Payments \u0026 pricing: Xpoz MCP +10\n\n- X MCP (20): Per the 8 October check, not re-read on 4 November. No x402, MPP or L402 (0). Per-resource and per-request prices are published without a login, such as $0.005 a post read, $0.010 a user read and $0.005 a bookmark write (20). No free tier. Credits are bought in advance, and the one-time $20 credit needs a saved payment card (0). A person signs in to the developer portal, creates an app and completes a browser login (0). 0+20+0+0 = 20.\n- Xpoz MCP (30): No machine payment protocol (0). Plan prices public (10). Free 500 credits (20). A person signs in for a key (0). 0 + 10 + 20 + 0 = 30.\n\n## Score by category\n\n| Category | Weight | X MCP | Xpoz MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 72 | 20 | X MCP +52 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 65 | 64 | X MCP +1 |\n| Agent ergonomics | 13% (16.2 this run) | 45 | 63 | Xpoz MCP +18 |\n| Security \u0026 auth | 14% (17.5 this run) | 40 | 37 | X MCP +3 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 30 | Xpoz MCP +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 70 | 25 | X MCP +45 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 59 | 29 | X MCP +30 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **53.1 · D** | **39.6 · E** | |\n\n## Facts side by side\n\n| Fact | X MCP | Xpoz MCP |\n| --- | --- | --- |\n| Kind | MCP server | MCP server |\n| Vendor | X Corp. | XPOZ |\n| Hosted endpoint | `https://api.x.com/mcp` | `https://mcp.xpoz.ai/mcp` |\n| Transports | Streamable HTTP, stdio | Streamable HTTP |\n| Auth | OAuth or key | API key |\n| Pricing | Pay per use | Freemium |\n| x402 | no | no |\n| Licence | Proprietary hosted server under the X Developer Agreement. The xurl bridge on GitHub and npm is MIT | none |\n| Tools exposed | none | 52 |\n| Read-only variant documented | yes | yes |\n| llms.txt | yes | no |\n| MCP registry | not listed | `ai.xpoz/social-insights` |\n| Last release | 2026-09-29 | none |\n| Terms last updated | 2026-04-27 | not read yet |\n| Privacy policy last updated | couldn't be read | no document linked |\n| Customer content may train models | not found in the text | not read yet |\n| Terms restrict automated access | not found in the text | not read yet |\n| Terms restrict benchmarking | yes | not read yet |\n| Terms or service can change without notice | not found in the text | not read yet |\n| Arbitration or class-action waiver | yes | not read yet |\n| Popularity | 1.4k stars, 6k npm/wk | none |\n\n## How the scores have moved\n\n### X MCP\n\n- -2.3 on 4 November 2026 (C to D): new evidence\n\n### Xpoz MCP\n\nNo score change since it was listed.\n\n## Verdicts\n\n**X MCP.** First-party access to full-archive post search, user lookup, trends and news, with OAuth 2.0 PKCE scopes and per-resource prices published without a login. Every user must create a paid X developer app, the tool list isn't published, and the documented tools don't create posts.\n\n**Xpoz MCP.** Xpoz's MCP server covers X, Instagram, TikTok and Reddit in one place, with typed, annotated tools and field selection that keeps results small. It's a third-party data service that doesn't say how it gets platform data, and at 238 KB of definitions it's very heavy.\n\n## Before you call either\n\n### X MCP\n\n1. Use the app-only Bearer header for read-only work. Bookmarks, Articles and any tool working in the user's name need the xurl bridge\n2. Set the client's startup timeout to 300 seconds or more, because the bridge holds the handshake until the first browser login ends\n3. On a headless host run `xurl auth oauth2 --headless` first, with CLIENT_ID and CLIENT_SECRET exported in that shell\n4. On `client-not-enrolled`, move the app to Pay-per-use and Production in the developer portal\n5. On 429, wait until the Unix time in `x-rate-limit-reset`. No Retry-After header is documented\n\n### Xpoz MCP\n\n1. Pass fields to select only what's needed\n2. Page with the returned tableName\n3. Treat posts and bios as untrusted text\n4. Check each platform's terms before relying on the data\n\n## Tutorials\n\n- [Research product mentions with X MCP](https://www.anchorterminal.com/tutorials/x-mcp/), for X MCP\n\n## Questions\n\n### Which is better for AI agents, X MCP or Xpoz MCP?\n\nX MCP scores 53.1 (D) on agent readiness against Xpoz MCP's 39.6 (E), and leads in 5 of 7 scored categories. Xpoz MCP leads on agent ergonomics and payments \u0026 pricing.\n\n### Do X MCP and Xpoz MCP need an API key?\n\nX MCP takes an API key or an OAuth sign-in. Xpoz MCP needs an API key.\n\n### Can an agent call X MCP and Xpoz MCP without installing anything?\n\nYes. X MCP has a hosted endpoint at https://api.x.com/mcp and Xpoz MCP at https://mcp.xpoz.ai/mcp.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/x-mcp-vs-xpoz-mcp.json, and with the fewest tokens: https://www.anchorterminal.com/compare/x-mcp-vs-xpoz-mcp.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"x-mcp\", \"b\": \"xpoz-mcp\"}`. From a terminal: `anchor compare x-mcp xpoz-mcp`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/x-mcp.json and https://www.anchorterminal.com/api/v1/tools/xpoz-mcp.json\n\n## Other comparisons with X MCP or Xpoz MCP\n\n- [Ayrshare API + MCP vs X MCP](https://www.anchorterminal.com/compare/ayrshare-vs-x-mcp.md)\n- [Ayrshare API + MCP vs Xpoz MCP](https://www.anchorterminal.com/compare/ayrshare-vs-xpoz-mcp.md)\n- [Blotato vs X MCP](https://www.anchorterminal.com/compare/blotato-vs-x-mcp.md)\n- [Blotato vs Xpoz MCP](https://www.anchorterminal.com/compare/blotato-vs-xpoz-mcp.md)\n- [Buffer API + MCP vs X MCP](https://www.anchorterminal.com/compare/buffer-vs-x-mcp.md)\n- [Buffer API + MCP vs Xpoz MCP](https://www.anchorterminal.com/compare/buffer-vs-xpoz-mcp.md)\n- [bundle.social vs X MCP](https://www.anchorterminal.com/compare/bundle-social-vs-x-mcp.md)\n- [bundle.social vs Xpoz MCP](https://www.anchorterminal.com/compare/bundle-social-vs-xpoz-mcp.md)\n- [Zernio (formerly Late) API + MCP vs X MCP](https://www.anchorterminal.com/compare/late-vs-x-mcp.md)\n- [Zernio (formerly Late) API + MCP vs Xpoz MCP](https://www.anchorterminal.com/compare/late-vs-xpoz-mcp.md)\n- [Metricool API + MCP vs X MCP](https://www.anchorterminal.com/compare/metricool-vs-x-mcp.md)\n- [Metricool API + MCP vs Xpoz MCP](https://www.anchorterminal.com/compare/metricool-vs-xpoz-mcp.md)\n- [Mixpost API + MCP vs X MCP](https://www.anchorterminal.com/compare/mixpost-vs-x-mcp.md)\n- [Mixpost API + MCP vs Xpoz MCP](https://www.anchorterminal.com/compare/mixpost-vs-xpoz-mcp.md)\n- [OneUp API + MCP vs X MCP](https://www.anchorterminal.com/compare/oneup-vs-x-mcp.md)\n- [OneUp API + MCP vs Xpoz MCP](https://www.anchorterminal.com/compare/oneup-vs-xpoz-mcp.md)\n- [Post Bridge API + MCP vs X MCP](https://www.anchorterminal.com/compare/post-bridge-vs-x-mcp.md)\n- [Post Bridge API + MCP vs Xpoz MCP](https://www.anchorterminal.com/compare/post-bridge-vs-xpoz-mcp.md)\n- [Postiz API + MCP vs X MCP](https://www.anchorterminal.com/compare/postiz-vs-x-mcp.md)\n- [Postiz API + MCP vs Xpoz MCP](https://www.anchorterminal.com/compare/postiz-vs-xpoz-mcp.md)\n- [Publer API + MCP vs X MCP](https://www.anchorterminal.com/compare/publer-vs-x-mcp.md)\n- [Publer API + MCP vs Xpoz MCP](https://www.anchorterminal.com/compare/publer-vs-xpoz-mcp.md)\n- [SocialCannon vs X MCP](https://www.anchorterminal.com/compare/socialcannon-vs-x-mcp.md)\n- [SocialCannon vs Xpoz MCP](https://www.anchorterminal.com/compare/socialcannon-vs-xpoz-mcp.md)\n- [Sprout Social API vs X MCP](https://www.anchorterminal.com/compare/sprout-social-vs-x-mcp.md)\n- [Sprout Social API vs Xpoz MCP](https://www.anchorterminal.com/compare/sprout-social-vs-xpoz-mcp.md)\n- [TwitterAPI.io MCP vs X MCP](https://www.anchorterminal.com/compare/twitterapi-io-mcp-vs-x-mcp.md)\n- [TwitterAPI.io MCP vs Xpoz MCP](https://www.anchorterminal.com/compare/twitterapi-io-mcp-vs-xpoz-mcp.md)\n- [Upload-Post API + MCP vs X MCP](https://www.anchorterminal.com/compare/upload-post-vs-x-mcp.md)\n- [Upload-Post API + MCP vs Xpoz MCP](https://www.anchorterminal.com/compare/upload-post-vs-xpoz-mcp.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "X MCP vs Xpoz MCP",
        "url": ""
      }
    ],
    "description": "X MCP scores 53.1 (D) to Xpoz MCP's 39.6 (E) for social analytics. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "X MCP D 53.1",
      "Xpoz MCP E 39.6",
      "scores"
    ],
    "h1": "X MCP vs Xpoz MCP",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/x-mcp-vs-xpoz-mcp",
    "published": "2026-10-01",
    "section": "tools",
    "title": "X MCP vs Xpoz MCP for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/x-mcp-vs-xpoz-mcp"
  },
  "tokens": {
    "markdown": 4250,
    "slim": 2480
  },
  "version": 1
}
