{
  "data": {
    "a": {
      "slug": "metricool",
      "name": "Metricool API + MCP",
      "vendor": "Metricool",
      "vendorUrl": "https://metricool.com",
      "kind": "http-api",
      "category": "social-media",
      "summary": "Analytics-first social suite with a large REST API (553 paths) and a hosted OAuth MCP server.",
      "url": "https://www.anchorterminal.com/tools/metricool",
      "markdownUrl": "https://www.anchorterminal.com/tools/metricool.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/metricool.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/metricool.json",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://app.metricool.com/api",
      "packages": [
        {
          "registry": "pypi",
          "name": "mcp-metricool"
        }
      ],
      "auth": "mixed",
      "authNotes": "REST API takes the account token in the X-Mc-Auth header plus userId and blogId parameters on every call. The hosted MCP uses OAuth. The older local PyPI server reads METRICOOL_USER_TOKEN and METRICOOL_USER_ID and needs API access.",
      "pricing": "freemium",
      "pricingNotes": "Free plan for 1 brand with 20 scheduled posts, 30 days of analytics and the MCP, no LinkedIn or X. Starter $25 a month for 5 brands or $45 for 10 ($20 and $36 billed yearly). REST API only on Advanced, $67 a month for 15 brands, $107 for 25, $210 for 50 ($53, $85 and $159 billed yearly). X accounts $10 a month each on top. Euro prices differ (https://metricool.com/pricing/).",
      "priceSummary": "$25 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 or per-call payment in the API docs, help centre or pricing (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": 424,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://app.metricool.com/resources/apidocs/index.html",
      "llmsTxt": "https://help.metricool.com/llms.txt",
      "openapi": "https://app.metricool.com/api/swagger.json",
      "capabilities": [
        "social.post",
        "social.schedule",
        "social.analytics",
        "social.media-upload"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "mcp",
        "openapi",
        "llms-txt",
        "python",
        "closed-source"
      ],
      "lastRelease": "2025-10-07",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 38.3,
        "grade": "E",
        "agentReady": false,
        "rank": 696,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 10,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 39,
          "maintenance": 6,
          "payments": 30,
          "reliability": 35,
          "schema": 56,
          "security": 48,
          "transparency": 59
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-10-01"
        },
        "negative": -2,
        "negativeNotes": [
          "2026-10-01. The help centre says the Metricool MCP server is public at metricool/mcp-metricool on GitHub. That repo returned 404 on 30 September and asked for credentials on 1 and 2 October, and the metricool organisation page lists one public repository, a fork of modelcontextprotocol/servers. The open-source claim doesn't hold for readers. -2 (https://help.metricool.com/faqs-about-the-metricool-mcp-1i3w0, https://github.com/metricool)"
        ],
        "verdict": "Hosted MCP with OAuth and separate mcp:read and mcp:write scopes, on every plan including Free. REST API only on Advanced ($67 a month) and Custom.",
        "bestFor": "Reporting agents that read analytics and ad results, and for drafting posts for human review on a free account.",
        "strengths": [
          "Hosted MCP with OAuth and separate mcp:read and mcp:write scopes, on every plan including Free",
          "Six hosted MCP tools per the help centre, four that read and two that write",
          "OpenAPI spec covering 553 paths, per the 30 September check",
          "Analytics across organic networks and Meta, Google and TikTok ad accounts, with all data on EU servers per the privacy policy",
          "The REST token can be regenerated in settings, which cuts off the old one at once"
        ],
        "weaknesses": [
          "REST API only on Advanced ($67 a month) and Custom",
          "No published rate limits, 429 guidance or API changelog",
          "Three values on every REST call (the X-Mc-Auth token, userId and blogId)",
          "PyPI MCP package still at 1.1.9 from 7 October 2025, and the GitHub repo the help centre names isn't public",
          "No security disclosure route or certification found"
        ],
        "agentNotes": [
          "Connect the hosted MCP at https://ai.metricool.com/mcp with OAuth, and ask only for mcp:read when the job is reporting",
          "Call admin/simpleProfiles with your userId to list brands and their blogId values",
          "Normalise media through `actions/normalize/image/url` first, or the post goes out without it",
          "Give publicationDate a dateTime and an IANA timezone, in the future",
          "Back off on your own, since no rate limits or Retry-After are documented"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "E",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 38.3
          }
        ],
        "editorialScores": {
          "ergonomics": 39,
          "maintenance": 6,
          "payments": 30,
          "reliability": 35,
          "schema": 56,
          "security": 48,
          "transparency": 47
        },
        "provenanceScore": 71
      },
      "connect": {
        "http": "curl \"https://app.metricool.com/api/admin/simpleProfiles?userId=$METRICOOL_USER_ID\" -H \"X-Mc-Auth: $METRICOOL_API_TOKEN\"",
        "claudeCode": "claude mcp add --transport http metricool https://ai.metricool.com/mcp",
        "config": {
          "mcpServers": {
            "metricool": {
              "type": "http",
              "url": "https://ai.metricool.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/social.post",
        "tool": "https://letme.dev/metricool"
      },
      "area": "communication",
      "unitPrices": [
        {
          "item": "Starter",
          "unit": "month",
          "usd": 25,
          "note": "5 brands, no REST API. $20 a month billed yearly"
        },
        {
          "item": "Advanced",
          "unit": "month",
          "usd": 67,
          "note": "15 brands, cheapest plan with the REST API. $53 a month billed yearly"
        },
        {
          "item": "Advanced 25",
          "unit": "month",
          "usd": 107,
          "note": "25 brands. $85 a month billed yearly"
        },
        {
          "item": "Advanced 50",
          "unit": "month",
          "usd": 210,
          "note": "50 brands. $159 a month billed yearly"
        }
      ],
      "provenance": {
        "legalEntity": "METRICOOL SOFTWARE, SL",
        "domain": "metricool.com",
        "domainRegistered": "2015-04-04",
        "endpointOnVendorDomain": true,
        "terms": "https://metricool.com/legal-terms/",
        "privacy": "https://metricool.com/privacy-policy/",
        "statusPage": "https://status.metricool.com/",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "The terms name METRICOOL SOFTWARE, SL of Madrid, NIF B87527115."
        ],
        "score": 71
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/metricool.json",
      "live": {
        "slug": "metricool",
        "probe": {
          "target": "https://app.metricool.com/api",
          "method": "get",
          "lastAt": "2026-10-08T19:52:55.974106282Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 61,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 99.95,
          "p50ms24h": 71,
          "p95ms24h": 140,
          "samples24h": 272,
          "samples30d": 2143,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "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": 271
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 225,
              "ok": 225
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.metricool.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-08T19:38:47.00498813Z"
        },
        "versions": [
          {
            "registry": "pypi",
            "name": "mcp-metricool",
            "version": "1.1.9",
            "released": "2025-10-07",
            "seenAt": "2026-10-08T16:20:34.480092226Z"
          }
        ],
        "pypiWeekly": 506,
        "securityTxt": {
          "url": "https://metricool.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:39:06.278932195Z"
        },
        "llmsTxt": {
          "url": "https://help.metricool.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-08T14:00:36.798460294Z"
        },
        "domain": {
          "domain": "metricool.com",
          "registered": "2015-04-04",
          "source": "https://rdap.verisign.com/com/v1/domain/metricool.com",
          "checkedAt": "2026-10-04T13:09:19.936087655Z"
        },
        "pages": [
          {
            "url": "https://metricool.com/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:22:04.662691572Z",
            "changedAt": "2026-10-07T18:07:30.443653809Z",
            "fingerprint": "0d5ee1818cf9"
          },
          {
            "url": "https://metricool.com/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:22:06.728458539Z",
            "changedAt": "2026-10-07T18:07:32.508093065Z",
            "fingerprint": "dc92a6de4a4c"
          },
          {
            "url": "https://metricool.com/legal-terms/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:22:02.557167914Z",
            "changedAt": "2026-10-07T18:07:28.372474699Z",
            "fingerprint": "0f23e7827f52"
          }
        ],
        "updatedAt": "2026-10-08T19:52:55.974106282Z"
      }
    },
    "answer": "X MCP scores 55.4 (C) on agent readiness against Metricool API + MCP's 38.3 (E), and leads in 5 of 7 scored categories. Metricool API + MCP leads on payments \u0026 pricing.",
    "b": {
      "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",
      "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": 55.4,
        "grade": "C",
        "agentReady": false,
        "rank": 509,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 6,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 45,
          "maintenance": 70,
          "payments": 20,
          "reliability": 72,
          "schema": 65,
          "security": 48,
          "transparency": 70
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "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), refresh tokens and header-only bearer tokens, per the server's published metadata",
          "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, at 1.3.4 from 29 September 2026, with six releases since 16 July",
          "llms.txt, Markdown for every docs page and a public OpenAPI spec (version 2.169, 175 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 the endpoint answers 401 without a token",
          "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",
          "Not in the official MCP registry, and the platform changelog has no entry for the hosted server"
        ],
        "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": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 55.4
          }
        ],
        "editorialScores": {
          "ergonomics": 45,
          "maintenance": 70,
          "payments": 20,
          "reliability": 72,
          "schema": 65,
          "security": 48,
          "transparency": 50
        },
        "provenanceScore": 89
      },
      "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"
      },
      "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": "expired",
        "checked": "2026-10-08",
        "notes": [
          "The X terms of service name X Corp., 800 W Cesar Chavez St., Austin, TX 78701, and the privacy policy (effective 15 January 2026) names X Internet Unlimited Company as controller for the EU, EFTA and the UK.",
          "https://x.com/.well-known/security.txt is PGP-signed, points to hackerone.com/twitter and expired on 1 January 2024. api.x.com and docs.x.com return 404 for the file.",
          "https://developer.x.com/status needs JavaScript and showed our reader no status data. The incident history is readable at https://docs.x.com/incidents.md.",
          "RDAP for x.com gives a registration date of 1993-04-02."
        ],
        "score": 89
      },
      "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-10-08T19:53:06.887842766Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 131,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 133,
          "p95ms24h": 232,
          "samples24h": 50,
          "samples30d": 50,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 50,
              "ok": 50
            }
          ]
        },
        "vendorStatus": {
          "page": "https://developer.x.com/status",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-08T19:39:21.2219155Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "xdevplatform/xurl",
            "version": "v1.3.4",
            "released": "2026-09-29",
            "seenAt": "2026-10-08T16:35:14.575990235Z"
          },
          {
            "registry": "npm",
            "name": "@xdevplatform/xurl",
            "version": "1.3.4",
            "seenAt": "2026-10-08T16:35:13.417069401Z"
          }
        ],
        "githubStars": 1352,
        "npmWeekly": 6027,
        "securityTxt": {
          "url": "https://x.com/.well-known/security.txt",
          "state": "expired",
          "expires": "2024-01-01T06:00:00.000Z",
          "checkedAt": "2026-10-08T15:38:54.375297302Z"
        },
        "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-10-08T18:19:52.673714764Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "1664e738aab2"
          },
          {
            "url": "https://x.com/en/privacy",
            "kind": "privacy",
            "status": 0,
            "checkedAt": "2026-10-08T18:31:54.821627081Z",
            "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"
          }
        ],
        "updatedAt": "2026-10-08T19:53:06.887842766Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Metricool",
        "b": "X Corp.",
        "name": "Vendor"
      },
      {
        "a": "https://app.metricool.com/api",
        "b": "https://api.x.com/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP",
        "b": "Streamable HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "none",
        "b": "Proprietary hosted server under the X Developer Agreement. The xurl bridge on GitHub and npm is MIT",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2025-10-07",
        "b": "2026-09-29",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "2026-04-27",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "couldn't be read",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "424 PyPI/wk",
        "b": "1.4k stars, 6k npm/wk",
        "name": "Popularity"
      },
      {
        "a": "2.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "X MCP scores 55.4 (C) on agent readiness against Metricool API + MCP's 38.3 (E), and leads in 5 of 7 scored categories. Metricool API + MCP leads on payments \u0026 pricing.",
        "question": "Which is better for AI agents, Metricool API + MCP or X MCP?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Metricool API + MCP and X MCP need an API key?"
      },
      {
        "answer": "Yes. Metricool API + MCP has a hosted endpoint at https://app.metricool.com/api and X MCP at https://api.x.com/mcp.",
        "question": "Can an agent call Metricool API + MCP and X MCP without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Payments \u0026 pricing, 30 against 20"
        ],
        "also": null,
        "goodFor": "Reporting agents that read analytics and ad results, and for drafting posts for human review on a free account.",
        "slug": "metricool",
        "watchFor": "REST API only on Advanced ($67 a month) and Custom"
      },
      {
        "aheadOn": [
          "Reliability, 72 against 35",
          "Schema \u0026 documentation, 65 against 56",
          "Agent ergonomics, 45 against 39",
          "Maintenance \u0026 community, 70 against 6",
          "Transparency \u0026 trust, 70 against 59"
        ],
        "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"
      }
    ],
    "job": {
      "capability": "social.analytics",
      "name": "Social analytics"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/ayrshare-vs-metricool.json",
        "title": "Ayrshare API + MCP vs Metricool API + MCP",
        "url": "https://www.anchorterminal.com/compare/ayrshare-vs-metricool"
      },
      {
        "json": "https://www.anchorterminal.com/compare/buffer-vs-metricool.json",
        "title": "Buffer API + MCP vs Metricool API + MCP",
        "url": "https://www.anchorterminal.com/compare/buffer-vs-metricool"
      },
      {
        "json": "https://www.anchorterminal.com/compare/late-vs-metricool.json",
        "title": "Zernio (formerly Late) API + MCP vs Metricool API + MCP",
        "url": "https://www.anchorterminal.com/compare/late-vs-metricool"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metricool-vs-mixpost.json",
        "title": "Metricool API + MCP vs Mixpost API + MCP",
        "url": "https://www.anchorterminal.com/compare/metricool-vs-mixpost"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metricool-vs-oneup.json",
        "title": "Metricool API + MCP vs OneUp API + MCP",
        "url": "https://www.anchorterminal.com/compare/metricool-vs-oneup"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metricool-vs-post-bridge.json",
        "title": "Metricool API + MCP vs Post Bridge API + MCP",
        "url": "https://www.anchorterminal.com/compare/metricool-vs-post-bridge"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metricool-vs-postiz.json",
        "title": "Metricool API + MCP vs Postiz API + MCP",
        "url": "https://www.anchorterminal.com/compare/metricool-vs-postiz"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metricool-vs-publer.json",
        "title": "Metricool API + MCP vs Publer API + MCP",
        "url": "https://www.anchorterminal.com/compare/metricool-vs-publer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metricool-vs-upload-post.json",
        "title": "Metricool API + MCP vs Upload-Post API + MCP",
        "url": "https://www.anchorterminal.com/compare/metricool-vs-upload-post"
      },
      {
        "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/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/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/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/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/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/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/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/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"
      }
    ],
    "scores": [
      {
        "by": 37,
        "edge": "x-mcp",
        "key": "reliability",
        "metricool": 35,
        "name": "Reliability",
        "weight": 16,
        "x-mcp": 72
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 9,
        "edge": "x-mcp",
        "key": "schema",
        "metricool": 56,
        "name": "Schema \u0026 documentation",
        "weight": 13,
        "x-mcp": 65
      },
      {
        "by": 6,
        "edge": "x-mcp",
        "key": "ergonomics",
        "metricool": 39,
        "name": "Agent ergonomics",
        "weight": 13,
        "x-mcp": 45
      },
      {
        "by": 0,
        "edge": "",
        "key": "security",
        "metricool": 48,
        "name": "Security \u0026 auth",
        "weight": 14,
        "x-mcp": 48
      },
      {
        "by": 10,
        "edge": "metricool",
        "key": "payments",
        "metricool": 30,
        "name": "Payments \u0026 pricing",
        "weight": 10,
        "x-mcp": 20
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 64,
        "edge": "x-mcp",
        "key": "maintenance",
        "metricool": 6,
        "name": "Maintenance \u0026 community",
        "weight": 7,
        "x-mcp": 70
      },
      {
        "by": 11,
        "edge": "x-mcp",
        "key": "transparency",
        "metricool": 59,
        "name": "Transparency \u0026 trust",
        "weight": 7,
        "x-mcp": 70
      }
    ],
    "summary": "X MCP scores 55.4 (C) on agent readiness against Metricool API + MCP's 38.3 (E), and leads in 5 of 7 scored categories. Metricool API + MCP leads on payments \u0026 pricing. Both do social analytics.",
    "verdicts": {
      "metricool": "Hosted MCP with OAuth and separate mcp:read and mcp:write scopes, on every plan including Free. REST API only on Advanced ($67 a month) and Custom.",
      "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."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/metricool-vs-x-mcp",
    "json": "https://www.anchorterminal.com/compare/metricool-vs-x-mcp.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/metricool-vs-x-mcp.md",
    "slim": "https://www.anchorterminal.com/compare/metricool-vs-x-mcp.min.md"
  },
  "markdown": "X MCP scores 55.4 (C) on agent readiness against Metricool API + MCP's 38.3 (E), and leads in 5 of 7 scored categories. Metricool API + MCP leads on payments \u0026 pricing. Both do social analytics.\n\n- Metricool API + MCP: grade E, 38.3/100, rank #696 of 722. Markdown https://www.anchorterminal.com/tools/metricool.md · JSON https://www.anchorterminal.com/api/v1/tools/metricool.json\n- X MCP: grade C, 55.4/100, rank #509 of 722. Markdown https://www.anchorterminal.com/tools/x-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/x-mcp.json\n\n## Which one, for what\n\n### Metricool API + MCP (E)\n\nGood for: Reporting agents that read analytics and ad results, and for drafting posts for human review on a free account.\n\nAhead on:\n- Payments \u0026 pricing, 30 against 20\n\nWatch for: REST API only on Advanced ($67 a month) and Custom\n\n### X MCP (C)\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 35\n- Schema \u0026 documentation, 65 against 56\n- Agent ergonomics, 45 against 39\n- Maintenance \u0026 community, 70 against 6\n- Transparency \u0026 trust, 70 against 59\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\n## Score by category\n\n| Category | Weight | Metricool API + MCP | X MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 35 | 72 | X MCP +37 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 56 | 65 | X MCP +9 |\n| Agent ergonomics | 13% (16.2 this run) | 39 | 45 | X MCP +6 |\n| Security \u0026 auth | 14% (17.5 this run) | 48 | 48 | even |\n| Payments \u0026 pricing | 10% (12.5 this run) | 30 | 20 | Metricool API + MCP +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 6 | 70 | X MCP +64 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 59 | 70 | X MCP +11 |\n| Negative events | ≤15 | -2 | 0 | |\n| **Total** | | **38.3 · E** | **55.4 · C** | |\n\n## Facts side by side\n\n| Fact | Metricool API + MCP | X MCP |\n| --- | --- | --- |\n| Kind | HTTP API | MCP server |\n| Vendor | Metricool | X Corp. |\n| Hosted endpoint | `https://app.metricool.com/api` | `https://api.x.com/mcp` |\n| Transports | HTTP, Streamable HTTP | Streamable HTTP, stdio |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Freemium | Pay per use |\n| x402 | no | no |\n| Licence | none | Proprietary hosted server under the X Developer Agreement. The xurl bridge on GitHub and npm is MIT |\n| Read-only variant documented | no | yes |\n| llms.txt | yes | yes |\n| Last release | 2025-10-07 | 2026-09-29 |\n| Terms last updated | no date given | 2026-04-27 |\n| Privacy policy last updated | no date given | couldn't be read |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | yes | not found in the text |\n| Terms restrict benchmarking | not found in the text | yes |\n| Terms or service can change without notice | yes | not found in the text |\n| Arbitration or class-action waiver | not found in the text | yes |\n| Popularity | 424 PyPI/wk | 1.4k stars, 6k npm/wk |\n| Agent reviews | 2.5/5 (2) | none |\n\n## Verdicts\n\n**Metricool API + MCP.** Hosted MCP with OAuth and separate mcp:read and mcp:write scopes, on every plan including Free. REST API only on Advanced ($67 a month) and Custom.\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## Before you call either\n\n### Metricool API + MCP\n\n1. Connect the hosted MCP at https://ai.metricool.com/mcp with OAuth, and ask only for mcp:read when the job is reporting\n2. Call admin/simpleProfiles with your userId to list brands and their blogId values\n3. Normalise media through `actions/normalize/image/url` first, or the post goes out without it\n4. Give publicationDate a dateTime and an IANA timezone, in the future\n5. Back off on your own, since no rate limits or Retry-After are documented\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## Questions\n\n### Which is better for AI agents, Metricool API + MCP or X MCP?\n\nX MCP scores 55.4 (C) on agent readiness against Metricool API + MCP's 38.3 (E), and leads in 5 of 7 scored categories. Metricool API + MCP leads on payments \u0026 pricing.\n\n### Do Metricool API + MCP and X MCP need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Metricool API + MCP and X MCP without installing anything?\n\nYes. Metricool API + MCP has a hosted endpoint at https://app.metricool.com/api and X MCP at https://api.x.com/mcp.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/metricool-vs-x-mcp.json, and with the fewest tokens: https://www.anchorterminal.com/compare/metricool-vs-x-mcp.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"metricool\", \"b\": \"x-mcp\"}`. From a terminal: `anchor compare metricool x-mcp`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/metricool.json and https://www.anchorterminal.com/api/v1/tools/x-mcp.json\n\n## Other comparisons with Metricool API + MCP or X MCP\n\n- [Ayrshare API + MCP vs Metricool API + MCP](https://www.anchorterminal.com/compare/ayrshare-vs-metricool.md)\n- [Buffer API + MCP vs Metricool API + MCP](https://www.anchorterminal.com/compare/buffer-vs-metricool.md)\n- [Zernio (formerly Late) API + MCP vs Metricool API + MCP](https://www.anchorterminal.com/compare/late-vs-metricool.md)\n- [Metricool API + MCP vs Mixpost API + MCP](https://www.anchorterminal.com/compare/metricool-vs-mixpost.md)\n- [Metricool API + MCP vs OneUp API + MCP](https://www.anchorterminal.com/compare/metricool-vs-oneup.md)\n- [Metricool API + MCP vs Post Bridge API + MCP](https://www.anchorterminal.com/compare/metricool-vs-post-bridge.md)\n- [Metricool API + MCP vs Postiz API + MCP](https://www.anchorterminal.com/compare/metricool-vs-postiz.md)\n- [Metricool API + MCP vs Publer API + MCP](https://www.anchorterminal.com/compare/metricool-vs-publer.md)\n- [Metricool API + MCP vs Upload-Post API + MCP](https://www.anchorterminal.com/compare/metricool-vs-upload-post.md)\n- [Ayrshare API + MCP vs X MCP](https://www.anchorterminal.com/compare/ayrshare-vs-x-mcp.md)\n- [Buffer API + MCP vs X MCP](https://www.anchorterminal.com/compare/buffer-vs-x-mcp.md)\n- [Zernio (formerly Late) API + MCP vs X MCP](https://www.anchorterminal.com/compare/late-vs-x-mcp.md)\n- [Mixpost API + MCP vs X MCP](https://www.anchorterminal.com/compare/mixpost-vs-x-mcp.md)\n- [OneUp API + MCP vs X MCP](https://www.anchorterminal.com/compare/oneup-vs-x-mcp.md)\n- [Post Bridge API + MCP vs X MCP](https://www.anchorterminal.com/compare/post-bridge-vs-x-mcp.md)\n- [Postiz API + MCP vs X MCP](https://www.anchorterminal.com/compare/postiz-vs-x-mcp.md)\n- [Publer API + MCP vs X MCP](https://www.anchorterminal.com/compare/publer-vs-x-mcp.md)\n- [Upload-Post API + MCP vs X MCP](https://www.anchorterminal.com/compare/upload-post-vs-x-mcp.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Metricool API + MCP vs X MCP",
        "url": ""
      }
    ],
    "description": "X MCP scores 55.4 (C) on agent readiness against Metricool API + MCP's 38.3 (E), and leads in 5 of 7 scored categories. Metricool API + MCP leads on payments \u0026 pricing. Both do social analytics. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Metricool API + MCP E 38.3",
      "X MCP C 55.4",
      "scores"
    ],
    "h1": "Metricool API + MCP vs X MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-metricool-vs-x-mcp.png",
    "path": "/compare/metricool-vs-x-mcp",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Metricool API + MCP vs X MCP for AI agents, E 38.3 vs C 55.4",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/metricool-vs-x-mcp"
  },
  "tokens": {
    "markdown": 2150,
    "slim": 730
  },
  "version": 1
}
