Skip to main content
Glama
r28ai

stripe-billing-ops-mcp

by r28ai

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GITHUB_TOKENNoGitHub personal access token (scopes repo, read:user).
SHOPIFY_SHOPNoShopify shop domain.
LINEAR_API_KEYNoLinear personal API key.
NOTION_API_KEYNoNotion integration secret (ntn_…).
STRIPE_API_KEYNoStripe secret or restricted API key.
SLACK_BOT_TOKENNoSlack bot token (xoxb-…) from your own Slack app.
GOOGLE_CLIENT_IDNoGoogle OAuth client ID, used for browser sign-in over your own OAuth client.
SHOPIFY_CLIENT_IDNoShopify app client ID.
GOOGLE_CLIENT_SECRETNoGoogle OAuth client secret, used for browser sign-in over your own OAuth client.
SHOPIFY_CLIENT_SECRETNoShopify app client secret.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
gcalendar_events_listC

List events matching a given search filter.

github_search_commitsA

Search commits by message, author or date across GitHub — 'repo:owner/name fix flaky test'. The way to find where a change was introduced. Rate limited to 30 requests per minute.

stripe_invoice_items_createA

Add a line to an invoice. Name an existing price as pricing.price, or give an amount directly. Without invoice the line waits for the customer's next subscription invoice.

stripe_invoices_createA

Create a draft invoice for a customer. It bills nothing until finalised, so this is the safe half of invoicing.

stripe_invoices_sendA

Email an invoice to the customer outside the normal schedule. Test mode sends nothing but still emits the event.

stripe_invoices_listA

List invoices, most recently created first. Filter by customer, subscription, status or collection method.

stripe_customers_retrieveB

Retrieve a single customer by ID.

gmail_drafts_createC

Save an email draft to Gmail.

slack_chat_post_messageA

Send a message to a Slack channel, private group, or DM. Provide text for a plain message; set thread_ts to reply inside an existing thread.

stripe_subscriptions_listB

List subscriptions. Filter by customer or status.

stripe_balance_transactions_listA

List every movement across the Stripe balance: charges, refunds, fees and payouts. For accounting, reporting_category on each result groups them better than type does.

gsheets_spreadsheets_values_appendC

Appends values to a spreadsheet.

stripe_payouts_listB

List payouts to your own bank account or card, most recently created first.

gsheets_spreadsheets_values_updateC

Sets values in a range of a spreadsheet.

stripe_disputes_listA

List disputes, most recently created first. Stripe has no status filter here, so check status on the results.

stripe_disputes_retrieveA

Retrieve a dispute by ID. evidence_details.due_by is the deadline; evidence submitted after it is wasted.

gmail_threads_listC

List Gmail threads.

shopify_order_getA

