{
  "data": {
    "a": {
      "slug": "sprout-social",
      "name": "Sprout Social API",
      "vendor": "Sprout Social, Inc.",
      "vendorUrl": "https://sproutsocial.com",
      "kind": "http-api",
      "category": "social-media",
      "summary": "Sprout Social is a social media management suite. Its REST API reads profile and post analytics, inbox messages, listening topics and cases for connected profiles, and creates draft posts with media, on plans that include API access.",
      "url": "https://www.anchorterminal.com/tools/sprout-social",
      "markdownUrl": "https://www.anchorterminal.com/tools/sprout-social.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/sprout-social.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/sprout-social.json",
      "license": "Proprietary service under the Sprout Social Developer Terms and Terms of Service",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.sproutsocial.com",
      "packages": [],
      "auth": "mixed",
      "authNotes": "Access needs a Sprout account on a plan with API access, a user holding the API Permissions permission, and acceptance of the API terms on the API page of Settings. That user then creates an OAuth client or an API token in the same page, with no review by Sprout described. OAuth 2.0 is the recommended route. A client ID and secret are exchanged at identity.sproutsocial.com for a short-lived JWT with the client credentials grant and `scope=organization_id`, or a user-based flow signs a Sprout user in. API tokens are named and can be invalidated. Either credential goes in the `Authorization: Bearer` header. No per-endpoint scopes are documented.",
      "pricing": "paid",
      "pricingNotes": "The Sprout API is listed on the Advanced plan at $399 per seat a month and on Enterprise (custom price). Standard is $199 and Professional $299 per seat a month, without the API. The page shows these prices beside an annual billing note. A 30-day trial needs no credit card. Whether the trial includes API access was not established, and there is no sandbox or per-call price (https://sproutsocial.com/pricing/, checked 2026-10-09).",
      "priceSummary": "$399 / seat-mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API docs, the Developer Terms or the pricing page (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://api.sproutsocial.com/docs/",
      "capabilities": [
        "social.analytics",
        "social.comments",
        "social.media-upload"
      ],
      "tags": [
        "hosted",
        "enterprise",
        "oauth",
        "closed-source",
        "status-page",
        "soc2",
        "iso27001",
        "analytics",
        "listening",
        "drafts-only"
      ],
      "lastRelease": "2026-10-06",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 54.7,
        "grade": "C",
        "agentReady": false,
        "rank": 679,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 8,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 59,
          "maintenance": 38,
          "payments": 20,
          "reliability": 71,
          "schema": 51,
          "security": 61,
          "transparency": 70
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": 0,
        "verdict": "The API reads analytics, inbox messages, listening topics and cases across the main networks, with OAuth client credentials, field selection and a dated changelog. It creates draft posts only, so a person must publish them in Sprout. Access needs the Advanced plan at $399 per seat a month, and no OpenAPI file or SDK was found.",
        "bestFor": "Reporting agents that pull profile, post, inbox, listening and case data for a company that already pays for Sprout Social, and for drafting posts a person will approve.",
        "strengths": [
          "OAuth 2.0 client credentials issue short-lived JWT access tokens, and named API tokens can be invalidated in settings",
          "Rate limits are published as 60 requests a minute and 250,000 a month",
          "Messages and post requests take a `fields` list and return only `guid` when it is omitted, with `limit` up to 100 and cursor paging",
          "The status page has a separate Sprout Social API component, and no incident in the 90 days to 9 October 2026 named it",
          "SOC 2 Type 2, ISO 27001 and ISO 27701 are listed on the trust centre, with a vulnerability disclosure programme on Bugcrowd"
        ],
        "weaknesses": [
          "Posts can be created only as drafts (`is_draft: true`), so the API cannot publish or schedule a post without a person in Sprout",
          "API access is listed on the Advanced plan at $399 per seat a month and on Enterprise, with no per-call price",
          "No OpenAPI file, SDK or MCP server was found in the reviewed documentation",
          "No idempotency key on post creation, and no `Retry-After` header documented for 429 responses",
          "The Developer Terms of 9 May 2024 forbid monitoring the API's availability or performance for benchmarking, and combining the API with software Sprout Social has not authorised. Recorded as a fact with no deduction. It matters before any probe is run"
        ],
        "agentNotes": [
          "Call `GET /v1/metadata/client` first for the customer ID, then `GET /v1/\u003ccustomer ID\u003e/metadata/customer` for profile and group IDs. Every other path needs them",
          "Send `is_draft: true` on `POST /v1/\u003ccustomer ID\u003e/publishing/posts`. Tell the user the draft waits in the Sprout calendar for a person to publish",
          "Name the `fields` you want on messages and posts requests. Without the list only `guid` comes back",
          "Stay under 60 requests a minute and 250,000 a month, and back off on 429 on your own because no `Retry-After` is documented",
          "Check the response when a draft names several profiles. A profile that cannot take the attached media is dropped with no error"
        ],
        "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": 54.7
          }
        ],
        "editorialScores": {
          "ergonomics": 59,
          "maintenance": 38,
          "payments": 20,
          "reliability": 71,
          "schema": 51,
          "security": 61,
          "transparency": 55
        },
        "provenanceScore": 85
      },
      "connect": {
        "http": "curl https://api.sproutsocial.com/v1/metadata/client -H \"Authorization: Bearer $TOKEN\" -H \"Accept: application/json\""
      },
      "letme": {
        "capability": "https://letme.dev/social.analytics",
        "tool": "https://letme.dev/sprout-social"
      },
      "area": "communication",
      "unitPrices": [
        {
          "item": "Advanced",
          "unit": "seat-month",
          "usd": 399,
          "note": "Cheapest plan that lists the Sprout API. Price shown beside an annual billing note"
        },
        {
          "item": "Professional",
          "unit": "seat-month",
          "usd": 299,
          "note": "No API access listed"
        },
        {
          "item": "Standard",
          "unit": "seat-month",
          "usd": 199,
          "note": "No API access listed"
        }
      ],
      "provenance": {
        "legalEntity": "Sprout Social, Inc.",
        "domain": "sproutsocial.com",
        "domainRegistered": "2009-09-22",
        "endpointOnVendorDomain": true,
        "terms": "https://sproutsocial.com/legal/api-terms-of-service/",
        "privacy": "https://sproutsocial.com/legal/privacy-policy/",
        "statusPage": "https://www.sproutsocialstatus.com/",
        "changelog": "https://api.sproutsocial.com/docs/changelog/",
        "securityTxt": "none",
        "checked": "2026-10-09",
        "notes": [
          "The Sprout Social Developer Terms (last updated 9 May 2024) are the agreement the API docs link, between the developer and Sprout Social, Inc. They sit on top of the Terms of Service (effective 9 May 2025) at https://sproutsocial.com/legal/terms/.",
          "The Terms of Service give the notice address as Sprout Social, Inc., 131 S. Dearborn Suite 700, Chicago, Illinois 60603.",
          "The privacy policy (last updated 16 September 2026) says it applies to the websites and services, app.sproutsocial.com among them, and that Sprout Social is a data processor for customer data.",
          "https://sproutsocial.com/.well-known/security.txt answered 404. Reports go through the Bugcrowd programme named in the Responsible Disclosure Policy.",
          "The API answers at api.sproutsocial.com and tokens come from identity.sproutsocial.com.",
          "RDAP for sproutsocial.com gives a registration date of 2009-09-22 and GoDaddy Corporate Domains, LLC as registrar."
        ],
        "score": 85
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/sprout-social.json",
      "live": {
        "slug": "sprout-social",
        "probe": {
          "target": "https://api.sproutsocial.com",
          "method": "get",
          "lastAt": "2026-10-10T03:53:45.226633106Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 249,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 256,
          "p95ms24h": 311,
          "samples24h": 125,
          "samples30d": 125,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 85,
              "ok": 85
            },
            {
              "date": "2026-10-10",
              "probes": 40,
              "ok": 40
            }
          ]
        },
        "vendorStatus": {
          "page": "https://www.sproutsocialstatus.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-10T03:58:47.55314655Z"
        },
        "pages": [
          {
            "url": "https://api.sproutsocial.com/docs/changelog/",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:32:33.652887104Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "17ed54bb5b28"
          },
          {
            "url": "https://sproutsocial.com/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-09T18:45:50.581789307Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c990bf136e9b"
          },
          {
            "url": "https://sproutsocial.com/legal/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:45:48.794215928Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c3bb94f08774"
          },
          {
            "url": "https://sproutsocial.com/legal/api-terms-of-service/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:45:46.501649959Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "51915d0f6e67"
          }
        ],
        "updatedAt": "2026-10-10T03:58:47.55314655Z"
      }
    },
    "answer": "X MCP and Sprout Social API score within a point of each other on agent readiness, 55.4 (C) and 54.7 (C). Sprout Social API leads on agent ergonomics and security \u0026 auth.",
    "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": 657,
        "ranked": true,
        "rankOf": 950,
        "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-10T03:53:50.185119446Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 121,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 134,
          "p95ms24h": 279,
          "samples24h": 249,
          "samples30d": 383,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 93,
              "ok": 93
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 40,
              "ok": 40
            }
          ]
        },
        "vendorStatus": {
          "page": "https://developer.x.com/status",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-10T00:51:26.282933153Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "xdevplatform/xurl",
            "version": "v1.3.4",
            "released": "2026-09-29",
            "seenAt": "2026-10-09T17:28:57.982021731Z"
          },
          {
            "registry": "npm",
            "name": "@xdevplatform/xurl",
            "version": "1.3.4",
            "seenAt": "2026-10-09T17:28:57.101463587Z"
          }
        ],
        "githubStars": 1353,
        "npmWeekly": 4549,
        "securityTxt": {
          "url": "https://x.com/.well-known/security.txt",
          "state": "expired",
          "expires": "2024-01-01T06:00:00.000Z",
          "checkedAt": "2026-10-09T15:40:12.646095378Z"
        },
        "llmsTxt": {
          "url": "https://docs.x.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-09T14:03:01.913174461Z"
        },
        "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-09T18:38:51.530837683Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "1664e738aab2"
          },
          {
            "url": "https://x.com/en/privacy",
            "kind": "privacy",
            "status": 0,
            "checkedAt": "2026-10-09T18:56:08.859886876Z",
            "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-09T21:40:56.260978008Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-10-08T21:34:02.68340277Z"
        },
        "updatedAt": "2026-10-10T03:53:50.185119446Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Sprout Social, Inc.",
        "b": "X Corp.",
        "name": "Vendor"
      },
      {
        "a": "https://api.sproutsocial.com",
        "b": "https://api.x.com/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "Streamable HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the Sprout Social Developer Terms and Terms of Service",
        "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": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-06",
        "b": "2026-09-29",
        "name": "Last release"
      },
      {
        "a": "2024-05-09",
        "b": "2026-04-27",
        "name": "Terms last updated"
      },
      {
        "a": "2026-09-16",
        "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": "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"
      }
    ],
    "faq": [
      {
        "answer": "X MCP and Sprout Social API score within a point of each other on agent readiness, 55.4 (C) and 54.7 (C). Sprout Social API leads on agent ergonomics and security \u0026 auth.",
        "question": "Which is better for AI agents, Sprout Social API or X MCP?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Sprout Social API and X MCP need an API key?"
      },
      {
        "answer": "Yes. Sprout Social API has a hosted endpoint at https://api.sproutsocial.com and X MCP at https://api.x.com/mcp.",
        "question": "Can an agent call Sprout Social API and X MCP without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Agent ergonomics, 59 against 45",
          "Security \u0026 auth, 61 against 48"
        ],
        "also": null,
        "goodFor": "Reporting agents that pull profile, post, inbox, listening and case data for a company that already pays for Sprout Social, and for drafting posts a person will approve.",
        "slug": "sprout-social",
        "watchFor": "Posts can be created only as drafts (`is_draft: true`), so the API cannot publish or schedule a post without a person in Sprout"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 65 against 51",
          "Maintenance \u0026 community, 70 against 38"
        ],
        "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-sprout-social.json",
        "title": "Ayrshare API + MCP vs Sprout Social API",
        "url": "https://www.anchorterminal.com/compare/ayrshare-vs-sprout-social"
      },
      {
        "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-sprout-social.json",
        "title": "Blotato vs Sprout Social API",
        "url": "https://www.anchorterminal.com/compare/blotato-vs-sprout-social"
      },
      {
        "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-sprout-social.json",
        "title": "Buffer API + MCP vs Sprout Social API",
        "url": "https://www.anchorterminal.com/compare/buffer-vs-sprout-social"
      },
      {
        "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-sprout-social.json",
        "title": "bundle.social vs Sprout Social API",
        "url": "https://www.anchorterminal.com/compare/bundle-social-vs-sprout-social"
      },
      {
        "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-sprout-social.json",
        "title": "Zernio (formerly Late) API + MCP vs Sprout Social API",
        "url": "https://www.anchorterminal.com/compare/late-vs-sprout-social"
      },
      {
        "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-sprout-social.json",
        "title": "Metricool API + MCP vs Sprout Social API",
        "url": "https://www.anchorterminal.com/compare/metricool-vs-sprout-social"
      },
      {
        "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-sprout-social.json",
        "title": "Mixpost API + MCP vs Sprout Social API",
        "url": "https://www.anchorterminal.com/compare/mixpost-vs-sprout-social"
      },
      {
        "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-sprout-social.json",
        "title": "OneUp API + MCP vs Sprout Social API",
        "url": "https://www.anchorterminal.com/compare/oneup-vs-sprout-social"
      },
      {
        "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-sprout-social.json",
        "title": "Post Bridge API + MCP vs Sprout Social API",
        "url": "https://www.anchorterminal.com/compare/post-bridge-vs-sprout-social"
      },
      {
        "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-sprout-social.json",
        "title": "Postiz API + MCP vs Sprout Social API",
        "url": "https://www.anchorterminal.com/compare/postiz-vs-sprout-social"
      },
      {
        "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-sprout-social.json",
        "title": "Publer API + MCP vs Sprout Social API",
        "url": "https://www.anchorterminal.com/compare/publer-vs-sprout-social"
      },
      {
        "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/sprout-social-vs-upload-post.json",
        "title": "Sprout Social API vs Upload-Post API + MCP",
        "url": "https://www.anchorterminal.com/compare/sprout-social-vs-upload-post"
      },
      {
        "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": 1,
        "edge": "x-mcp",
        "key": "reliability",
        "name": "Reliability",
        "sprout-social": 71,
        "weight": 16,
        "x-mcp": 72
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 14,
        "edge": "x-mcp",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "sprout-social": 51,
        "weight": 13,
        "x-mcp": 65
      },
      {
        "by": 14,
        "edge": "sprout-social",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "sprout-social": 59,
        "weight": 13,
        "x-mcp": 45
      },
      {
        "by": 13,
        "edge": "sprout-social",
        "key": "security",
        "name": "Security \u0026 auth",
        "sprout-social": 61,
        "weight": 14,
        "x-mcp": 48
      },
      {
        "by": 0,
        "edge": "",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "sprout-social": 20,
        "weight": 10,
        "x-mcp": 20
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 32,
        "edge": "x-mcp",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "sprout-social": 38,
        "weight": 7,
        "x-mcp": 70
      },
      {
        "by": 0,
        "edge": "",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "sprout-social": 70,
        "weight": 7,
        "x-mcp": 70
      }
    ],
    "summary": "X MCP and Sprout Social API score within a point of each other on agent readiness, 55.4 (C) and 54.7 (C). Sprout Social API leads on agent ergonomics and security \u0026 auth. Both do social analytics.",
    "verdicts": {
      "sprout-social": "The API reads analytics, inbox messages, listening topics and cases across the main networks, with OAuth client credentials, field selection and a dated changelog. It creates draft posts only, so a person must publish them in Sprout. Access needs the Advanced plan at $399 per seat a month, and no OpenAPI file or SDK was found.",
      "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/sprout-social-vs-x-mcp",
    "json": "https://www.anchorterminal.com/compare/sprout-social-vs-x-mcp.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/sprout-social-vs-x-mcp.md",
    "slim": "https://www.anchorterminal.com/compare/sprout-social-vs-x-mcp.min.md"
  },
  "markdown": "X MCP and Sprout Social API score within a point of each other on agent readiness, 55.4 (C) and 54.7 (C). Sprout Social API leads on agent ergonomics and security \u0026 auth. Both do social analytics.\n\n- Sprout Social API: grade C, 54.7/100, rank #679 of 950. Markdown https://www.anchorterminal.com/tools/sprout-social.md · JSON https://www.anchorterminal.com/api/v1/tools/sprout-social.json\n- X MCP: grade C, 55.4/100, rank #657 of 950. 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 103 social comparisons: https://www.anchorterminal.com/compare/social-media/index.md\n\n## Which one, for what\n\n### Sprout Social API (C)\n\nGood for: Reporting agents that pull profile, post, inbox, listening and case data for a company that already pays for Sprout Social, and for drafting posts a person will approve.\n\nAhead on:\n- Agent ergonomics, 59 against 45\n- Security \u0026 auth, 61 against 48\n\nWatch for: Posts can be created only as drafts (`is_draft: true`), so the API cannot publish or schedule a post without a person in Sprout\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- Schema \u0026 documentation, 65 against 51\n- Maintenance \u0026 community, 70 against 38\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 | Sprout Social API | X MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 71 | 72 | X MCP +1 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 51 | 65 | X MCP +14 |\n| Agent ergonomics | 13% (16.2 this run) | 59 | 45 | Sprout Social API +14 |\n| Security \u0026 auth | 14% (17.5 this run) | 61 | 48 | Sprout Social API +13 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 20 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 38 | 70 | X MCP +32 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 70 | 70 | even |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **54.7 · C** | **55.4 · C** | |\n\n## Facts side by side\n\n| Fact | Sprout Social API | X MCP |\n| --- | --- | --- |\n| Kind | HTTP API | MCP server |\n| Vendor | Sprout Social, Inc. | X Corp. |\n| Hosted endpoint | `https://api.sproutsocial.com` | `https://api.x.com/mcp` |\n| Transports | HTTP | Streamable HTTP, stdio |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Paid | Pay per use |\n| x402 | no | no |\n| Licence | Proprietary service under the Sprout Social Developer Terms and Terms of Service | 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 | no | yes |\n| Last release | 2026-10-06 | 2026-09-29 |\n| Terms last updated | 2024-05-09 | 2026-04-27 |\n| Privacy policy last updated | 2026-09-16 | 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 | 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\n## Verdicts\n\n**Sprout Social API.** The API reads analytics, inbox messages, listening topics and cases across the main networks, with OAuth client credentials, field selection and a dated changelog. It creates draft posts only, so a person must publish them in Sprout. Access needs the Advanced plan at $399 per seat a month, and no OpenAPI file or SDK was found.\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### Sprout Social API\n\n1. Call `GET /v1/metadata/client` first for the customer ID, then `GET /v1/\u003ccustomer ID\u003e/metadata/customer` for profile and group IDs. Every other path needs them\n2. Send `is_draft: true` on `POST /v1/\u003ccustomer ID\u003e/publishing/posts`. Tell the user the draft waits in the Sprout calendar for a person to publish\n3. Name the `fields` you want on messages and posts requests. Without the list only `guid` comes back\n4. Stay under 60 requests a minute and 250,000 a month, and back off on 429 on your own because no `Retry-After` is documented\n5. Check the response when a draft names several profiles. A profile that cannot take the attached media is dropped with no error\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, Sprout Social API or X MCP?\n\nX MCP and Sprout Social API score within a point of each other on agent readiness, 55.4 (C) and 54.7 (C). Sprout Social API leads on agent ergonomics and security \u0026 auth.\n\n### Do Sprout Social API and X MCP need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Sprout Social API and X MCP without installing anything?\n\nYes. Sprout Social API has a hosted endpoint at https://api.sproutsocial.com 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/sprout-social-vs-x-mcp.json, and with the fewest tokens: https://www.anchorterminal.com/compare/sprout-social-vs-x-mcp.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"sprout-social\", \"b\": \"x-mcp\"}`. From a terminal: `anchor compare sprout-social x-mcp`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/sprout-social.json and https://www.anchorterminal.com/api/v1/tools/x-mcp.json\n\n## Other comparisons with Sprout Social API or X MCP\n\n- [Ayrshare API + MCP vs Sprout Social API](https://www.anchorterminal.com/compare/ayrshare-vs-sprout-social.md)\n- [Ayrshare API + MCP vs X MCP](https://www.anchorterminal.com/compare/ayrshare-vs-x-mcp.md)\n- [Blotato vs Sprout Social API](https://www.anchorterminal.com/compare/blotato-vs-sprout-social.md)\n- [Blotato vs X MCP](https://www.anchorterminal.com/compare/blotato-vs-x-mcp.md)\n- [Buffer API + MCP vs Sprout Social API](https://www.anchorterminal.com/compare/buffer-vs-sprout-social.md)\n- [Buffer API + MCP vs X MCP](https://www.anchorterminal.com/compare/buffer-vs-x-mcp.md)\n- [bundle.social vs Sprout Social API](https://www.anchorterminal.com/compare/bundle-social-vs-sprout-social.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 Sprout Social API](https://www.anchorterminal.com/compare/late-vs-sprout-social.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 Sprout Social API](https://www.anchorterminal.com/compare/metricool-vs-sprout-social.md)\n- [Metricool API + MCP vs X MCP](https://www.anchorterminal.com/compare/metricool-vs-x-mcp.md)\n- [Mixpost API + MCP vs Sprout Social API](https://www.anchorterminal.com/compare/mixpost-vs-sprout-social.md)\n- [Mixpost API + MCP vs X MCP](https://www.anchorterminal.com/compare/mixpost-vs-x-mcp.md)\n- [OneUp API + MCP vs Sprout Social API](https://www.anchorterminal.com/compare/oneup-vs-sprout-social.md)\n- [OneUp API + MCP vs X MCP](https://www.anchorterminal.com/compare/oneup-vs-x-mcp.md)\n- [Post Bridge API + MCP vs Sprout Social API](https://www.anchorterminal.com/compare/post-bridge-vs-sprout-social.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 Sprout Social API](https://www.anchorterminal.com/compare/postiz-vs-sprout-social.md)\n- [Postiz API + MCP vs X MCP](https://www.anchorterminal.com/compare/postiz-vs-x-mcp.md)\n- [Publer API + MCP vs Sprout Social API](https://www.anchorterminal.com/compare/publer-vs-sprout-social.md)\n- [Publer API + MCP vs X MCP](https://www.anchorterminal.com/compare/publer-vs-x-mcp.md)\n- [Sprout Social API vs Upload-Post API + MCP](https://www.anchorterminal.com/compare/sprout-social-vs-upload-post.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-10",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Sprout Social API vs X MCP",
        "url": ""
      }
    ],
    "description": "X MCP and Sprout Social score within a point of each other for social analytics, 55.4 and 54.7 out of 100. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Sprout Social API C 54.7",
      "X MCP C 55.4",
      "scores"
    ],
    "h1": "Sprout Social API vs X MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-sprout-social-vs-x-mcp.png",
    "path": "/compare/sprout-social-vs-x-mcp",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Sprout Social vs X MCP for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/sprout-social-vs-x-mcp"
  },
  "tokens": {
    "markdown": 2500,
    "slim": 680
  },
  "version": 1
}
