Chargebee MCP by usefulapi
Read Chargebee customers, subscriptions, invoices, items, transactions, credit notes and coupons.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"chargebee": {
"url": "https://chargebee.usefulapi.io/mcp"
}
}
}Remote endpoints
https://chargebee.usefulapi.io/mcpstreamable-httpWhat it can do
Tool inventory
Tools (13)
🟢chargebee_list_customers(limit, offset, email, created_after)
List customers, newest first. Filter by email or creation time. Chargebee API: GET /customers.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"description": "Max results per page (Chargebee max 100).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Opaque pagination token from a previous response's `next_offset`.",
"type": "string"
},
"email": {
"description": "Exact email to match (→ email[is]).",
"type": "string"
},
"created_after": {
"description": "Unix timestamp; only customers created after this (→ created_at[after]).",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢chargebee_get_customer(customer_id)
Retrieve a single customer by id. Chargebee API: GET /customers/{customer_id}.
Input Schema
{
"type": "object",
"properties": {
"customer_id": {
"type": "string",
"description": "Chargebee customer id."
}
},
"required": [
"customer_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢chargebee_list_subscriptions(limit, offset, customer_id, status)
List subscriptions. Filter by customer or status. Chargebee API: GET /subscriptions.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"description": "Max results per page (Chargebee max 100).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Opaque pagination token from a previous response's `next_offset`.",
"type": "string"
},
"customer_id": {
"description": "Only subscriptions of this customer (→ customer_id[is]).",
"type": "string"
},
"status": {
"description": "Subscription status filter (→ status[is]).",
"type": "string",
"enum": [
"active",
"future",
"in_trial",
"non_renewing",
"paused",
"cancelled"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢chargebee_get_subscription(subscription_id)
Retrieve a single subscription by id. Chargebee API: GET /subscriptions/{subscription_id}.
Input Schema
{
"type": "object",
"properties": {
"subscription_id": {
"type": "string",
"description": "Chargebee subscription id."
}
},
"required": [
"subscription_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢chargebee_list_invoices(limit, offset, customer_id, status)
List invoices. Filter by customer or status. Chargebee API: GET /invoices.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"description": "Max results per page (Chargebee max 100).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Opaque pagination token from a previous response's `next_offset`.",
"type": "string"
},
"customer_id": {
"description": "Only invoices of this customer (→ customer_id[is]).",
"type": "string"
},
"status": {
"description": "Invoice status filter (→ status[is]).",
"type": "string",
"enum": [
"paid",
"posted",
"payment_due",
"not_paid",
"voided",
"pending"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢chargebee_get_invoice(invoice_id)
Retrieve a single invoice by id. Chargebee API: GET /invoices/{invoice_id}.
Input Schema
{
"type": "object",
"properties": {
"invoice_id": {
"type": "string",
"description": "Chargebee invoice id."
}
},
"required": [
"invoice_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢chargebee_list_items(limit, offset, type)
List Product Catalog 2.0 items (plans, addons, charges). Filter by type. Chargebee API: GET /items.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"description": "Max results per page (Chargebee max 100).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Opaque pagination token from a previous response's `next_offset`.",
"type": "string"
},
"type": {
"description": "Item type filter (→ type[is]).",
"type": "string",
"enum": [
"plan",
"addon",
"charge"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢chargebee_list_item_prices(limit, offset, item_id)
List Product Catalog 2.0 item prices. Filter by item. Chargebee API: GET /item_prices.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"description": "Max results per page (Chargebee max 100).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Opaque pagination token from a previous response's `next_offset`.",
"type": "string"
},
"item_id": {
"description": "Only prices of this item (→ item_id[is]).",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢chargebee_list_transactions(limit, offset, customer_id)
List payment/refund transactions. Filter by customer. Chargebee API: GET /transactions.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"description": "Max results per page (Chargebee max 100).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Opaque pagination token from a previous response's `next_offset`.",
"type": "string"
},
"customer_id": {
"description": "Only transactions of this customer (→ customer_id[is]).",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢chargebee_list_credit_notes(limit, offset, customer_id)
List credit notes. Filter by customer. Chargebee API: GET /credit_notes.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"description": "Max results per page (Chargebee max 100).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Opaque pagination token from a previous response's `next_offset`.",
"type": "string"
},
"customer_id": {
"description": "Only credit notes of this customer (→ customer_id[is]).",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢chargebee_list_coupons(limit, offset)
List coupons. Chargebee API: GET /coupons.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"description": "Max results per page (Chargebee max 100).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Opaque pagination token from a previous response's `next_offset`.",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴chargebee_create_customer(id, first_name, last_name, email, company, ...)
Creates a customer in Chargebee (additive). Chargebee auto-generates the id unless you pass one. Chargebee API: POST /customers.
Input Schema
{
"type": "object",
"properties": {
"id": {
"description": "Optional custom customer id (Chargebee auto-generates if omitted).",
"type": "string"
},
"first_name": {
"description": "Customer first name.",
"type": "string"
},
"last_name": {
"description": "Customer last name.",
"type": "string"
},
"email": {
"description": "Customer email address.",
"type": "string"
},
"company": {
"description": "Company name.",
"type": "string"
},
"phone": {
"description": "Phone number.",
"type": "string"
},
"locale": {
"description": "Locale, e.g. fr-CA.",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴chargebee_update_customer(customer_id, first_name, last_name, email, company, ...)
Updates a customer's details in Chargebee. Chargebee API: POST /customers/{customer_id}.
Input Schema
{
"type": "object",
"properties": {
"customer_id": {
"type": "string",
"description": "Chargebee customer id to update."
},
"first_name": {
"description": "Customer first name.",
"type": "string"
},
"last_name": {
"description": "Customer last name.",
"type": "string"
},
"email": {
"description": "Customer email address.",
"type": "string"
},
"company": {
"description": "Company name.",
"type": "string"
},
"phone": {
"description": "Phone number.",
"type": "string"
}
},
"required": [
"customer_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Evidence