Polar MCP by usefulapi

io.usefulapiPublished by usefulapi.ioOfficial publisherv1.39.2Updated Nov 14, 2026

Products, customers, orders, subscriptions, benefits, revenue metrics and refunds.

The publisher's own server: Ably MCP by usefulapi

VerifiedStreamable HTTPWeb executableFinanceData & AnalyticsBusiness & Commerce

Overview

AI-generated overview

Hosted MCP server for Polar billing: lets an assistant read products, customers, orders, subscriptions, metrics and refunds, and perform a few billing actions.

What you can do
  • List organisations, products and product details with prices and benefits
  • Look up customers, including a full customer state by Polar id or your own external id
  • List and fetch orders, subscriptions, discounts, refunds and licence keys
  • Read revenue and subscription metrics over a date range, plus usage meters, meter quantities and raw events
  • Inspect webhook endpoints and delivery attempts, and queue a webhook event for redelivery
  • Create refunds, cancel subscriptions and create checkout links
When to use it
Useful when you want to ask questions about Polar revenue, MRR, orders, subscriptions or customer entitlements in plain language, or handle occasional billing actions such as refunds, cancellations and checkout links without opening the Polar dashboard.
Requirements
Remote endpoint reached over streamable HTTP; no local install. Sign-in is by OAuth, and the login page asks for your Polar credentials, which are stored per user. The free plan allows 50 tool calls per month; paid plans are billed through a Stripe checkout link.
Before you install
The server asks for your Polar credentials at sign-in; do not put an API key or Authorization header in the client config. Write tools move real money or change access: refunds return money to customers, subscription cancellation ends access at period end, and webhook redelivery and checkout-link creation change data. Usage is metered and paid plans charge money, with no refund for the current period on cancellation.

Installation

In SourceWeft

  1. Open Polar MCP by usefulapi in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.usefulapi%2Fpolar-sh/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "polar-by-usefulapi": {
      "type": "http",
      "url": "https://polar-sh.usefulapi.io/mcp"
    }
  }
}

README

Polar MCP by usefulapi

Products, customers, orders, subscriptions, benefits, revenue metrics and refunds. Hosted, no local install.

Live endpoint: https://polar-sh.usefulapi.io/mcp · Homepage: https://usefulapi.io

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://polar-sh.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http polar-sh https://polar-sh.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "polar-sh": {      "url": "https://polar-sh.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your Polar credentials.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/polar-sh/

On first connect you'll paste your Polar credentials. They are validated, stored per-user, and scoped to you — no keys in config files.

Tools

ToolTypeWhat it does
polar_list_organizationsreadList organisations
polar_list_productsreadList products
polar_get_productreadGet one product
polar_list_customersreadList customers
polar_get_customerreadGet one customer
polar_get_customer_statereadGet a customer's full state
polar_get_customer_state_by_external_idreadGet a customer's state by your own id
polar_list_ordersreadList orders
polar_get_orderreadGet one order
polar_list_subscriptionsreadList subscriptions
polar_get_subscriptionreadGet one subscription
polar_get_metricsreadGet revenue metrics
polar_list_benefitsreadList benefits
polar_list_benefit_grantsreadList grants of a benefit
polar_list_discountsreadList discounts
polar_list_refundsreadList refunds
polar_list_license_keysreadList licence keys
polar_list_metersreadList usage meters
polar_get_meter_quantitiesreadGet a meter's quantities
polar_list_eventsreadList usage events
polar_list_webhook_deliveriesreadList webhook deliveries
polar_list_webhook_endpointsreadList webhook endpoints
polar_redeliver_webhook_eventwriteRedeliver a webhook event
polar_create_refundwriteRefund an order
polar_cancel_subscriptionwriteCancel a subscription
polar_create_checkout_linkwriteCreate a checkout link
polar_sh_usage_statusmetaUsage status (free-tier meter)
polar_sh_request_featuremetaRequest a missing feature
polar_sh_upgrademetaUpgrade to Pro or Pro+
polar_sh_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Pro$9/mo or $90/yr (2 months free)10,000 tool calls / month
Pro+$39/mo or $390/yr (2 months free)100,000 tool calls / month

Each paid plan covers this server only. Ask your AI to run polar_sh_upgrade and choose Pro or Pro+, billed monthly or yearly (it returns a Stripe Checkout link). If you already have Pro, ask to change it to Pro+. The change requires your confirmation, keeps your billing interval and charges the price difference for the rest of the period immediately. Cancel any time with polar_sh_cancel_subscription: your paid plan continues to the end of the paid period, with no refund for the current period, and asking to resume the same plan with polar_sh_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT

Source: servers/polar-sh/README.md at commit f22f848

Tools

26

polar_list_organizations

List organisations

List the organisations the token can act for. Start here — most other tools take an organization_id. Polar: GET /v1/organizations/.

Parameterspagelimit

polar_list_products

List products

List products, optionally filtered by archived state, recurrence or a text query. Polar: GET /v1/products/.

Parameterspagelimitqueryis_archivedis_recurringorganization_id

polar_get_product

Get one product

Fetch a single product with its prices and attached benefits. Polar: GET /v1/products/{id}.

Parametersproduct_idrequired

polar_list_customers

List customers

List customers, optionally by email or a text query. Polar: GET /v1/customers/.

Parameterspageemaillimitqueryorganization_id

polar_get_customer

Get one customer

Fetch a single customer by Polar id. Polar: GET /v1/customers/{id}.

Parameterscustomer_idrequired

polar_get_customer_state

Get a customer's full state

Fetch everything about one customer in a single call — active subscriptions, granted benefits and entitlements. The best answer to 'what does this customer currently have?'. Polar: GET /v1/customers/{id}/state.