Get one order with its line items, shipping address and totals. Takes a global ID (gid://shopify/Order/...), which orders_list returns.

stripe_disputes_updateA

Add evidence to a dispute. Writing any evidence field submits every evidence field to the bank unless submit is false, and submission cannot be undone. Set submit to false to stage it for review first.

gmail_messages_listC

List messages in the user's mailbox.

gmail_messages_attachments_getA

Read one attachment, by the attachmentId messages_get or threads_get lists. A text file comes back as text; a binary one is reported, not decoded.

gdrive_files_createA

Create a file's metadata: a folder (mimeType application/vnd.google-apps.folder), a Google Doc / Sheet / Slide, or an empty blob. Media upload is not expressed here. parents takes at most one folder ID.

gmail_threads_getC

Read a Gmail thread.

stripe_customers_listA

List customers, most recently created first. Filter by email to find one.

stripe_subscriptions_updateA

Update a subscription. Parameters not provided are left unchanged. To change an item send its id; omitting the id adds a new item instead.

stripe_balance_retrieveB

Retrieve the current account balance.

linear_projects_listB

List projects in the workspace, with their status and progress.

gdocs_documents_createA

Create a blank document with a title. Only the title is honoured — the document is created empty. To add content, call this and then documents_batch_update with the returned documentId.

stripe_prices_createB

Create a price for a product. Include recurring for a subscription price, omit it for a one-off.

notion_pages_createA

Create a page — as a subpage of another page, or as a row of a database by giving its data_source_id as the parent. Content comes as a markdown string Notion parses into blocks, or from a template: one or the other, never both.

stripe_accounts_listA

List the connected accounts on this platform. Empty if you are not a platform.

stripe_application_fees_listC

List the platform fees collected from connected accounts.

slack_users_listA

List members of the workspace. Use this to resolve a person's name to the user ID that Slack mentions and filters expect.

gsheets_spreadsheets_values_getC

Returns a range of values from a spreadsheet.

stripe_charges_listB

List charges, most recently created first.

stripe_refunds_createA

Refund a charge. Provide either charge or payment_intent. Omit amount to refund the full sum.

stripe_products_createA

Create a product. Prices attach to it separately.

connectA

Connect one app this server uses. For an app that issues keys, says where to get one and the terminal command that stores it. For Google, once the user's own OAuth client is set, starts the browser sign-in and returns at once: the user approves in the browser and the next call works. To see which apps are connected, call connection_status. Never ask the user for a key in the chat.

connection_statusA

See which apps this server is connected to, and how to connect each one that is not. Changes nothing.

Prompts

Interactive templates invoked by user choice

NameDescription
setupConnect every app this server uses, the quickest way each one allows.
freelancer_invoice_from_the_week_s_workClient meetings and commits become line items and a sent invoice.
failed_payment_follow_upPast-due invoices get a human email and the account owner is told.
revenue_sheetMRR, new, churned and fees appended daily to the sheet finance already uses.
payout_reconciliationEach payout broken into the charges, refunds and fees inside it.
dispute_evidence_packCorrespondence and fulfillment proof assembled and submitted before the deadline.
receipts_to_drive_and_the_expense_sheetEvery receipt filed and logged without forwarding emails to anyone.
vendor_invoice_inbox_to_approvalBills land in a sheet with the PDF and an approval request to the budget owner.
plan_change_by_email'Please move us to annual' handled from the email, with confirmation drafted.
investor_update_draftNumbers from billing and progress from the tracker, in your template.
price_change_rolloutNew price created, affected customers listed and notice drafted, with an FAQ page.
platform_fee_reportFees per connected account per month, for marketplaces on Connect.
saas_spend_auditEvery recurring vendor charge in the inbox, with an owner asked to justify it.
bulk_refunds_from_a_sheetA list of affected orders after an incident, refunded and marked row by row.
price_list_from_a_sheetThe pricing sheet the team agreed on becomes the products Stripe sells.

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.1/5.0

Scored across 39 tools

Disambiguation4/5

Tools are mostly distinguishable by service, resource, and action, with clear separation between Stripe billing operations and the other app integrations. Minor ambiguity exists within similar Google Sheets value operations and between Stripe balance retrieval vs. balance transaction listing, but descriptions help resolve these.

Naming Consistency4/5

Most tools follow a consistent service_resource_action snake_case pattern, e.g. stripe_invoices_send, gmail_threads_list, gsheets_spreadsheets_values_append. The meta tools connect and connection_status break the pattern, and a few singular/plural choices vary, but the convention is still highly readable.

Tool Count2/5

39 tools is heavy for a server named stripe-billing-ops-mcp, especially since many are one-off tools across unrelated apps like GitHub, Slack, Notion, and Shopify. The set sprawls beyond a focused billing-ops surface and many tools do not feel like they earn their place.

Completeness2/5

The surface has significant gaps: shopify_order_get references an orders_list tool that is absent, gmail_messages_attachments_get references messages_get, and gdocs_documents_create references documents_batch_update. Several integrations expose only list or create operations, and Stripe itself lacks core lifecycle operations such as customer create/update, subscription create/cancel, and payment intent handling.

Maintenance

ActivityMaintained
ResponsivenessNo issues