Chargebee MCP by usefulapi

Read Chargebee customers, subscriptions, invoices, items, transactions, credit notes and coupons.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
93%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,889Tokens (tool definitions)
~1.2 KBTypical response size
Moderate attention impact (1.48% of 128k context)

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-http

What it can do

Tool inventory

Tools (13)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢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

Rate this Server

Evidence

Recent observations

verifiedversion not recorded13 tools
verifiedversion not recorded13 tools
verifiedversion not recorded13 tools
verifiedversion not recorded13 tools
failed observationversion not recorded—