Parameterscustomer_idrequired

polar_get_customer_state_by_external_id

Get a customer's state by your own id

Same as polar_get_customer_state, but looked up by YOUR external id rather than Polar's — the usual path when you hold your own user id. Polar: GET /v1/customers/external/{external_id}/state.

Parametersexternal_idrequired

polar_list_orders

List orders

List orders, filtered by customer, product, subscription, status or a date window. Polar: GET /v1/orders/.

Parameterspagelimitstatusproduct_idcustomer_idcreated_aftercreated_beforeorganization_idsubscription_id

polar_get_order

Get one order

Fetch a single order with its line items, discount and tax. Polar: GET /v1/orders/{id}.

Parametersorder_idrequired

polar_list_subscriptions

List subscriptions

List subscriptions, filtered by customer, product, status, active state or cancellation window. Polar: GET /v1/subscriptions/.

Parameterspagelimitactivestatusproduct_idcustomer_idorganization_idcancel_at_period_end

polar_get_subscription

Get one subscription

Fetch a single subscription with its product, price and period. Polar: GET /v1/subscriptions/{id}.

Parameterssubscription_idrequired

polar_get_metrics

Get revenue metrics

Fetch revenue and subscription metrics over a date range, bucketed by interval — orders, revenue, MRR, active subscriptions. Polar: GET /v1/metrics/.

Parametersend_daterequiredintervalrequiredproduct_idstart_daterequiredcustomer_idorganization_id

polar_list_benefits

List benefits

List benefits — the things a product grants, such as licence keys, file downloads or Discord roles. Polar: GET /v1/benefits/.

Parameterspagetypelimitqueryorganization_id

polar_list_benefit_grants

List grants of a benefit

List who has been granted one benefit, and whether the grant is still active. Polar: GET /v1/benefits/{id}/grants.

Parameterspagelimitbenefit_idrequired

polar_list_discounts

List discounts

List discount codes and their redemption limits. Polar: GET /v1/discounts/.

Parameterspagelimitqueryorganization_id

polar_list_refunds

List refunds

List refunds, filtered by order, subscription, customer or success. Polar: GET /v1/refunds/.

Parameterspagelimitorder_idsucceededcustomer_idorganization_id

polar_list_license_keys

List licence keys

List issued licence keys and their status. Polar: GET /v1/license-keys/.

Parameterspagelimitstatusbenefit_idorganization_id

polar_list_meters

List usage meters

List the usage meters that aggregate events into billable quantities. Polar: GET /v1/meters/.

Parameterspagelimitorganization_id

polar_get_meter_quantities

Get a meter's quantities

Fetch the aggregated quantities a meter has recorded over a window — what usage-based billing will charge for. Polar: GET /v1/meters/{id}/quantities.

Parametersintervalrequiredmeter_idrequiredcustomer_idend_timestamprequiredstart_timestamprequired

polar_list_events

List usage events

List the raw usage events ingested for metering, filtered by customer, meter, name or time. Polar: GET /v1/events/.

Parametersnamepagelimitmeter_idcustomer_idend_timestamporganization_idstart_timestamp

polar_list_webhook_deliveries

List webhook deliveries

List webhook delivery attempts with their HTTP results — the tool for 'why did my webhook not arrive?'. Polar: GET /v1/webhooks/deliveries.

Parameterspagelimitsucceededevent_typeendpoint_idend_timestampstart_timestamp

polar_list_webhook_endpoints

List webhook endpoints

List the configured webhook endpoints and their subscribed events. Polar: GET /v1/webhooks/endpoints.

Parameterspagelimitorganization_id

polar_redeliver_webhook_event

Redeliver a webhook event

Queue one webhook event for redelivery after your endpoint recovered. Polar: POST /v1/webhooks/events/{id}/redeliver.

Parametersevent_idrequired

polar_create_refund

Refund an order

Refund an order, in full or in part. This moves real money back to the customer. Polar: POST /v1/refunds/.

Parametersamountreasonrequiredcommentorder_idrequiredrevoke_benefits

polar_cancel_subscription

Cancel a subscription

Cancel a subscription at the end of its current period. The customer keeps access until then. Polar: PATCH /v1/subscriptions/{id}.

Parameterssubscription_idrequiredcustomer_cancellation_reasoncustomer_cancellation_comment

Version history

26
  1. v1.39.2LatestNov 14, 2026
  2. v1.39.1Nov 13, 2026
  3. v1.38.0Nov 12, 2026
  4. v1.37.3Nov 11, 2026
  5. v1.36.5Nov 8, 2026
  6. v1.36.4Nov 7, 2026
  7. v1.35.3Nov 5, 2026
  8. v1.35.2Nov 5, 2026
  9. v1.35.1Nov 4, 2026
  10. v1.35.0Nov 3, 2026
  11. v1.34.1Nov 3, 2026
  12. v1.33.0Nov 1, 2026
  13. v1.31.0Oct 31, 2026
  14. v1.30.0Oct 31, 2026
  15. v1.29.2Oct 30, 2026
  16. v1.29.0Oct 30, 2026
  17. v1.24.0Oct 26, 2026
  18. v1.21.3Oct 25, 2026
  19. v1.21.0Oct 25, 2026
  20. v1.20.0Oct 24, 2026
  21. v1.17.0Oct 23, 2026
  22. v1.16.4Oct 22, 2026
  23. v1.16.3Oct 21, 2026
  24. v1.11.1Oct 9, 2026
  25. v1.10.0Oct 9, 2026
  26. v1.0.0Sep 29, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Usefulapi integrations