{
  "data": {
    "a": {
      "slug": "mixpost",
      "name": "Mixpost API + MCP",
      "vendor": "Mixpost (Inovector)",
      "vendorUrl": "https://mixpost.app",
      "kind": "http-api",
      "category": "social-media",
      "summary": "Self-hosted Laravel package for social scheduling, with a REST API and a built-in MCP server on your own instance.",
      "url": "https://www.anchorterminal.com/tools/mixpost",
      "markdownUrl": "https://www.anchorterminal.com/tools/mixpost.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/mixpost.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/mixpost.json",
      "repo": "https://github.com/inovector/mixpost",
      "license": "proprietary (Pro and Enterprise, which carry the API and MCP), MIT (Lite)",
      "transports": [
        "http",
        "streamable-http"
      ],
      "packages": [],
      "auth": "pat",
      "authNotes": "Personal access token created under Access Tokens in the dashboard, sent as a Bearer header to both the REST API and the MCP endpoint. Endpoints live on your own domain under /api and /mcp.",
      "pricing": "paid",
      "pricingNotes": "Lite is free and MIT-licensed but has no API, MCP or webhooks, and publishes only to Facebook Pages, X and Mastodon. Pro is $299 one-off per domain with a year of updates and includes the API, MCP and webhooks. Enterprise is $1,199 one-off and adds billing and customer management for running your own SaaS. Both keep a perpetual fallback licence. Mixpost Cloud is hosted Pro billed per workspace, with prices not shown in the fetched page (https://mixpost.app/pricing).",
      "priceSummary": "Paid",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402 or per-call payment in the docs, OpenAPI spec or pricing (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": 30,
      "popularity": {
        "githubStars": 3747,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://docs.mixpost.app/api/",
      "openapi": "https://docs.mixpost.app/assets/files/mixpost-6945bca1a1adae71a614b0e83e1dc5bc.yaml",
      "capabilities": [
        "social.post",
        "social.schedule",
        "social.analytics",
        "social.media-upload"
      ],
      "tags": [
        "open-source",
        "local",
        "self-hosted",
        "hosted",
        "mcp",
        "openapi",
        "webhooks"
      ],
      "lastRelease": "2026-09-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 49.5,
        "grade": "D",
        "agentReady": false,
        "rank": 529,
        "ranked": true,
        "rankOf": 629,
        "categoryRank": 7,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 53,
          "maintenance": 63,
          "payments": 10,
          "reliability": 70,
          "schema": 76,
          "security": 43,
          "transparency": 48
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": -4,
        "negativeNotes": [
          "2026-02-24. Issue #194 reports path traversal in the system log download and clear endpoints of Mixpost Lite. On 1 October 2026 the main branch still builds the path as the log directory plus the user-supplied filename (src/Support/SystemLogs.php, getFilePath), so a signed-in user can read or truncate files outside the logs folder. No fix or advisory. We couldn't check whether Pro shares the code. -4 (https://github.com/inovector/mixpost/issues/194)"
        ],
        "verdict": "One-off $299 licence with unlimited accounts and members, and a perpetual fallback licence. No API or MCP in the free Lite edition.",
        "bestFor": "Agencies and teams that must keep tokens and content on their own servers and want a one-off price.",
        "strengths": [
          "One-off $299 licence with unlimited accounts and members, and a perpetual fallback licence",
          "OpenAPI 3.1 spec and a 30-tool MCP server, with every tool labelled read, write or destructive in the docs",
          "Data and tokens stay on your own infrastructure",
          "Four Pro releases between 26 and 30 September 2026, with v7.0.0 flagged as breaking",
          "Tokens can expire after 7 to 90 days or on a set date, and a Viewer-role token can only read"
        ],
        "weaknesses": [
          "No API or MCP in the free Lite edition",
          "Tokens carry the full authority of the user who created them, with no scopes",
          "Public path-traversal (24 February 2026) and XSS (17 June 2026) reports on the Lite repo, still open with no advisory",
          "No rate limiting of its own, no idempotency keys and no status page for Cloud",
          "Self-hosting needs your own developer app approved by each network"
        ],
        "agentNotes": [
          "Call list-workspaces first. Workspace endpoints sit under /api/{workspaceUuid}",
          "Check MIXPOST_CORE_PATH. It's empty by default from Pro v7 but defaults to mixpost in older versions and Lite",
          "Create the token as a Viewer-role user when the agent only needs to read",
          "Use unschedule-post rather than delete-post when a person wants a post pulled back to draft",
          "Expect HTTP 422 with an errors.limit entry when a Cloud plan limit is hit"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 49.5
          }
        ],
        "editorialScores": {
          "ergonomics": 53,
          "maintenance": 63,
          "payments": 10,
          "reliability": 70,
          "schema": 76,
          "security": 43,
          "transparency": 45
        },
        "provenanceScore": 50
      },
      "connect": {
        "http": "curl https://$MIXPOST_HOST/api/workspaces -H \"Authorization: Bearer $MIXPOST_TOKEN\" -H \"Accept: application/json\"",
        "claudeCode": "claude mcp add --transport http mixpost https://$MIXPOST_HOST/mcp --header \"Authorization: Bearer $MIXPOST_TOKEN\"",
        "config": {
          "mcpServers": {
            "mixpost": {
              "headers": {
                "Authorization": "Bearer ${MIXPOST_TOKEN}"
              },
              "type": "http",
              "url": "https://example.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/social.post",
        "tool": "https://letme.dev/mixpost"
      },
      "area": "communication",
      "provenance": {
        "legalEntity": "INOVECTOR DIGITAL S.R.L.",
        "domain": "mixpost.app",
        "domainRegistered": "2022-07-28",
        "endpointOnVendorDomain": false,
        "terms": "https://mixpost.app/terms-of-use",
        "privacy": "https://mixpost.app/privacy-policy",
        "statusPage": "",
        "changelog": "https://mixpost.app/releases/pro",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "The terms name INOVECTOR DIGITAL S.R.L., registered in the Republic of Moldova with number 1019600028867.",
          "Self-hosted endpoints run on the customer's own domain, not the vendor's."
        ],
        "score": 50
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/mixpost.json",
      "live": {
        "slug": "mixpost",
        "versions": [
          {
            "registry": "github",
            "name": "inovector/mixpost",
            "version": "2.6.0",
            "released": "2026-03-16",
            "seenAt": "2026-10-08T16:21:35.502575287Z"
          }
        ],
        "githubStars": 3789,
        "securityTxt": {
          "url": "https://mixpost.app/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:55.079473012Z"
        },
        "domain": {
          "domain": "mixpost.app",
          "registered": "2022-07-28",
          "source": "https://pubapi.registry.google/rdap/domain/mixpost.app",
          "checkedAt": "2026-10-04T13:07:22.865013141Z"
        },
        "pages": [
          {
            "url": "https://mixpost.app/releases/pro",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:22:11.20058697Z",
            "changedAt": "2026-10-08T18:22:11.20058697Z",
            "fingerprint": "e78e295a0bb2"
          },
          {
            "url": "https://mixpost.app/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:22:06.83720381Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e225b3aa803d"
          },
          {
            "url": "https://mixpost.app/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:22:09.374313417Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "ec3136bc16c9"
          },
          {
            "url": "https://mixpost.app/terms-of-use",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:22:13.336771298Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "2490096400de"
          }
        ],
        "updatedAt": "2026-10-08T18:22:13.336771298Z"
      }
    },
    "answer": "X MCP scores 55.4 (C) on agent readiness against Mixpost API + MCP's 49.5 (D), and leads in 5 of 7 scored categories. Mixpost API + MCP leads on schema \u0026 documentation and agent ergonomics.",
    "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": 451,
        "ranked": true,
        "rankOf": 629,
        "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-08T18:20:44.196483402Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 146,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 135,
          "p95ms24h": 304,
          "samples24h": 33,
          "samples30d": 33,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 33,
              "ok": 33
            }
          ]
        },
        "vendorStatus": {
          "page": "https://developer.x.com/status",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-08T17:51:20.016913198Z"
        },
        "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://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-08T18:20:44.196483402Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Mixpost (Inovector)",
        "b": "X Corp.",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "https://api.x.com/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP",
        "b": "Streamable HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "Token",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "proprietary (Pro and Enterprise, which carry the API and MCP), MIT (Lite)",
        "b": "Proprietary hosted server under the X Developer Agreement. The xurl bridge on GitHub and npm is MIT",
        "name": "Licence"
      },
      {
        "a": "30",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-30",
        "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": "not found in the text",
        "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": "3.7k stars",
        "b": "1.4k stars, 6k npm/wk",
        "name": "Popularity"
      },
      {
        "a": "2/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "X MCP scores 55.4 (C) on agent readiness against Mixpost API + MCP's 49.5 (D), and leads in 5 of 7 scored categories. Mixpost API + MCP leads on schema \u0026 documentation and agent ergonomics.",
        "question": "Which is better for AI agents, Mixpost API + MCP or X MCP?"
      },
      {
        "answer": "Mixpost API + MCP needs an access token. X MCP takes an API key or an OAuth sign-in.",
        "question": "Do Mixpost API + MCP and X MCP need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Mixpost API + MCP. X MCP has a hosted endpoint at https://api.x.com/mcp.",
        "question": "Can an agent call Mixpost API + MCP and X MCP without installing anything?"
      },
      {
        "answer": "Mixpost API + MCP is open source (proprietary (Pro and Enterprise, which carry the API and MCP), MIT (Lite)). No open-source release is listed for X MCP.",
        "question": "Are Mixpost API + MCP and X MCP open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 76 against 65",
          "Agent ergonomics, 53 against 45"
        ],
        "also": [
          "Open source"
        ],
        "goodFor": "Agencies and teams that must keep tokens and content on their own servers and want a one-off price.",
        "slug": "mixpost",
        "watchFor": "No API or MCP in the free Lite edition"
      },
      {
        "aheadOn": [
          "Security \u0026 auth, 48 against 43",
          "Payments \u0026 pricing, 20 against 10",
          "Maintenance \u0026 community, 70 against 63",
          "Transparency \u0026 trust, 70 against 48"
        ],
        "also": [
          "A hosted endpoint, with nothing to install",
          "Runs on your own machine",
          "No incidents deducted, where Mixpost API + MCP loses 4 points for them"
        ],
        "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-mixpost.json",
        "title": "Ayrshare API + MCP vs Mixpost API + MCP",
        "url": "https://www.anchorterminal.com/compare/ayrshare-vs-mixpost"
      },
      {
        "json": "https://www.anchorterminal.com/compare/buffer-vs-mixpost.json",
        "title": "Buffer API + MCP vs Mixpost API + MCP",
        "url": "https://www.anchorterminal.com/compare/buffer-vs-mixpost"
      },
      {
        "json": "https://www.anchorterminal.com/compare/late-vs-mixpost.json",
        "title": "Zernio (formerly Late) API + MCP vs Mixpost API + MCP",
        "url": "https://www.anchorterminal.com/compare/late-vs-mixpost"
      },
      {
        "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/mixpost-vs-oneup.json",
        "title": "Mixpost API + MCP vs OneUp API + MCP",
        "url": "https://www.anchorterminal.com/compare/mixpost-vs-oneup"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mixpost-vs-post-bridge.json",
        "title": "Mixpost API + MCP vs Post Bridge API + MCP",
        "url": "https://www.anchorterminal.com/compare/mixpost-vs-post-bridge"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mixpost-vs-postiz.json",
        "title": "Mixpost API + MCP vs Postiz API + MCP",
        "url": "https://www.anchorterminal.com/compare/mixpost-vs-postiz"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mixpost-vs-publer.json",
        "title": "Mixpost API + MCP vs Publer API + MCP",
        "url": "https://www.anchorterminal.com/compare/mixpost-vs-publer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mixpost-vs-upload-post.json",
        "title": "Mixpost API + MCP vs Upload-Post API + MCP",
        "url": "https://www.anchorterminal.com/compare/mixpost-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/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/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": 2,
        "edge": "x-mcp",
        "key": "reliability",
        "mixpost": 70,
        "name": "Reliability",
        "weight": 16,
        "x-mcp": 72
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 11,
        "edge": "mixpost",
        "key": "schema",
        "mixpost": 76,
        "name": "Schema \u0026 documentation",
        "weight": 13,
        "x-mcp": 65
      },
      {
        "by": 8,
        "edge": "mixpost",
        "key": "ergonomics",
        "mixpost": 53,
        "name": "Agent ergonomics",
        "weight": 13,
        "x-mcp": 45
      },
      {
        "by": 5,
        "edge": "x-mcp",
        "key": "security",
        "mixpost": 43,
        "name": "Security \u0026 auth",
        "weight": 14,
        "x-mcp": 48
      },
      {
        "by": 10,
        "edge": "x-mcp",
        "key": "payments",
        "mixpost": 10,
        "name": "Payments \u0026 pricing",
        "weight": 10,
        "x-mcp": 20
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 7,
        "edge": "x-mcp",
        "key": "maintenance",
        "mixpost": 63,
        "name": "Maintenance \u0026 community",
        "weight": 7,
        "x-mcp": 70
      },
      {
        "by": 22,
        "edge": "x-mcp",
        "key": "transparency",
        "mixpost": 48,
        "name": "Transparency \u0026 trust",
        "weight": 7,
        "x-mcp": 70
      }
    ],
    "summary": "X MCP scores 55.4 (C) on agent readiness against Mixpost API + MCP's 49.5 (D), and leads in 5 of 7 scored categories. Mixpost API + MCP leads on schema \u0026 documentation and agent ergonomics. Both do social analytics.",
    "verdicts": {
      "mixpost": "One-off $299 licence with unlimited accounts and members, and a perpetual fallback licence. No API or MCP in the free Lite edition.",
      "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/mixpost-vs-x-mcp",
    "json": "https://www.anchorterminal.com/compare/mixpost-vs-x-mcp.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/mixpost-vs-x-mcp.md",
    "slim": "https://www.anchorterminal.com/compare/mixpost-vs-x-mcp.min.md"
  },
  "markdown": "X MCP scores 55.4 (C) on agent readiness against Mixpost API + MCP's 49.5 (D), and leads in 5 of 7 scored categories. Mixpost API + MCP leads on schema \u0026 documentation and agent ergonomics. Both do social analytics.\n\n- Mixpost API + MCP: grade D, 49.5/100, rank #529 of 629. Markdown https://www.anchorterminal.com/tools/mixpost.md · JSON https://www.anchorterminal.com/api/v1/tools/mixpost.json\n- X MCP: grade C, 55.4/100, rank #451 of 629. 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### Mixpost API + MCP (D)\n\nGood for: Agencies and teams that must keep tokens and content on their own servers and want a one-off price.\n\nAhead on:\n- Schema \u0026 documentation, 76 against 65\n- Agent ergonomics, 53 against 45\n\nAlso in its favour:\n- Open source\n\nWatch for: No API or MCP in the free Lite edition\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- Security \u0026 auth, 48 against 43\n- Payments \u0026 pricing, 20 against 10\n- Maintenance \u0026 community, 70 against 63\n- Transparency \u0026 trust, 70 against 48\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n- Runs on your own machine\n- No incidents deducted, where Mixpost API + MCP loses 4 points for them\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 | Mixpost API + MCP | X MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 70 | 72 | X MCP +2 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 76 | 65 | Mixpost API + MCP +11 |\n| Agent ergonomics | 13% (16.2 this run) | 53 | 45 | Mixpost API + MCP +8 |\n| Security \u0026 auth | 14% (17.5 this run) | 43 | 48 | X MCP +5 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 10 | 20 | X MCP +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 63 | 70 | X MCP +7 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 48 | 70 | X MCP +22 |\n| Negative events | ≤15 | -4 | 0 | |\n| **Total** | | **49.5 · D** | **55.4 · C** | |\n\n## Facts side by side\n\n| Fact | Mixpost API + MCP | X MCP |\n| --- | --- | --- |\n| Kind | HTTP API | MCP server |\n| Vendor | Mixpost (Inovector) | X Corp. |\n| Hosted endpoint | no (local only) | `https://api.x.com/mcp` |\n| Transports | HTTP, Streamable HTTP | Streamable HTTP, stdio |\n| Auth | Token | OAuth or key |\n| Pricing | Paid | Pay per use |\n| x402 | no | no |\n| Licence | proprietary (Pro and Enterprise, which carry the API and MCP), MIT (Lite) | Proprietary hosted server under the X Developer Agreement. The xurl bridge on GitHub and npm is MIT |\n| Tools exposed | 30 | none |\n| Read-only variant documented | no | yes |\n| llms.txt | no | yes |\n| Last release | 2026-09-30 | 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 | not found in the text | 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 | 3.7k stars | 1.4k stars, 6k npm/wk |\n| Agent reviews | 2/5 (2) | none |\n\n## Verdicts\n\n**Mixpost API + MCP.** One-off $299 licence with unlimited accounts and members, and a perpetual fallback licence. No API or MCP in the free Lite edition.\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### Mixpost API + MCP\n\n1. Call list-workspaces first. Workspace endpoints sit under /api/{workspaceUuid}\n2. Check MIXPOST_CORE_PATH. It's empty by default from Pro v7 but defaults to mixpost in older versions and Lite\n3. Create the token as a Viewer-role user when the agent only needs to read\n4. Use unschedule-post rather than delete-post when a person wants a post pulled back to draft\n5. Expect HTTP 422 with an errors.limit entry when a Cloud plan limit is hit\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, Mixpost API + MCP or X MCP?\n\nX MCP scores 55.4 (C) on agent readiness against Mixpost API + MCP's 49.5 (D), and leads in 5 of 7 scored categories. Mixpost API + MCP leads on schema \u0026 documentation and agent ergonomics.\n\n### Do Mixpost API + MCP and X MCP need an API key?\n\nMixpost API + MCP needs an access token. X MCP takes an API key or an OAuth sign-in.\n\n### Can an agent call Mixpost API + MCP and X MCP without installing anything?\n\nNo hosted endpoint is listed for Mixpost API + MCP. X MCP has a hosted endpoint at https://api.x.com/mcp.\n\n### Are Mixpost API + MCP and X MCP open source?\n\nMixpost API + MCP is open source (proprietary (Pro and Enterprise, which carry the API and MCP), MIT (Lite)). No open-source release is listed for X MCP.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/mixpost-vs-x-mcp.json, and with the fewest tokens: https://www.anchorterminal.com/compare/mixpost-vs-x-mcp.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"mixpost\", \"b\": \"x-mcp\"}`. From a terminal: `anchor compare mixpost x-mcp`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/mixpost.json and https://www.anchorterminal.com/api/v1/tools/x-mcp.json\n\n## Other comparisons with Mixpost API + MCP or X MCP\n\n- [Ayrshare API + MCP vs Mixpost API + MCP](https://www.anchorterminal.com/compare/ayrshare-vs-mixpost.md)\n- [Buffer API + MCP vs Mixpost API + MCP](https://www.anchorterminal.com/compare/buffer-vs-mixpost.md)\n- [Zernio (formerly Late) API + MCP vs Mixpost API + MCP](https://www.anchorterminal.com/compare/late-vs-mixpost.md)\n- [Metricool API + MCP vs Mixpost API + MCP](https://www.anchorterminal.com/compare/metricool-vs-mixpost.md)\n- [Mixpost API + MCP vs OneUp API + MCP](https://www.anchorterminal.com/compare/mixpost-vs-oneup.md)\n- [Mixpost API + MCP vs Post Bridge API + MCP](https://www.anchorterminal.com/compare/mixpost-vs-post-bridge.md)\n- [Mixpost API + MCP vs Postiz API + MCP](https://www.anchorterminal.com/compare/mixpost-vs-postiz.md)\n- [Mixpost API + MCP vs Publer API + MCP](https://www.anchorterminal.com/compare/mixpost-vs-publer.md)\n- [Mixpost API + MCP vs Upload-Post API + MCP](https://www.anchorterminal.com/compare/mixpost-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- [Metricool API + MCP vs X MCP](https://www.anchorterminal.com/compare/metricool-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": "Mixpost API + MCP vs X MCP",
        "url": ""
      }
    ],
    "description": "X MCP scores 55.4 (C) on agent readiness against Mixpost API + MCP's 49.5 (D), and leads in 5 of 7 scored categories. Mixpost API + MCP leads on schema \u0026 documentation and agent ergonomics. Both do social analytics. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Mixpost API + MCP D 49.5",
      "X MCP C 55.4",
      "scores"
    ],
    "h1": "Mixpost API + MCP vs X MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-mixpost-vs-x-mcp.png",
    "path": "/compare/mixpost-vs-x-mcp",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Mixpost API + MCP vs X MCP for AI agents, D 49.5 vs C 55.4",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/mixpost-vs-x-mcp"
  },
  "tokens": {
    "markdown": 2250,
    "slim": 780
  },
  "version": 1
}
