MCP-Server

amberflo

io.usefulapi/amberflo
Business & Betrieb Payments & Fintech Öffentlich und erreichbar MCP 2026-07-28

Was dieses MCP kann

Manages Amberflo customers, meters, usage ingestion and queries, pricing plans, invoices, and prepaid credits.

amberflo_assign_customer_plan
Assign customer plan
WRITE: assign/attach a pricing product plan to a customer — this changes what the customer is billed. API: POST /payments/pricing/amberflo/customer-pricing.
Destruktiv
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['customer_id', 'product_plan_id'], 'properties': {'product_id': {'type': 'string', 'description': 'Product id the plan belongs to.'}, 'customer_id': {'type': 'string', 'description': 'The Amberflo customerId to assign the plan to.'}, 'product_plan_id': {'type': 'string', 'description': 'The productPlanId of the plan to assign.'}, 'end_time_in_seconds': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'When the plan ends, unix epoch seconds.'}, 'start_time_in_seconds': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'When the plan takes effect, unix epoch seconds.'}}}
amberflo_create_customer
Create customer
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/.
Destruktiv
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['customer_id', 'customer_name'], 'properties': {'traits': {'type': 'object', 'description': 'Arbitrary string traits (key/value metadata).', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string'}}, 'enabled': {'type': 'boolean', 'description': 'Whether the customer is enabled.'}, 'customer_id': {'type': 'string', 'description': 'Unique customerId to assign (your identifier for the customer).'}, 'customer_name': {'type': 'string', 'description': 'Human-readable customer name.'}, 'customer_email': {'type': 'string', 'description': 'Customer email address.'}, 'create_in_stripe': {'type': 'boolean', 'description': 'When true, also auto-create this customer in Stripe (adds ?autoCreateCustomerInStripe=true).'}}}
amberflo_explain_usage
Explain usage
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.
Nur Lesen
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['meter_api_name', 'start_time_in_seconds'], 'properties': {'filter': {'type': 'object', 'description': 'Dimension filter: map of dimension name -> allowed values.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'array', 'items': {'type': 'string'}}}, 'group_by': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Dimension names to group by, e.g. ["customerId"].'}, 'take_limit': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Return only the top N records.', 'exclusiveMinimum': 0}, 'aggregation': {'enum': ['SUM', 'COUNT', 'MIN', 'MAX'], 'type': 'string', 'description': 'Aggregation function: SUM | COUNT | MIN | MAX.'}, 'meter_api_name': {'type': 'string', 'description': 'The meterApiName to explain (from amberflo_list_meters).'}, 'end_time_in_seconds': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Range end, unix epoch seconds. Defaults to now if omitted.'}, 'start_time_in_seconds': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Range start, unix epoch seconds (inclusive).'}}}
amberflo_get_all_usage
Get all usage
Get total usage across all meters over a time range, optionally grouped by customer or filtered to one customer. API: GET /usage/all.
Nur Lesen
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['start_time_in_seconds', 'time_grouping_interval'], 'properties': {'end_time_in_seconds': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Range end, unix epoch seconds. Defaults to now if omitted.'}, 'group_by_customer_id': {'type': 'boolean', 'description': 'When true, group results by customer (sends groupBy=customerId).'}, 'filter_by_customer_id': {'type': 'string', 'description': 'Restrict results to a single customerId.'}, 'start_time_in_seconds': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Range start, unix epoch seconds (inclusive).'}, 'time_grouping_interval': {'enum': ['HOUR', 'DAY', 'WEEK', 'MONTH'], 'type': 'string', 'description': 'Bucket size: HOUR | DAY | WEEK | MONTH.'}}}
amberflo_get_customer
Get a customer
Fetch a single customer by its Amberflo customerId. API: GET /customers/?customerId=<id>.
Nur Lesen
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['customer_id'], 'properties': {'customer_id': {'type': 'string', 'description': 'The Amberflo customerId to fetch.'}}}
amberflo_get_customer_invoice
Get customer invoice
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.
Nur Lesen
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['customer_id'], 'properties': {'day': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Day of month of a specific past invoice.'}, 'year': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Year of a specific past invoice.'}, 'month': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Month (1-12) of a specific past invoice.'}, 'latest': {'type': 'boolean', 'description': 'Fetch the current open invoice. Default true. Ignored when a specific invoice is addressed.'}, 'from_cache': {'type': 'boolean', 'description': 'Use cached invoice (faster). Default true.'}, 'product_id': {'type': 'string', 'description': 'Product id. Default "1".'}, 'customer_id': {'type': 'string', 'description': 'The Amberflo customerId.'}, 'product_plan_id': {'type': 'string', 'description': 'Product plan id of a specific past invoice (with year/month/day).'}, 'with_payment_status': {'type': 'boolean', 'description': 'Include payment status. Default true.'}}}
amberflo_get_customer_plan
Get customer plan
Get a customer's LATEST assigned product plan (pricing). API: GET /payments/pricing/amberflo/customer-pricing?CustomerId=<id>.
Nur Lesen
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['customer_id'], 'properties': {'customer_id': {'type': 'string', 'description': 'The Amberflo customerId.'}}}
amberflo_get_usage
Query usage for a meter
Query aggregated usage for a single meter over a time range, optionally grouped/filtered. API: POST /usage/.
Nur Lesen
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['meter_api_name', 'aggregation', 'time_grouping_interval', 'start_time_in_seconds'], 'properties': {'filter': {'type': 'object', 'description': 'Dimension filter: map of dimension name -> allowed values.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'array', 'items': {'type': 'string'}}}, 'group_by': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Dimension names to group results by, e.g. ["customerId"].'}, 'take_limit': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Return only the top N groups.', 'exclusiveMinimum': 0}, 'aggregation': {'enum': ['SUM', 'COUNT', 'MIN', 'MAX'], 'type': 'string', 'description': 'Aggregation function: SUM | COUNT | MIN | MAX.'}, 'meter_api_name': {'type': 'string', 'description': 'The meterApiName to query (from amberflo_list_meters).'}, 'take_is_ascending': {'type': 'boolean', 'description': 'Sort order for `take` (default false = descending).'}, 'end_time_in_seconds': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Range end, unix epoch seconds. Defaults to now if omitted.'}, 'start_time_in_seconds': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Range start, unix epoch seconds (inclusive).'}, 'time_grouping_interval': {'enum': ['HOUR', 'DAY', 'WEEK', 'MONTH'], 'type': 'string', 'description': 'Bucket size: HOUR | DAY | WEEK | MONTH.'}}}
amberflo_ingest_usage
Ingest usage event
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.
Destruktiv
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['meter_api_name', 'meter_value', 'meter_time_in_millis', 'customer_id'], 'properties': {'unique_id': {'type': 'string', 'description': 'Optional idempotency/unique id for the event.'}, 'dimensions': {'type': 'object', 'description': 'Optional dimensions (key/value string metadata) for the event.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string'}}, 'customer_id': {'type': 'string', 'description': 'The customerId this usage belongs to.'}, 'meter_value': {'type': 'number', 'description': 'The numeric value of the usage event.'}, 'meter_api_name': {'type': 'string', 'description': 'The meterApiName this event is for.'}, 'meter_time_in_millis': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Event timestamp, unix epoch milliseconds.'}}}
amberflo_list_customer_invoices
List customer invoices
List all invoices for a customer (optionally for a specific product), with payment status. API: GET /payments/billing/customer-product-invoice/all.
Nur Lesen
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['customer_id'], 'properties': {'from_cache': {'type': 'boolean', 'description': 'Use cached invoices (faster). Default true.'}, 'product_id': {'type': 'string', 'description': 'Product id. Default "1".'}, 'customer_id': {'type': 'string', 'description': 'The Amberflo customerId.'}, 'with_payment_status': {'type': 'boolean', 'description': 'Include payment status. Default true.'}}}
amberflo_list_customer_plan_history
List customer plan history
List the full history of product plans assigned to a customer over time. API: GET /payments/pricing/amberflo/customer-pricing/list?CustomerId=<id>.
Nur Lesen
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['customer_id'], 'properties': {'customer_id': {'type': 'string', 'description': 'The Amberflo customerId.'}}}
amberflo_list_customers
List customers
List all customers registered in your Amberflo account (id, name, email, traits, enabled). Good first call to discover customer ids. API: GET /customers/.
Nur Lesen
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
amberflo_list_meters
List meters
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.
Nur Lesen
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
amberflo_list_prepaid_orders
List prepaid orders
List a customer's active prepaid credit orders for a product. API: GET /payments/pricing/amberflo/customer-prepaid/list?CustomerId=<id>&ProductId=<pid>.
Nur Lesen
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['customer_id'], 'properties': {'product_id': {'type': 'string', 'description': 'Product id. Default "1".'}, 'customer_id': {'type': 'string', 'description': 'The Amberflo customerId.'}}}
Geändert
amberflo_ingest_usage
1. October 2026 02:50
Geändert
amberflo_assign_customer_plan
1. October 2026 02:50
Geändert
amberflo_create_customer
1. October 2026 02:50
Geändert
amberflo_list_prepaid_orders
1. October 2026 02:50
Geändert
amberflo_get_customer_invoice
1. October 2026 02:50
Geändert
amberflo_list_customer_invoices
1. October 2026 02:50
Geändert
amberflo_list_customer_plan_history
1. October 2026 02:50
Geändert
amberflo_get_customer_plan
1. October 2026 02:50
Geändert
amberflo_explain_usage
1. October 2026 02:50
Geändert
amberflo_get_all_usage
1. October 2026 02:50
Geändert
amberflo_get_usage
1. October 2026 02:50
Geändert
amberflo_list_meters
1. October 2026 02:50
Geändert
amberflo_get_customer
1. October 2026 02:50
Geändert
amberflo_list_customers
1. October 2026 02:50
Hinzugefügt
amberflo_ingest_usage
17. September 2026 12:53
Hinzugefügt
amberflo_assign_customer_plan
17. September 2026 12:53
Hinzugefügt
amberflo_create_customer
17. September 2026 12:53
Hinzugefügt
amberflo_list_prepaid_orders
17. September 2026 12:53
Hinzugefügt
amberflo_get_customer_invoice
17. September 2026 12:53
Hinzugefügt
amberflo_list_customer_invoices
17. September 2026 12:53
Hinzugefügt
amberflo_list_customer_plan_history
17. September 2026 12:53
Hinzugefügt
amberflo_get_customer_plan
17. September 2026 12:53
Hinzugefügt
amberflo_explain_usage
17. September 2026 12:53
Hinzugefügt
amberflo_get_all_usage
17. September 2026 12:53
Hinzugefügt
amberflo_get_usage
17. September 2026 12:53
Hinzugefügt
amberflo_list_meters
17. September 2026 12:53
Hinzugefügt
amberflo_get_customer
17. September 2026 12:53
Hinzugefügt
amberflo_list_customers
17. September 2026 12:53