Amberflo MCP by usefulapi
Server Details
Query and manage Amberflo metering & billing: customers, meters, usage, plans, invoices, prepaid.
- Status
- Healthy
- Uptime
- 80.6% over 55 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- m190/usefulapi-mcp
- GitHub Stars
- 0
TDQS
Scored across 14 tools
Each tool targets a distinct action and resource (e.g., create_customer vs list_customers, get_customer_plan vs list_customer_plan_history). No two tools overlap in purpose; descriptions clearly differentiate them.
All tools follow the consistent pattern amberflo_verb_noun with snake_case. Verbs like create, get, list, assign, explain, ingest are used uniformly, and nouns consistently represent the resource (customer, usage, meters, etc.).
14 tools is well-scoped for a billing/metering server, covering customer management, plan assignment, invoices, usage ingestion/querying, and meter discovery. Each tool serves a clear purpose without excess.
The tool set covers essential CRUD and lifecycle operations for customers, plans, invoices, and usage. Minor gaps exist (e.g., no update or delete customer, no unassign plan), but the core workflows are fully supported.
Available Tools
14 toolsamberflo_assign_customer_planAssign customer planDestructiveInspect
WRITE: assign/attach a pricing product plan to a customer — this changes what the customer is billed. API: POST /payments/pricing/amberflo/customer-pricing.
| Name | Required | Description | Default |
|---|---|---|---|
| product_id | No | Product id the plan belongs to. | |
| customer_id | Yes | The Amberflo customerId to assign the plan to. | |
| product_plan_id | Yes | The productPlanId of the plan to assign. | |
| end_time_in_seconds | No | When the plan ends, unix epoch seconds. | |
| start_time_in_seconds | No | When the plan takes effect, unix epoch seconds. |
amberflo_create_customerCreate customerDestructiveInspect
WRITE: create/register a new customer in Amberflo (id + name required; optional email, enabled flag, and traits). Optionally auto-create the customer in Stripe. API: POST /customers/.
| Name | Required | Description | Default |
|---|---|---|---|
| traits | No | Arbitrary string traits (key/value metadata). | |
| enabled | No | Whether the customer is enabled. | |
| customer_id | Yes | Unique customerId to assign (your identifier for the customer). | |
| customer_name | Yes | Human-readable customer name. | |
| customer_email | No | Customer email address. | |
| create_in_stripe | No | When true, also auto-create this customer in Stripe (adds ?autoCreateCustomerInStripe=true). |
amberflo_explain_usageExplain usageRead-onlyInspect
Explain/drill into the raw meter events behind a meter's usage over a time range — useful to debug why a number looks off. API: POST /usage/explain.
| Name | Required | Description | Default |
|---|---|---|---|
| filter | No | Dimension filter: map of dimension name -> allowed values. | |
| group_by | No | Dimension names to group by, e.g. ["customerId"]. | |
| take_limit | No | Return only the top N records. | |
| aggregation | No | Aggregation function: SUM | COUNT | MIN | MAX. | |
| meter_api_name | Yes | The meterApiName to explain (from amberflo_list_meters). | |
| end_time_in_seconds | No | Range end, unix epoch seconds. Defaults to now if omitted. | |
| start_time_in_seconds | Yes | Range start, unix epoch seconds (inclusive). |
amberflo_get_all_usageGet all usageRead-onlyInspect
Get total usage across all meters over a time range, optionally grouped by customer or filtered to one customer. API: GET /usage/all.
| Name | Required | Description | Default |
|---|---|---|---|
| end_time_in_seconds | No | Range end, unix epoch seconds. Defaults to now if omitted. | |
| group_by_customer_id | No | When true, group results by customer (sends groupBy=customerId). | |
| filter_by_customer_id | No | Restrict results to a single customerId. | |
| start_time_in_seconds | Yes | Range start, unix epoch seconds (inclusive). | |
| time_grouping_interval | Yes | Bucket size: HOUR | DAY | WEEK | MONTH. |
amberflo_get_customerGet a customerRead-onlyInspect
Fetch a single customer by its Amberflo customerId. API: GET /customers/?customerId=.
| Name | Required | Description | Default |
|---|---|---|---|
| customer_id | Yes | The Amberflo customerId to fetch. |
amberflo_get_customer_invoiceGet customer invoiceRead-onlyInspect
Get a single customer invoice: the CURRENT open invoice (latest=true, default) or a SPECIFIC past invoice by product_plan_id + year + month + day. API: GET /payments/billing/customer-product-invoice.
| Name | Required | Description | Default |
|---|---|---|---|
| day | No | Day of month of a specific past invoice. | |
| year | No | Year of a specific past invoice. | |
| month | No | Month (1-12) of a specific past invoice. | |
| latest | No | Fetch the current open invoice. Default true. Ignored when a specific invoice is addressed. | |
| from_cache | No | Use cached invoice (faster). Default true. | |
| product_id | No | Product id. Default "1". | |
| customer_id | Yes | The Amberflo customerId. | |
| product_plan_id | No | Product plan id of a specific past invoice (with year/month/day). | |
| with_payment_status | No | Include payment status. Default true. |
amberflo_get_customer_planGet customer planRead-onlyInspect
Get a customer's LATEST assigned product plan (pricing). API: GET /payments/pricing/amberflo/customer-pricing?CustomerId=.
| Name | Required | Description | Default |
|---|---|---|---|
| customer_id | Yes | The Amberflo customerId. |
amberflo_get_usageQuery usage for a meterRead-onlyInspect
Query aggregated usage for a single meter over a time range, optionally grouped/filtered. API: POST /usage/.
| Name | Required | Description | Default |
|---|---|---|---|
| filter | No | Dimension filter: map of dimension name -> allowed values. | |
| group_by | No | Dimension names to group results by, e.g. ["customerId"]. | |
| take_limit | No | Return only the top N groups. | |
| aggregation | Yes | Aggregation function: SUM | COUNT | MIN | MAX. | |
| meter_api_name | Yes | The meterApiName to query (from amberflo_list_meters). | |
| take_is_ascending | No | Sort order for `take` (default false = descending). | |
| end_time_in_seconds | No | Range end, unix epoch seconds. Defaults to now if omitted. | |
| start_time_in_seconds | Yes | Range start, unix epoch seconds (inclusive). | |
| time_grouping_interval | Yes | Bucket size: HOUR | DAY | WEEK | MONTH. |
amberflo_ingest_usageIngest usage eventDestructiveInspect
WRITE: record/ingest a single usage meter event (writes billable usage data) to the Amberflo ingestion host. API: POST /ingest/ on the ingest base URL.
| Name | Required | Description | Default |
|---|---|---|---|
| unique_id | No | Optional idempotency/unique id for the event. | |
| dimensions | No | Optional dimensions (key/value string metadata) for the event. | |
| customer_id | Yes | The customerId this usage belongs to. | |
| meter_value | Yes | The numeric value of the usage event. | |
| meter_api_name | Yes | The meterApiName this event is for. | |
| meter_time_in_millis | Yes | Event timestamp, unix epoch milliseconds. |
amberflo_list_customer_invoicesList customer invoicesRead-onlyInspect
List all invoices for a customer (optionally for a specific product), with payment status. API: GET /payments/billing/customer-product-invoice/all.
| Name | Required | Description | Default |
|---|---|---|---|
| from_cache | No | Use cached invoices (faster). Default true. | |
| product_id | No | Product id. Default "1". | |
| customer_id | Yes | The Amberflo customerId. | |
| with_payment_status | No | Include payment status. Default true. |
amberflo_list_customer_plan_historyList customer plan historyRead-onlyInspect
List the full history of product plans assigned to a customer over time. API: GET /payments/pricing/amberflo/customer-pricing/list?CustomerId=.
| Name | Required | Description | Default |
|---|---|---|---|
| customer_id | Yes | The Amberflo customerId. |
amberflo_list_customersList customersRead-onlyInspect
List all customers registered in your Amberflo account (id, name, email, traits, enabled). Good first call to discover customer ids. API: GET /customers/.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
amberflo_list_metersList metersRead-onlyInspect
List all meter definitions in your account (id, meterApiName, label, meterType, aggregation, etc.). Use meterApiName values here as inputs to usage tools. API: GET /meters.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
amberflo_list_prepaid_ordersList prepaid ordersRead-onlyInspect
List a customer's active prepaid credit orders for a product. API: GET /payments/pricing/amberflo/customer-prepaid/list?CustomerId=&ProductId=.
| Name | Required | Description | Default |
|---|---|---|---|
| product_id | No | Product id. Default "1". | |
| customer_id | Yes | The Amberflo customerId. |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
14 tool updates
- Changed
amberflo_assign_customer_plan1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
amberflo_create_customer1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
amberflo_explain_usage1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
amberflo_get_all_usage1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
amberflo_get_customer1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
amberflo_get_customer_invoice1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
amberflo_get_customer_plan1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
amberflo_get_usage1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
amberflo_ingest_usage1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
amberflo_list_customer_invoices1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
amberflo_list_customer_plan_history1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
amberflo_list_customers1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
amberflo_list_meters1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
amberflo_list_prepaid_orders1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
14 tool updates
- First observed
amberflo_assign_customer_plan - First observed
amberflo_create_customer - First observed
amberflo_explain_usage - First observed
amberflo_get_all_usage - First observed
amberflo_get_customer - First observed
amberflo_get_customer_invoice - First observed
amberflo_get_customer_plan - First observed
amberflo_get_usage - First observed
amberflo_ingest_usage - First observed
amberflo_list_customer_invoices - First observed
amberflo_list_customer_plan_history - First observed
amberflo_list_customers - First observed
amberflo_list_meters - First observed
amberflo_list_prepaid_orders
Related MCP Connectors
Query and manage Mercoa AP/AR bill-pay: entities, invoices, transactions and payment methods.
Manage Apollo invoices and customers with entity-scoped OAuth and optional read/write access.
- churnkeyOAuthco.churnkey
Read and manage Churnkey cancel flows, retention metrics, and payment recovery
Create and manage checkout pages, event ticketing, forms, customers, payments and subscriptions.
Related MCP Servers
AlicenseBqualityAmaintenanceEnables natural language interaction with the Zenskar billing platform, covering customers, contracts, invoices, payments, accounting, products, plans, and more.10047 npm1MIT- AlicenseCqualityDmaintenanceEnables access to Usage and Billing APIs for managing accounts, products, meters, plans, and usage reporting. Supports operations like creating products/plans, reporting usage, and retrieving billing information.18MIT
- AlicenseNot gradedqualityCmaintenanceEnables creating, sending, and tracking invoices from MCP clients like Claude, Cursor, or Windsurf, using a hosted endpoint with API token.MIT

ChartMogul MCP Serverofficial
AlicenseAqualityFmaintenanceEnables interaction with the ChartMogul API to manage subscription data, customer relationships, and sales CRM activities. It allows users to retrieve key business metrics like MRR and churn while performing data operations on plans, invoices, and contacts.558MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.