Read subscriptions, customers, charges, orders; skip charges, cancel or activate subscriptions.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
REACTIVATES a cancelled subscription — resumes future charges. This MODIFIES live data. Recharge REST: POST /subscriptions/{id}/activate (no body). Returns { subscription }.
Subscription id to reactivate.
The server marks this tool as destructive. Running it may delete or overwrite data on the server or in any account you connected with your headers.
REACTIVATES a cancelled subscription — resumes future charges. This MODIFIES live data. Recharge REST: POST /subscriptions/{id}/activate (no body). Returns { subscription }.
| Argument | Type | Description |
|---|---|---|
| id* | integer | Subscription id to reactivate. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Subscription id to reactivate."
}
}
}CANCELS an active subscription — stops all future charges. This MODIFIES live data. A `cancellation_reason` is required. Recharge REST: POST /subscriptions/{id}/cancel with JSON body { cancellation_reason, cancellation_reason_comments? }. Returns { subscription }.
| Argument | Type | Description |
|---|---|---|
| id* | integer | Subscription id to cancel. |
| cancellation_reason* | string | Reason for cancelling (required by Recharge). |
| cancellation_reason_comments | string | Optional free-text detail about the cancellation. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"id",
"cancellation_reason"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Subscription id to cancel."
},
"cancellation_reason": {
"type": "string",
"description": "Reason for cancelling (required by Recharge)."
},
"cancellation_reason_comments": {
"type": "string",
"description": "Optional free-text detail about the cancellation."
}
}
}Get a single charge by id, including line items, totals, status, scheduled date, and customer/address. Recharge REST: GET /charges/{id}.
| Argument | Type | Description |
|---|---|---|
| id* | integer | Charge id. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Charge id."
}
}
}Get a single customer by id, including contact details, Shopify customer id, and subscription/charge counts. Recharge REST: GET /customers/{id}.
| Argument | Type | Description |
|---|---|---|
| id* | integer | Customer id. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Customer id."
}
}
}Get a single order by id, including line items, totals, status, and the charge/subscription it came from. Recharge REST: GET /orders/{id}.
| Argument | Type | Description |
|---|---|---|
| id* | integer | Order id. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Order id."
}
}
}Get the Recharge store/shop info — name, domain, currency, timezone, and account settings. Recharge REST: GET /store.
No arguments.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {}
}Get a single subscription by id, including product, quantity, price, charge interval, and next charge date. Recharge REST: GET /subscriptions/{id}.
| Argument | Type | Description |
|---|---|---|
| id* | integer | Subscription id. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Subscription id."
}
}
}List customer addresses with optional filters (customer, ids, created/updated date ranges). Returns { addresses }. Pagination is cursor-based: pass `limit` (default 50, max 250) and read `next_cursor` / `previous_cursor` from the response. IMPORTANT: when paging with `cursor`, Recharge accepts ONLY `limit` alongside it — omit every other filter on cursor requests. Recharge REST: GET /addresses.
| Argument | Type | Description |
|---|---|---|
| ids | string | Comma-separated list of address ids to fetch. |
| limit | integer | Max results per page (1-250, default 50). |
| cursor | string | Pagination cursor (next_cursor / previous_cursor from a prior response). Use it ALONE with `limit` — omit all other filters on cursor requests. |
| customer_id | integer | Filter by customer id. |
| created_at_max | string | Filter to addresses created on/before this date (ISO 8601). |
| created_at_min | string | Filter to addresses created on/after this date (ISO 8601). |
| updated_at_max | string | Filter to addresses updated on/before this date (ISO 8601). |
List charges with optional filters (customer, address, status, ids, purchase item, scheduled/created/updated date ranges) and sorting. Returns { charges }. Pagination is cursor-based: pass `limit` (default 50, max 250) and read `next_cursor` / `previous_cursor` from the response. IMPORTANT: when paging with `cursor`, Recharge accepts ONLY `limit` alongside it — omit every other filter on cursor requests. Recharge REST: GET /charges.
| Argument | Type | Description |
|---|---|---|
| ids | string | Comma-separated list of charge ids to fetch. |
| limit | integer | Max results per page (1-250, default 50). |
| cursor | string | Pagination cursor (next_cursor / previous_cursor from a prior response). Use it ALONE with `limit` — omit all other filters on cursor requests. |
| status | string | Filter by charge status: success | queued | error | refunded | partially_refunded | skipped | pending_manual_payment | pending. |
| sort_by | string | Sort order: id-asc | id-desc | updated_at-asc | updated_at-desc | scheduled_at-asc | scheduled_at-desc. |
| address_id | integer | Filter by address id. |
| customer_id | integer | Filter by customer id. |
List customers with optional filters (email, ids, created/updated date ranges) and sorting. Returns { customers }. Pagination is cursor-based: pass `limit` (default 50, max 250) and read `next_cursor` / `previous_cursor` from the response. IMPORTANT: when paging with `cursor`, Recharge accepts ONLY `limit` alongside it — omit every other filter on cursor requests. Recharge REST: GET /customers.
| Argument | Type | Description |
|---|---|---|
| ids | string | Comma-separated list of customer ids to fetch. |
| string | Filter by customer email. | |
| limit | integer | Max results per page (1-250, default 50). |
| cursor | string | Pagination cursor (next_cursor / previous_cursor from a prior response). Use it ALONE with `limit` — omit all other filters on cursor requests. |
| sort_by | string | Sort order: id-asc | id-desc | created_at-asc | created_at-desc | updated_at-asc | updated_at-desc. |
| created_at_max | string | Filter to customers created on/before this date (ISO 8601). |
| created_at_min | string | Filter to customers created on/after this date (ISO 8601). |
List one-time (non-recurring) line items with optional filters (customer, address, created/updated date ranges). Returns { onetimes }. Pagination is cursor-based: pass `limit` (default 50, max 250) and read `next_cursor` / `previous_cursor` from the response. IMPORTANT: when paging with `cursor`, Recharge accepts ONLY `limit` alongside it — omit every other filter on cursor requests. Recharge REST: GET /onetimes.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max results per page (1-250, default 50). |
| cursor | string | Pagination cursor (next_cursor / previous_cursor from a prior response). Use it ALONE with `limit` — omit all other filters on cursor requests. |
| address_id | integer | Filter by address id. |
| customer_id | integer | Filter by customer id. |
| created_at_max | string | Filter to one-times created on/before this date (ISO 8601). |
| created_at_min | string | Filter to one-times created on/after this date (ISO 8601). |
| updated_at_max | string | Filter to one-times updated on/before this date (ISO 8601). |
List orders with optional filters (customer, address, subscription, status, ids, created/updated/scheduled date ranges) and sorting. Returns { orders }. Pagination is cursor-based: pass `limit` (default 50, max 250) and read `next_cursor` / `previous_cursor` from the response. IMPORTANT: when paging with `cursor`, Recharge accepts ONLY `limit` alongside it — omit every other filter on cursor requests. Recharge REST: GET /orders.
| Argument | Type | Description |
|---|---|---|
| ids | string | Comma-separated list of order ids to fetch. |
| limit | integer | Max results per page (1-250, default 50). |
| cursor | string | Pagination cursor (next_cursor / previous_cursor from a prior response). Use it ALONE with `limit` — omit all other filters on cursor requests. |
| status | string | Filter by order status, e.g. success | queued | error | refunded | skipped | cancelled. |
| sort_by | string | Sort order: id-asc | id-desc | created_at-asc | created_at-desc | updated_at-asc | updated_at-desc. |
| address_id | integer | Filter by address id. |
| customer_id | integer | Filter by customer id. |
List Recharge products (subscription rules / discounts per product) with optional id filter. Returns { products }. Pagination is cursor-based: pass `limit` (default 50, max 250) and read `next_cursor` / `previous_cursor` from the response. IMPORTANT: when paging with `cursor`, Recharge accepts ONLY `limit` alongside it — omit every other filter on cursor requests. Recharge REST: GET /products.
| Argument | Type | Description |
|---|---|---|
| ids | string | Comma-separated list of product ids to fetch. |
| limit | integer | Max results per page (1-250, default 50). |
| cursor | string | Pagination cursor (next_cursor / previous_cursor from a prior response). Use it ALONE with `limit` — omit all other filters on cursor requests. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"ids": {
"type": "string",
"description": "Comma-separated list of product ids to fetch."
},
"limit": {
"type": "integer",
"maximum": 250,
"minimum": 1,
"description": "Max results per page (1-250, default 50)."
},
"cursor": {
"type": "string",
"description": "Pagination cursor (next_cursor / previous_cursor from a prior response). Use it ALONE with `limit` — omit all other filters on cursor requests."
}
}
}List subscriptions with optional filters (customer, address, status, ids, created/updated date ranges) and sorting. Returns { subscriptions }. Pagination is cursor-based: pass `limit` (default 50, max 250) and read `next_cursor` / `previous_cursor` from the response. IMPORTANT: when paging with `cursor`, Recharge accepts ONLY `limit` alongside it — omit every other filter on cursor requests. Recharge REST: GET /subscriptions.
| Argument | Type | Description |
|---|---|---|
| ids | string | Comma-separated list of subscription ids to fetch. |
| limit | integer | Max results per page (1-250, default 50). |
| cursor | string | Pagination cursor (next_cursor / previous_cursor from a prior response). Use it ALONE with `limit` — omit all other filters on cursor requests. |
| status | string | Filter by subscription status, e.g. active | cancelled | expired. |
| sort_by | string | Sort order: id-asc | id-desc | created_at-asc | created_at-desc | updated_at-asc | updated_at-desc. |
| address_id | integer | Filter by address id. |
| customer_id | integer | Filter by customer id. |
SKIPS a scheduled charge — prevents it from processing on its scheduled date. This MODIFIES live billing data. Some stores require the specific line items to skip via `purchase_item_ids`. Recharge REST: POST /charges/{id}/skip with JSON body { purchase_item_ids? }. Returns { charge }.
| Argument | Type | Description |
|---|---|---|
| id* | integer | Charge id to skip. |
| purchase_item_ids | array | The subscription/onetime line item ids to skip (some stores require this). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Charge id to skip."
},
"purchase_item_ids": {
"type": "array",
"items": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991
},
"description": "The subscription/onetime line item ids to skip (some stores require this)."
}
}
}| updated_at_min |
| string |
| Filter to addresses updated on/after this date (ISO 8601). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"ids": {
"type": "string",
"description": "Comma-separated list of address ids to fetch."
},
"limit": {
"type": "integer",
"maximum": 250,
"minimum": 1,
"description": "Max results per page (1-250, default 50)."
},
"cursor": {
"type": "string",
"description": "Pagination cursor (next_cursor / previous_cursor from a prior response). Use it ALONE with `limit` — omit all other filters on cursor requests."
},
"customer_id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Filter by customer id."
},
"created_at_max": {
"type": "string",
"description": "Filter to addresses created on/before this date (ISO 8601)."
},
"created_at_min": {
"type": "string",
"description": "Filter to addresses created on/after this date (ISO 8601)."
},
"updated_at_max": {
"type": "string",
"description": "Filter to addresses updated on/before this date (ISO 8601)."
},
"updated_at_min": {
"type": "string",
"description": "Filter to addresses updated on/after this date (ISO 8601)."
}
}
}| scheduled_at | string | Filter to charges scheduled on this date (ISO 8601). |
| created_at_max | string | Filter to charges created on/before this date (ISO 8601). |
| created_at_min | string | Filter to charges created on/after this date (ISO 8601). |
| updated_at_max | string | Filter to charges updated on/before this date (ISO 8601). |
| updated_at_min | string | Filter to charges updated on/after this date (ISO 8601). |
| purchase_item_id | integer | Filter to charges containing this purchase item (subscription/onetime line item) id. |
| scheduled_at_max | string | Filter to charges scheduled on/before this date (ISO 8601). |
| scheduled_at_min | string | Filter to charges scheduled on/after this date (ISO 8601). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"ids": {
"type": "string",
"description": "Comma-separated list of charge ids to fetch."
},
"limit": {
"type": "integer",
"maximum": 250,
"minimum": 1,
"description": "Max results per page (1-250, default 50)."
},
"cursor": {
"type": "string",
"description": "Pagination cursor (next_cursor / previous_cursor from a prior response). Use it ALONE with `limit` — omit all other filters on cursor requests."
},
"status": {
"enum": [
"success",
"queued",
"error",
"refunded",
"partially_refunded",
"skipped",
"pending_manual_payment",
"pending"
],
"type": "string",
"description": "Filter by charge status: success | queued | error | refunded | partially_refunded | skipped | pending_manual_payment | pending."
},
"sort_by": {
"enum": [
"id-asc",
"id-desc",
"updated_at-asc",
"updated_at-desc",
"scheduled_at-asc",
"scheduled_at-desc"
],
"type": "string",
"description": "Sort order: id-asc | id-desc | updated_at-asc | updated_at-desc | scheduled_at-asc | scheduled_at-desc."
},
"address_id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Filter by address id."
},
"customer_id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Filter by customer id."
},
"scheduled_at": {
"type": "string",
"description": "Filter to charges scheduled on this date (ISO 8601)."
},
"created_at_max": {
"type": "string",
"description": "Filter to charges created on/before this date (ISO 8601)."
},
"created_at_min": {
"type": "string",
"description": "Filter to charges created on/after this date (ISO 8601)."
},
"updated_at_max": {
"type": "string",
"description": "Filter to charges updated on/before this date (ISO 8601)."
},
"updated_at_min": {
"type": "string",
"description": "Filter to charges updated on/after this date (ISO 8601)."
},
"purchase_item_id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Filter to charges containing this purchase item (subscription/onetime line item) id."
},
"scheduled_at_max": {
"type": "string",
"description": "Filter to charges scheduled on/before this date (ISO 8601)."
},
"scheduled_at_min": {
"type": "string",
"description": "Filter to charges scheduled on/after this date (ISO 8601)."
}
}
}| updated_at_max |
| string |
| Filter to customers updated on/before this date (ISO 8601). |
| updated_at_min | string | Filter to customers updated on/after this date (ISO 8601). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"ids": {
"type": "string",
"description": "Comma-separated list of customer ids to fetch."
},
"email": {
"type": "string",
"description": "Filter by customer email."
},
"limit": {
"type": "integer",
"maximum": 250,
"minimum": 1,
"description": "Max results per page (1-250, default 50)."
},
"cursor": {
"type": "string",
"description": "Pagination cursor (next_cursor / previous_cursor from a prior response). Use it ALONE with `limit` — omit all other filters on cursor requests."
},
"sort_by": {
"enum": [
"id-asc",
"id-desc",
"created_at-asc",
"created_at-desc",
"updated_at-asc",
"updated_at-desc"
],
"type": "string",
"description": "Sort order: id-asc | id-desc | created_at-asc | created_at-desc | updated_at-asc | updated_at-desc."
},
"created_at_max": {
"type": "string",
"description": "Filter to customers created on/before this date (ISO 8601)."
},
"created_at_min": {
"type": "string",
"description": "Filter to customers created on/after this date (ISO 8601)."
},
"updated_at_max": {
"type": "string",
"description": "Filter to customers updated on/before this date (ISO 8601)."
},
"updated_at_min": {
"type": "string",
"description": "Filter to customers updated on/after this date (ISO 8601)."
}
}
}| updated_at_min |
| string |
| Filter to one-times updated on/after this date (ISO 8601). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"limit": {
"type": "integer",
"maximum": 250,
"minimum": 1,
"description": "Max results per page (1-250, default 50)."
},
"cursor": {
"type": "string",
"description": "Pagination cursor (next_cursor / previous_cursor from a prior response). Use it ALONE with `limit` — omit all other filters on cursor requests."
},
"address_id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Filter by address id."
},
"customer_id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Filter by customer id."
},
"created_at_max": {
"type": "string",
"description": "Filter to one-times created on/before this date (ISO 8601)."
},
"created_at_min": {
"type": "string",
"description": "Filter to one-times created on/after this date (ISO 8601)."
},
"updated_at_max": {
"type": "string",
"description": "Filter to one-times updated on/before this date (ISO 8601)."
},
"updated_at_min": {
"type": "string",
"description": "Filter to one-times updated on/after this date (ISO 8601)."
}
}
}| created_at_max |
| string |
| Filter to orders created on/before this date (ISO 8601). |
| created_at_min | string | Filter to orders created on/after this date (ISO 8601). |
| updated_at_max | string | Filter to orders updated on/before this date (ISO 8601). |
| updated_at_min | string | Filter to orders updated on/after this date (ISO 8601). |
| subscription_id | integer | Filter by subscription id. |
| scheduled_at_max | string | Filter to orders scheduled on/before this date (ISO 8601). |
| scheduled_at_min | string | Filter to orders scheduled on/after this date (ISO 8601). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"ids": {
"type": "string",
"description": "Comma-separated list of order ids to fetch."
},
"limit": {
"type": "integer",
"maximum": 250,
"minimum": 1,
"description": "Max results per page (1-250, default 50)."
},
"cursor": {
"type": "string",
"description": "Pagination cursor (next_cursor / previous_cursor from a prior response). Use it ALONE with `limit` — omit all other filters on cursor requests."
},
"status": {
"type": "string",
"description": "Filter by order status, e.g. success | queued | error | refunded | skipped | cancelled."
},
"sort_by": {
"enum": [
"id-asc",
"id-desc",
"created_at-asc",
"created_at-desc",
"updated_at-asc",
"updated_at-desc"
],
"type": "string",
"description": "Sort order: id-asc | id-desc | created_at-asc | created_at-desc | updated_at-asc | updated_at-desc."
},
"address_id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Filter by address id."
},
"customer_id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Filter by customer id."
},
"created_at_max": {
"type": "string",
"description": "Filter to orders created on/before this date (ISO 8601)."
},
"created_at_min": {
"type": "string",
"description": "Filter to orders created on/after this date (ISO 8601)."
},
"updated_at_max": {
"type": "string",
"description": "Filter to orders updated on/before this date (ISO 8601)."
},
"updated_at_min": {
"type": "string",
"description": "Filter to orders updated on/after this date (ISO 8601)."
},
"subscription_id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Filter by subscription id."
},
"scheduled_at_max": {
"type": "string",
"description": "Filter to orders scheduled on/before this date (ISO 8601)."
},
"scheduled_at_min": {
"type": "string",
"description": "Filter to orders scheduled on/after this date (ISO 8601)."
}
}
}| created_at_max |
| string |
| Filter to subscriptions created on/before this date (ISO 8601). |
| created_at_min | string | Filter to subscriptions created on/after this date (ISO 8601). |
| updated_at_max | string | Filter to subscriptions updated on/before this date (ISO 8601). |
| updated_at_min | string | Filter to subscriptions updated on/after this date (ISO 8601). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"ids": {
"type": "string",
"description": "Comma-separated list of subscription ids to fetch."
},
"limit": {
"type": "integer",
"maximum": 250,
"minimum": 1,
"description": "Max results per page (1-250, default 50)."
},
"cursor": {
"type": "string",
"description": "Pagination cursor (next_cursor / previous_cursor from a prior response). Use it ALONE with `limit` — omit all other filters on cursor requests."
},
"status": {
"type": "string",
"description": "Filter by subscription status, e.g. active | cancelled | expired."
},
"sort_by": {
"enum": [
"id-asc",
"id-desc",
"created_at-asc",
"created_at-desc",
"updated_at-asc",
"updated_at-desc"
],
"type": "string",
"description": "Sort order: id-asc | id-desc | created_at-asc | created_at-desc | updated_at-asc | updated_at-desc."
},
"address_id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Filter by address id."
},
"customer_id": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Filter by customer id."
},
"created_at_max": {
"type": "string",
"description": "Filter to subscriptions created on/before this date (ISO 8601)."
},
"created_at_min": {
"type": "string",
"description": "Filter to subscriptions created on/after this date (ISO 8601)."
},
"updated_at_max": {
"type": "string",
"description": "Filter to subscriptions updated on/before this date (ISO 8601)."
},
"updated_at_min": {
"type": "string",
"description": "Filter to subscriptions updated on/after this date (ISO 8601)."
}
}
}