Browse 1,700+ publications and manage Presscart media placement campaigns, orders, and articles.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Presscart.
get_userCallable MCP tool function
list_teamsCallable MCP tool function
get_teamCallable MCP tool function
list_profilesCallable MCP tool function
upload_filesCallable MCP tool function
list_outletsCallable MCP tool function
The official Model Context Protocol server for Presscart, a marketplace for disclosed paid editorial placements across 1,700+ publications. It lets AI assistants and agents browse the outlet catalog, manage campaigns and orders, and track article status through the Presscart API.
Hosted endpoint: https://mcp.presscart.com/mcp β see Client Setup for connecting from Claude, Cursor, VS Code, ChatGPT, and other MCP clients. A Presscart account is required.
Supports:
Hosted HTTP mode supports two auth models:
/mcp with Authorization: Bearer <oauth_access_token>.X-Presscart-API-Token, and the server uses that token as the upstream Presscart credential.Required:
Optional app link settings:
Optional hosted mode settings:
Optional host/origin overrides for reverse proxies or multiple domains:
When MCP_ALLOWED_ORIGINS is not set, hosted mode allows the configured MCP server origin plus Claude's remote connector origins.
Optional OAuth settings:
Notes:
PRESSCART_API_URL must point at the app API base that exposes /teams/* routes, not a public-api-only base.PRESSCART_APP_URL controls direct application links returned by tools such as list_publisher_articles. Set it per environment so staging MCP links open staging.profile_id. If the profile is unknown, call list_teams, then list_profiles.MCP_OAUTH_TRANSLATOR_ENABLED defaults to false. When enabled, the MCP origin publishes a standards-based OAuth facade while Supabase remains responsible for clients, codes, tokens, rotation, signing, and consent.MCP_OAUTH_ISSUER_URL must use HTTPS. Loopback HTTP issuers are accepted only for local development.MCP_OAUTH_LEGACY_AUDIENCE is an optional verifier-only migration value and must equal the configured MCP server origin (for example, https://mcp.presscart.com). It cannot duplicate the canonical /mcp resource or name another service, and it never changes the protected resource advertised to clients.X-Presscart-API-Token: <presscart_api_token> on initialize and later requests that need to confirm the active session credential.Development:
Build and run:
Build and run hosted HTTP:
Releases are automated by semantic-release from Conventional Commits.
fix: creates a patch release.feat: creates a minor release.! or BREAKING CHANGE: creates a major release.docs:, test:, chore:, and other non-release commits do not publish a new version by default.The Release workflow runs on pushes to main and staging. It runs check, test, and build, then semantic-release creates the release tag and publishes the GitHub release.
main publishes stable releases and commits generated release files: CHANGELOG.md, package.json, package-lock.json, and src/version.ts.staging publishes release candidates with the rc prerelease channel, but does not commit generated release files. This keeps staging-to-main promotion merges from conflicting on prerelease metadata.You can dry-run the release locally:
If the repository has no existing release tag yet, create the baseline tag before the first semantic-release run so the next release continues from the current version:
get_userlist_teamsget_teamlist_profilesupload_fileslist_outletsget_outletcreate_outletupdate_outletlist_outlet_channelscreate_outlet_channelupdate_outlet_channeldelete_outlet_channellist_product_typeslist_product_listingslist_countrieslist_stateslist_citiesget_product_listinglist_productsget_productcreate_productupdate_productcreate_orderget_orderlist_order_itemslist_profile_orderscreate_campaignlist_campaignsget_campaignupdate_campaignlist_campaign_articleslist_publisher_articlesadd_order_items_to_campaignget_campaign_article_statusupload_campaign_questionnaireupload_articlereplace_article_filesubmit_articlerequest_article_writingEnable OAuth:
The canonical resource and JWT audience must match MCP_SERVER_URL, allowing only a trailing-slash difference. Both public OAuth URLs and the upstream issuer must use HTTPS except for loopback-only local development. MCP_OAUTH_LEGACY_AUDIENCE is needed only during the migration window, must match the MCP server origin exactly, and should otherwise be unset.
With the translator disabled, the server exposes direct-Supabase protected-resource metadata at:
/.well-known/oauth-protected-resource/.well-known/oauth-protected-resource/mcpWith the translator enabled, those routes advertise https://mcp.presscart.com as the authorization server, and the server also exposes:
/.well-known/oauth-authorization-server/oauth/authorize/oauth/register/oauth/tokenThe facade accepts the standard authorization-code and refresh-token flows and proxies only to the configured Supabase issuer. It does not derive upstream targets from request hosts, forwarded headers, query parameters, or client-supplied URLs.
The facade does not expose or advertise an RFC token-revocation endpoint. Revocation stays in the existing Presscart app/admin flow: revoking the Presscart OAuth grant makes the next refresh fail. An access token that was already issued is not actively revoked by this MCP verifier and can remain cryptographically valid until its normal expiry. After it expires, the client cannot obtain a replacement, access ends, and the user must reauthorize.
Hosted MCP clients should connect to https://mcp.presscart.com/mcp and use normal MCP OAuth discovery. After the browser flow completes, they send Authorization: Bearer <oauth_access_token> to /mcp. Clients own refresh-token storage, automatically initiate refresh, and persist each rotated refresh token returned by Supabase through the facade.
ChatGPT, Claude, Cursor, and Codex consume the same MCP and OAuth standards. The server has no vendor-specific authentication branches. Labels and prompts such as Connect or Authenticate are controlled by each client platform, not by this server.
Deploy the audience migration and translator in this order:
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/presscart)<a href="https://allmcps.com/mcp/presscart"><img src="https://allmcps.com/api/badge/presscart?style=directory" alt="Presscart on AllMCPs" /></a>