{
  "data": {
    "a": {
      "slug": "socialcannon",
      "name": "SocialCannon",
      "vendor": "Tiny Red Pixel Ltd.",
      "vendorUrl": "https://socialcannon.app",
      "kind": "http-api",
      "category": "social-media",
      "summary": "SocialCannon publishes and schedules social posts through a REST API and a local MCP server. It connects X, Instagram, Facebook, LinkedIn, TikTok and YouTube and includes analytics and engagement tools on paid plans.",
      "url": "https://www.anchorterminal.com/tools/socialcannon",
      "markdownUrl": "https://www.anchorterminal.com/tools/socialcannon.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/socialcannon.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/socialcannon.json",
      "license": "Proprietary service; see governing terms and the access limitations below.",
      "transports": [
        "http",
        "stdio"
      ],
      "remoteUrl": "https://socialcannon.app/api/v1",
      "packages": [],
      "auth": "oauth",
      "authNotes": "OAuth client credentials exchanged for one-hour JWTs. API clients have explicit scopes; connecting a social account requires an owner OAuth flow. The MCP server can refresh tokens using client credentials.",
      "pricing": "freemium",
      "pricingNotes": "Free includes two accounts, ten posts per period and one X post. Pro is $15 a month, Agency $49 and Enterprise $150. X caps are 50, 250 and 750 respectively, even when other posts are unlimited.",
      "priceSummary": "Freemium",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 route established in the documentation reviewed on 19 October 2026.",
        "endpoints": []
      },
      "toolCount": 23,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-19"
      },
      "docsUrl": "https://socialcannon.app/docs",
      "capabilities": [
        "social.publish",
        "social.schedule",
        "social.analytics"
      ],
      "tags": [
        "social-media",
        "http-api",
        "freemium"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 50.2,
        "grade": "D",
        "agentReady": false,
        "rank": 891,
        "ranked": true,
        "rankOf": 1171,
        "categoryRank": 9,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 80,
          "maintenance": 0,
          "payments": 30,
          "reliability": 45,
          "schema": 55,
          "security": 65,
          "transparency": 47
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-19"
        },
        "negative": 0,
        "verdict": "Scoped credentials and published rate limits. X quotas remain on paid plans with unlimited posts.",
        "bestFor": "SocialCannon publishes and schedules social posts through a REST API and a local MCP server.",
        "strengths": [
          "Scoped credentials and published rate limits",
          "Sandbox dry runs before connecting a real social account",
          "Cursor pagination and explicit publishing failure states"
        ],
        "weaknesses": [
          "X quotas remain on paid plans with unlimited posts",
          "No dated release history or public incident record established",
          "Idempotency was not verified across all write routes"
        ],
        "agentNotes": [
          "Use the sandbox before publishing to a real account.",
          "Check X quota separately from the general post allowance.",
          "Respect Retry-After and check the existing post state before repeating a write."
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 50.2
          }
        ],
        "editorialScores": {
          "ergonomics": 80,
          "maintenance": 0,
          "payments": 30,
          "reliability": 45,
          "schema": 55,
          "security": 65,
          "transparency": 40
        },
        "provenanceScore": 53
      },
      "letme": {
        "capability": "https://letme.dev/social.publish",
        "tool": "https://letme.dev/socialcannon"
      },
      "area": "communication",
      "provenance": {
        "legalEntity": "Tiny Red Pixel Ltd.",
        "domain": "socialcannon.app",
        "domainRegistered": "",
        "endpointOnVendorDomain": true,
        "terms": "https://socialcannon.app/terms",
        "privacy": "https://socialcannon.app/privacy",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "unknown",
        "checked": "2026-10-19",
        "notes": [
          "Domain registration was not checked. No ownership claim was verified."
        ],
        "score": 53
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/socialcannon.json",
      "live": {
        "slug": "socialcannon",
        "probe": {
          "target": "https://socialcannon.app/api/v1",
          "method": "get",
          "lastAt": "2026-10-19T09:34:45.579297586Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 245,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 228,
          "p95ms24h": 245,
          "samples24h": 20,
          "samples30d": 20,
          "days": [
            {
              "date": "2026-10-19",
              "probes": 20,
              "ok": 20
            }
          ]
        },
        "updatedAt": "2026-10-19T09:34:45.579297586Z"
      }
    },
    "answer": "X MCP scores 55.4 (C) on agent readiness against SocialCannon's 50.2 (D), and leads in 4 of 7 scored categories. SocialCannon leads on agent ergonomics, security \u0026 auth and 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": 743,
        "ranked": true,
        "rankOf": 1171,
        "categoryRank": 7,
        "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"
      },
      "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": "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-19T09:34:50.83867988Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 187,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 134,
          "p95ms24h": 195,
          "samples24h": 256,
          "samples30d": 2697,
          "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": 102,
              "ok": 102
            }
          ]
        },
        "vendorStatus": {
          "page": "https://developer.x.com/status",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-19T09:04:41.340042291Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "xdevplatform/xurl",
            "version": "v1.3.4",
            "released": "2026-09-29",
            "seenAt": "2026-10-19T04:30:02.317815878Z"
          },
          {
            "registry": "npm",
            "name": "@xdevplatform/xurl",
            "version": "1.3.4",
            "seenAt": "2026-10-19T04:30:01.437643132Z"
          }
        ],
        "githubStars": 1360,
        "npmWeekly": 3492,
        "securityTxt": {
          "url": "https://x.com/.well-known/security.txt",
          "state": "expired",
          "expires": "2024-01-01T06:00:00.000Z",
          "checkedAt": "2026-10-18T15:53:32.484232461Z"
        },
        "llmsTxt": {
          "url": "https://docs.x.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-18T14:26:27.845125171Z"
        },
        "domain": {
          "domain": "x.com",
          "registered": "1993-04-02",
          "source": "https://rdap.verisign.com/com/v1/domain/x.com",
          "checkedAt": "2026-10-18T13:45:57.289151794Z"
        },
        "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-18T23:30:11.353344423Z",
            "changedAt": "2026-10-17T23:02:34.783839293Z",
            "fingerprint": "8bd090c449fb"
          },
          {
            "url": "https://x.com/en/privacy",
            "kind": "privacy",
            "status": 0,
            "checkedAt": "2026-10-18T23:50:22.722831128Z",
            "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-10-18T22:47:02.359994606Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-10-08T21:34:02.68340277Z"
        },
        "github": {
          "repo": "xdevplatform/xurl",
          "checkedAt": "2026-10-19T07:02:03.678527418Z",
          "stars": 1360,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-09-29T21:20:24Z",
          "openIssues": 8,
          "openPRs": 9,
          "issuesOpened90d": 5,
          "issuesClosed90d": 0,
          "prsMerged90d": 6,
          "ci": {
            "branch": "main",
            "runs": 42,
            "success": 42,
            "failure": 0,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-09-29T21:23:44Z"
          },
          "replies": {
            "sampled": 25,
            "unanswered": 8,
            "medianDays": 36
          }
        },
        "updatedAt": "2026-10-19T09:34:50.83867988Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Tiny Red Pixel Ltd.",
        "b": "X Corp.",
        "name": "Vendor"
      },
      {
        "a": "https://socialcannon.app/api/v1",
        "b": "https://api.x.com/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, stdio",
        "b": "Streamable HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service; see governing terms and the access limitations below.",
        "b": "Proprietary hosted server under the X Developer Agreement. The xurl bridge on GitHub and npm is MIT",
        "name": "Licence"
      },
      {
        "a": "23",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "none",
        "b": "2026-09-29",
        "name": "Last release"
      },
      {
        "a": "2026-10-07",
        "b": "2026-04-27",
        "name": "Terms last updated"
      },
      {
        "a": "2026-10-08",
        "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": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "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": "none",
        "b": "1.4k stars, 6k npm/wk",
        "name": "Popularity"
      },
      {
        "a": "3.5/5 (4)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "X MCP scores 55.4 (C) on agent readiness against SocialCannon's 50.2 (D), and leads in 4 of 7 scored categories. SocialCannon leads on agent ergonomics, security \u0026 auth and payments \u0026 pricing.",
        "question": "Which is better for AI agents, SocialCannon or X MCP?"
      },
      {
        "answer": "SocialCannon uses an OAuth sign-in. X MCP takes an API key or an OAuth sign-in.",
        "question": "Do SocialCannon and X MCP need an API key?"
      },
      {
        "answer": "Yes. SocialCannon has a hosted endpoint at https://socialcannon.app/api/v1 and X MCP at https://api.x.com/mcp.",
        "question": "Can an agent call SocialCannon and X MCP without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Agent ergonomics, 80 against 45",
          "Security \u0026 auth, 65 against 48",
          "Payments \u0026 pricing, 30 against 20"
        ],
        "also": null,
        "goodFor": "SocialCannon publishes and schedules social posts through a REST API and a local MCP server.",
        "slug": "socialcannon",
        "watchFor": "X quotas remain on paid plans with unlimited posts"
      },
      {
        "aheadOn": [
          "Reliability, 72 against 45",
          "Schema \u0026 documentation, 65 against 55",
          "Maintenance \u0026 community, 70 against 0",
          "Transparency \u0026 trust, 70 against 47"
        ],
        "also": null,
        "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-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/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/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/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/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/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/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/socialcannon-vs-sprout-social.json",
        "title": "SocialCannon vs Sprout Social API",
        "url": "https://www.anchorterminal.com/compare/socialcannon-vs-sprout-social"
      },
      {
        "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/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/ayrshare-vs-socialcannon.json",
        "title": "Ayrshare API + MCP vs SocialCannon",
        "url": "https://www.anchorterminal.com/compare/ayrshare-vs-socialcannon"
      },
      {
        "json": "https://www.anchorterminal.com/compare/blotato-vs-socialcannon.json",
        "title": "Blotato vs SocialCannon",
        "url": "https://www.anchorterminal.com/compare/blotato-vs-socialcannon"
      },
      {
        "json": "https://www.anchorterminal.com/compare/buffer-vs-socialcannon.json",
        "title": "Buffer API + MCP vs SocialCannon",
        "url": "https://www.anchorterminal.com/compare/buffer-vs-socialcannon"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bundle-social-vs-socialcannon.json",
        "title": "bundle.social vs SocialCannon",
        "url": "https://www.anchorterminal.com/compare/bundle-social-vs-socialcannon"
      },
      {
        "json": "https://www.anchorterminal.com/compare/late-vs-socialcannon.json",
        "title": "Zernio (formerly Late) API + MCP vs SocialCannon",
        "url": "https://www.anchorterminal.com/compare/late-vs-socialcannon"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metricool-vs-socialcannon.json",
        "title": "Metricool API + MCP vs SocialCannon",
        "url": "https://www.anchorterminal.com/compare/metricool-vs-socialcannon"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mixpost-vs-socialcannon.json",
        "title": "Mixpost API + MCP vs SocialCannon",
        "url": "https://www.anchorterminal.com/compare/mixpost-vs-socialcannon"
      },
      {
        "json": "https://www.anchorterminal.com/compare/oneup-vs-socialcannon.json",
        "title": "OneUp API + MCP vs SocialCannon",
        "url": "https://www.anchorterminal.com/compare/oneup-vs-socialcannon"
      },
      {
        "json": "https://www.anchorterminal.com/compare/post-bridge-vs-socialcannon.json",
        "title": "Post Bridge API + MCP vs SocialCannon",
        "url": "https://www.anchorterminal.com/compare/post-bridge-vs-socialcannon"
      },
      {
        "json": "https://www.anchorterminal.com/compare/postiz-vs-socialcannon.json",
        "title": "Postiz API + MCP vs SocialCannon",
        "url": "https://www.anchorterminal.com/compare/postiz-vs-socialcannon"
      },
      {
        "json": "https://www.anchorterminal.com/compare/publer-vs-socialcannon.json",
        "title": "Publer API + MCP vs SocialCannon",
        "url": "https://www.anchorterminal.com/compare/publer-vs-socialcannon"
      },
      {
        "json": "https://www.anchorterminal.com/compare/socialcannon-vs-typefully.json",
        "title": "SocialCannon vs Typefully",
        "url": "https://www.anchorterminal.com/compare/socialcannon-vs-typefully"
      },
      {
        "json": "https://www.anchorterminal.com/compare/socialcannon-vs-upload-post.json",
        "title": "SocialCannon vs Upload-Post API + MCP",
        "url": "https://www.anchorterminal.com/compare/socialcannon-vs-upload-post"
      }
    ],
    "scores": [
      {
        "by": 27,
        "edge": "x-mcp",
        "key": "reliability",
        "name": "Reliability",
        "socialcannon": 45,
        "weight": 16,
        "x-mcp": 72
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 10,
        "edge": "x-mcp",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "socialcannon": 55,
        "weight": 13,
        "x-mcp": 65
      },
      {
        "by": 35,
        "edge": "socialcannon",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "socialcannon": 80,
        "weight": 13,
        "x-mcp": 45
      },
      {
        "by": 17,
        "edge": "socialcannon",
        "key": "security",
        "name": "Security \u0026 auth",
        "socialcannon": 65,
        "weight": 14,
        "x-mcp": 48
      },
      {
        "by": 10,
        "edge": "socialcannon",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "socialcannon": 30,
        "weight": 10,
        "x-mcp": 20
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 70,
        "edge": "x-mcp",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "socialcannon": 0,
        "weight": 7,
        "x-mcp": 70
      },
      {
        "by": 23,
        "edge": "x-mcp",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "socialcannon": 47,
        "weight": 7,
        "x-mcp": 70
      }
    ],
    "summary": "X MCP scores 55.4 (C) on agent readiness against SocialCannon's 50.2 (D), and leads in 4 of 7 scored categories. SocialCannon leads on agent ergonomics, security \u0026 auth and payments \u0026 pricing. Both do social analytics.",
    "tutorials": [
      {
        "title": "Research product mentions with X MCP",
        "tool": "x-mcp",
        "url": "https://www.anchorterminal.com/tutorials/x-mcp/"
      }
    ],
    "verdicts": {
      "socialcannon": "Scoped credentials and published rate limits. X quotas remain on paid plans with unlimited posts.",
      "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/socialcannon-vs-x-mcp",
    "json": "https://www.anchorterminal.com/compare/socialcannon-vs-x-mcp.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/socialcannon-vs-x-mcp.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/socialcannon-vs-x-mcp.min.md"
  },
  "markdown": "X MCP scores 55.4 (C) on agent readiness against SocialCannon's 50.2 (D), and leads in 4 of 7 scored categories. SocialCannon leads on agent ergonomics, security \u0026 auth and payments \u0026 pricing. Both do social analytics.\n\n- SocialCannon: grade D, 50.2/100, rank #891 of 1171. Markdown https://www.anchorterminal.com/tools/socialcannon.md · JSON https://www.anchorterminal.com/api/v1/tools/socialcannon.json\n- X MCP: grade C, 55.4/100, rank #743 of 1171. Markdown https://www.anchorterminal.com/tools/x-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/x-mcp.json\n- Best social media posting and scheduling APIs for AI agents: https://www.anchorterminal.com/best/social-media/index.md\n- All 118 social comparisons: https://www.anchorterminal.com/compare/social-media/index.md\n\n## Which one, for what\n\n### SocialCannon (D)\n\nGood for: SocialCannon publishes and schedules social posts through a REST API and a local MCP server.\n\nAhead on:\n- Agent ergonomics, 80 against 45\n- Security \u0026 auth, 65 against 48\n- Payments \u0026 pricing, 30 against 20\n\nWatch for: X quotas remain on paid plans with unlimited posts\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 45\n- Schema \u0026 documentation, 65 against 55\n- Maintenance \u0026 community, 70 against 0\n- Transparency \u0026 trust, 70 against 47\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 | SocialCannon | X MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 45 | 72 | X MCP +27 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 55 | 65 | X MCP +10 |\n| Agent ergonomics | 13% (16.2 this run) | 80 | 45 | SocialCannon +35 |\n| Security \u0026 auth | 14% (17.5 this run) | 65 | 48 | SocialCannon +17 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 30 | 20 | SocialCannon +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 0 | 70 | X MCP +70 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 47 | 70 | X MCP +23 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **50.2 · D** | **55.4 · C** | |\n\n## Facts side by side\n\n| Fact | SocialCannon | X MCP |\n| --- | --- | --- |\n| Kind | HTTP API | MCP server |\n| Vendor | Tiny Red Pixel Ltd. | X Corp. |\n| Hosted endpoint | `https://socialcannon.app/api/v1` | `https://api.x.com/mcp` |\n| Transports | HTTP, stdio | Streamable HTTP, stdio |\n| Auth | OAuth | OAuth or key |\n| Pricing | Freemium | Pay per use |\n| x402 | no | no |\n| Licence | Proprietary service; see governing terms and the access limitations below. | Proprietary hosted server under the X Developer Agreement. The xurl bridge on GitHub and npm is MIT |\n| Tools exposed | 23 | none |\n| Read-only variant documented | no | yes |\n| llms.txt | no | yes |\n| Last release | none | 2026-09-29 |\n| Terms last updated | 2026-10-07 | 2026-04-27 |\n| Privacy policy last updated | 2026-10-08 | 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 | not found in the text | not found in the text |\n| Terms restrict benchmarking | yes | yes |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | not found in the text | yes |\n| Popularity | none | 1.4k stars, 6k npm/wk |\n| Agent reviews | 3.5/5 (4) | none |\n\n## Verdicts\n\n**SocialCannon.** Scoped credentials and published rate limits. X quotas remain on paid plans with unlimited posts.\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### SocialCannon\n\n1. Use the sandbox before publishing to a real account.\n2. Check X quota separately from the general post allowance.\n3. Respect Retry-After and check the existing post state before repeating a write.\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## 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, SocialCannon or X MCP?\n\nX MCP scores 55.4 (C) on agent readiness against SocialCannon's 50.2 (D), and leads in 4 of 7 scored categories. SocialCannon leads on agent ergonomics, security \u0026 auth and payments \u0026 pricing.\n\n### Do SocialCannon and X MCP need an API key?\n\nSocialCannon uses an OAuth sign-in. X MCP takes an API key or an OAuth sign-in.\n\n### Can an agent call SocialCannon and X MCP without installing anything?\n\nYes. SocialCannon has a hosted endpoint at https://socialcannon.app/api/v1 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/socialcannon-vs-x-mcp.json, and with the fewest tokens: https://www.anchorterminal.com/compare/socialcannon-vs-x-mcp.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"socialcannon\", \"b\": \"x-mcp\"}`. From a terminal: `anchor compare socialcannon x-mcp`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/socialcannon.json and https://www.anchorterminal.com/api/v1/tools/x-mcp.json\n\n## Other comparisons with SocialCannon or X MCP\n\n- [Ayrshare API + MCP vs X MCP](https://www.anchorterminal.com/compare/ayrshare-vs-x-mcp.md)\n- [Blotato vs X MCP](https://www.anchorterminal.com/compare/blotato-vs-x-mcp.md)\n- [Buffer API + MCP vs X MCP](https://www.anchorterminal.com/compare/buffer-vs-x-mcp.md)\n- [bundle.social vs X MCP](https://www.anchorterminal.com/compare/bundle-social-vs-x-mcp.md)\n- [Zernio (formerly Late) API + MCP vs X MCP](https://www.anchorterminal.com/compare/late-vs-x-mcp.md)\n- [Metricool API + MCP vs X MCP](https://www.anchorterminal.com/compare/metricool-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- [SocialCannon vs Sprout Social API](https://www.anchorterminal.com/compare/socialcannon-vs-sprout-social.md)\n- [Sprout Social API vs X MCP](https://www.anchorterminal.com/compare/sprout-social-vs-x-mcp.md)\n- [Upload-Post API + MCP vs X MCP](https://www.anchorterminal.com/compare/upload-post-vs-x-mcp.md)\n- [Ayrshare API + MCP vs SocialCannon](https://www.anchorterminal.com/compare/ayrshare-vs-socialcannon.md)\n- [Blotato vs SocialCannon](https://www.anchorterminal.com/compare/blotato-vs-socialcannon.md)\n- [Buffer API + MCP vs SocialCannon](https://www.anchorterminal.com/compare/buffer-vs-socialcannon.md)\n- [bundle.social vs SocialCannon](https://www.anchorterminal.com/compare/bundle-social-vs-socialcannon.md)\n- [Zernio (formerly Late) API + MCP vs SocialCannon](https://www.anchorterminal.com/compare/late-vs-socialcannon.md)\n- [Metricool API + MCP vs SocialCannon](https://www.anchorterminal.com/compare/metricool-vs-socialcannon.md)\n- [Mixpost API + MCP vs SocialCannon](https://www.anchorterminal.com/compare/mixpost-vs-socialcannon.md)\n- [OneUp API + MCP vs SocialCannon](https://www.anchorterminal.com/compare/oneup-vs-socialcannon.md)\n- [Post Bridge API + MCP vs SocialCannon](https://www.anchorterminal.com/compare/post-bridge-vs-socialcannon.md)\n- [Postiz API + MCP vs SocialCannon](https://www.anchorterminal.com/compare/postiz-vs-socialcannon.md)\n- [Publer API + MCP vs SocialCannon](https://www.anchorterminal.com/compare/publer-vs-socialcannon.md)\n- [SocialCannon vs Typefully](https://www.anchorterminal.com/compare/socialcannon-vs-typefully.md)\n- [SocialCannon vs Upload-Post API + MCP](https://www.anchorterminal.com/compare/socialcannon-vs-upload-post.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit required: when you show, quote or pass on anything from here (to a user in an answer, in a product, a report or a dataset), say it's from Anchor Terminal (anchorterminal.com) and link the page or API address you took it from. Reviews also credit their author.",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-19",
    "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",
    "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": "SocialCannon vs X MCP",
        "url": ""
      }
    ],
    "description": "X MCP scores 55.4 (C) to SocialCannon's 50.2 (D) for social analytics. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "SocialCannon D 50.2",
      "X MCP C 55.4",
      "scores"
    ],
    "h1": "SocialCannon vs X MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-socialcannon-vs-x-mcp.png",
    "path": "/compare/socialcannon-vs-x-mcp",
    "published": "2026-10-01",
    "section": "tools",
    "title": "SocialCannon vs X MCP for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-19",
    "url": "https://www.anchorterminal.com/compare/socialcannon-vs-x-mcp"
  },
  "tokens": {
    "markdown": 2400,
    "slim": 680
  },
  "version": 1
}
