Facture App MCP server

Stamp, cancel and list CFDI invoices, and manage clients and products in Facture App. Hosted by usefulapi: connect it to Claude, ChatGPT, Cursor or any MCP client.

Connect Facture App50 free tool calls a month

What can I ask?

Turn on the Facture App connector, then ask in plain words. The AI picks the tools.

What you can do with Facture App in Claude and ChatGPT

For Mexican businesses that issue CFDI invoices from their Facture App account.

Check the issuers and branches before you stamp

List the issuers on the account and their branches. Each branch id is the branch that stamps an invoice.

Review the invoices issued this period

List the invoices issued from the account with their folio, series, total and cancelled flag. Get one stamped invoice by its fiscal UUID to read its totals.

Look up clients and products in the catalog

List the clients with their RFC, tax regime and address. List the products and services with their unit prices and SAT keys.

Add a client or a product to the catalog

Create a client with its RFC, tax regime, CFDI use and fiscal address. Create a product or service with a unit price in MXN. Neither one stamps an invoice.

Changes data

Stamp an invoice after the user confirms every field

Stamp one CFDI invoice from a Facture JSON document through a branch. This issues a real tax invoice with the SAT and uses Facture credits.

Changes data

Cancel a stamped invoice with the SAT

Cancel one stamped invoice. Reason 01 needs the UUID of the replacement invoice, and reasons 02 to 04 need none. The reply says when the receiver must approve.

Changes data

How do I connect Facture App?

Before you connect

You need your own Facture App API app. The login page asks for its Client ID and Client secret; then you sign in with your Facture App account and approve the access (OAuth).

Create the application in Facture under Administración > Configuración > Aplicaciones. Enter the redirect URI https://facture-app.usefulapi.io/callback, then enter the application's client ID and client secret on the login page. The secret is stored encrypted and is used only to sign you in and refresh your Facture access. Stamping needs credits or a plan that includes the API in your Facture account.

This server reads your issuers, branches, clients, products, invoices and their status. It can create clients and products, stamp invoices and cancel them when you ask it to. Stamping and cancelling are real tax actions with the SAT and use your Facture credits. Passwords, CSD and FIEL files are never requested or stored: you keep them in Facture. You can revoke access any time in Facture.

Claude claude.ai · Desktop

  1. Open Customize → Connectors, then click + Add → Add custom connector.
  2. Enter the name Facture App and this URL, then click Add:
    https://facture-app.usefulapi.io/mcp
  3. Claude opens the login page: enter your own Facture App app's client ID and secret, then sign in and approve the access.
  4. In a chat, click + → Connectors and turn on Facture App.

Team and Enterprise: an Owner adds the connector for the organization first.

ChatGPT chatgpt.com

  1. Open Plugins, click +, then Add custom MCP server.
  2. Enter the name Facture App and this URL, choose OAuth as the authentication, confirm the warning and create it:
    https://facture-app.usefulapi.io/mcp
  3. ChatGPT opens the login page: enter your own Facture App app's client ID and secret, then sign in and approve the access.
  4. In Plugins, install Facture App, then choose it in a chat.

No Add custom MCP server option? It depends on your account or workspace settings: see OpenAI's guide.

Claude Code

Run this command, then run /mcp in Claude Code to log in:

claude mcp add --transport http facture-app https://facture-app.usefulapi.io/mcp

Cursor

Add to Cursor or add this to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "facture-app": {
      "url": "https://facture-app.usefulapi.io/mcp"
    }
  }
}

VS Code

Add to VS Code or add this to .vscode/mcp.json:

{
  "servers": {
    "facture-app": {
      "type": "http",
      "url": "https://facture-app.usefulapi.io/mcp"
    }
  }
}

Codex

Run these commands. The second one opens the login page:

codex mcp add facture-app --url https://facture-app.usefulapi.io/mcp
codex mcp login facture-app

Other clients

Windsurf, Cline, Zed and other MCP clients: add this URL as a remote MCP server (Streamable HTTP). The client then opens the login page in your browser.

https://facture-app.usefulapi.io/mcp

Add only the URL. Do not add an Authorization header or an API key to the client config. The server signs you in with OAuth: you enter your own Facture App app's client ID and secret, then sign in with your Facture App account. If the config has such a header, remove it: some clients then send that header instead of the login token, and every call fails with 401.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Proper user$9/mo · $90/yr10,000 tool calls / month
Pro+per user$39/mo · $390/yr100,000 tool calls / month

Each paid plan covers this Facture App server only. Ask your AI to run facture_upgrade and choose Pro or Pro+, billed monthly or yearly (it returns a Stripe Checkout link). If you already have Pro, ask to change it to Pro+. The change requires your confirmation, keeps your billing interval and charges the price difference for the rest of the period immediately. Cancel any time with facture_cancel_subscription: your paid plan continues to the end of the paid period, with no refund for the current period, and asking to resume the same plan with facture_upgrade before then undoes the cancel. Or write to support@usefulapi.io.

Tools 14

Show all 14 tools (the AI picks them for you)

Read only · 6

  • List issuersfacture_list_issuers
    List the issuers (emisores: the taxpayers that can stamp invoices) on this Facture account, with their RFC. Use an RFC to filter branches.
  • List branchesfacture_list_branches
    List the branches (sucursales) that can stamp invoices. Each branch id is the branch_id that facture_stamp_invoice needs. Pass issuer_rfc to show only one issuer's branches.
  • List clientsfacture_list_clients
    List the clients (receptores) in the account catalog: name, RFC, tax regime and address.
  • List products and servicesfacture_list_products
    List the products and services (conceptos) in the account catalog, with their unit prices and SAT keys.
  • List invoicesfacture_list_invoices
    List the invoices (comprobantes) issued from this account: folio, series, total, receiver and cancelled flag.
  • Get an invoicefacture_get_invoice
    Get one stamped invoice by its fiscal UUID: date, type, folio, currency, cancelled flag and totals.

Changes data · 4

  • Create a clientfacture_create_client
    Create a client (receptor) in the account catalog. The SAT requires the RFC, tax regime, CFDI use and a fiscal address. Creates a record only; it stamps nothing.
  • Create a product or servicefacture_create_product
    Create a product or service (concepto) in the account catalog with a unit price in MXN and one IVA rate. Creates a record only; it stamps nothing.
  • Stamp an invoicefacture_stamp_invoice
    Stamp (timbrar) one CFDI invoice from a Facture JSON document, through the given branch. This issues a real tax invoice with the SAT and uses Facture credits: call it only after the user confirms every field. The stamped XML is left out of the reply; get it from Facture.
  • Cancel an invoicefacture_cancel_invoice
    Cancel (cancelar) one stamped invoice with the SAT. Reason 01 means an error with a replacement invoice: it needs replacement_uuid. Reasons 02 to 04 need no replacement. Cancelling can need the receiver's approval; the reply says so.

Your usefulapi plan · 4

  • Usage status (free-tier meter)facture_usage_status
    Report the caller's current usage: the plan, calls used this month, the limit of the plan (the free monthly cap or the Pro fair use limit), remaining, and whether the limit is reached. Read-only; does not count against the meter.
  • Request a missing featurefacture_request_feature
    Tell usefulapi that the user needs something the Facture App tools cannot do yet (a missing tool, field or filter). Call it only when the user asks for something none of the tools can do, and tell the user that you send the request. Do not call it for errors or for normal requests. Do not include personal data, credentials or customer records. Stored with the product name and the client type (for example Claude or Cursor), without the user's account. At most 5 requests per day. Does not count against the meter.
  • Upgrade to Pro or Pro+facture_upgrade
    Get a paid plan for Facture App (the free tier caps monthly usage). Pro: 10,000 tool calls a month, for normal use — plan "monthly" ($9/month) or "yearly" ($90/year, 2 months free). Pro+: 100,000 tool calls a month, for automations and heavy use — plan "plus" ($39/month) or "plus_yearly" ($390/year). Without a plan it returns both Pro and Pro+, each with a payment link, for the user to choose; with a plan, one link. An existing Pro subscription changes to Pro+ in place: call without confirm first, as the reply states the exact charge for this account (the price difference for the rest of the period, or in a free Pro trial the full Pro+ price, as the trial ends); then call with confirm: true. Cancel any time: the plan then runs to the end of the paid period, so it also suits a one-time job. A link opens Stripe Checkout in the browser; after payment the account upgrades automatically. Does not count against the meter.
  • Cancel the Pro subscriptionfacture_cancel_subscription
    Cancel the caller's Facture App Pro subscription at the end of the paid period (no refund for the current period; Pro continues until then, then the free tier applies). Requires confirm: true. Run facture_upgrade later to undo the cancel before the period ends. Does not count against the meter.

FAQ

What can I do with Facture App in Claude or ChatGPT?

Check the issuers and branches before you stamp. Review the invoices issued this period. Look up clients and products in the catalog. Add a client or a product to the catalog. Stamp an invoice after the user confirms every field. Cancel a stamped invoice with the SAT. See what you can do for the details.

Is this an official Facture App product?

No. usefulapi is an independent service. It is not affiliated with or endorsed by Facture App. The server calls the Facture App API with your own Facture App access, so it sees only the data that your account can see.

Can I connect Facture App to Claude or ChatGPT?

Yes. In Claude, add this server's URL as a custom connector. In ChatGPT, add it as a custom MCP server in Plugins. Then log in once. Cursor, VS Code, Claude Code and Codex work too. See the setup steps.

What do I need to connect?

A Facture App account with API access and your own Facture App API app (its client ID and secret). See Before you connect for how to create it.

Do I add an Authorization header to the client config?

No. Add only the URL. Do not add an Authorization header or an API key to the client config. The server signs you in with OAuth: you enter your own Facture App app's client ID and secret, then sign in with your Facture App account. If the config has such a header, remove it: some clients then send that header instead of the login token, and every call fails with 401.

How do you keep my Facture App credentials?

The login stores them encrypted in the authorization grant of your connection. The server uses them to call the Facture App API for you and to derive a private account id for usage metering. usefulapi does not show them on any page or in any reply. You can revoke the access in Facture App at any time.

Can the AI change my Facture App data?

Yes, if you approve it. 4 of the 10 Facture App tools can create or change data. The other 6 are marked read-only. Most MCP clients ask you to approve a tool call before it runs.

What does it cost?

The Free plan gives 50 tool calls / month. Pro costs $9/mo or $90/yr, with 10,000 tool calls / month. Pro+ costs $39/mo or $390/yr, with 100,000 tool calls / month. Each subscription covers this Facture App server only. Cancel any time: your paid plan then runs to the end of the paid period. Run facture_usage_status to see how many calls you used.

How do I subscribe or cancel?

Ask the AI to run facture_upgrade and choose Pro or Pro+, billed monthly or yearly: it returns a Stripe Checkout link. If you already have Pro, ask to change it to Pro+. After you confirm, your existing subscription changes in place, keeps its billing interval and charges the price difference for the rest of the period immediately. To cancel, run facture_cancel_subscription. Your paid plan continues to the end of the paid period.

What if a Facture App tool that I need is missing?

Tell the AI what you wanted to do. It can send the request with facture_request_feature. We store the text with the server name, the type of AI client and the tool you tried, not with your account, and read every request when we plan new tools. You can send up to 5 requests per day.

Which AI clients can I use?

Any client that supports remote MCP servers (Streamable HTTP) with OAuth login: Claude (web and desktop), Claude Code, ChatGPT, Codex, Cursor, VS Code, Windsurf and others.

This is a Model Context Protocol endpoint — meant to be connected from an AI client, not opened in a browser. An invalid_token response at the URL is the auth gate working as designed; clients authenticate automatically.

Need a tool this server does not have, or a connection to another system? We build custom integrations and MCP servers.

More Payments & Billing MCP servers

AmberfloAutumnBasis TheorybexioBilfloBill.ptBill4TimeBillifyBillogramBillomatBillyBind ERPBokioBraintreeBukkuCashCtrlChargebeeChargeOverCheckout.come-BoekhoudeneverbillFacturaliaFaktuoFakturowoFastBillFiscaloFreeAgentHiveageHobokInstamojoinv.bgInvoice NinjaInvoicedKashFlowLaudusLemon SqueezyLexware OfficeMercoaMerit AktivaMoonClerkOblioOrbPagSafePapierkramPaySpacePiggyVest BusinessPin PaymentsPolarQashierRecommandRecurlySaldeoSeal SubscriptionssevdesksmallinvoiceSmartAccountsSmartBillSmartrrSTEL OrderSuperFakturaSzámlázz.huTOConlineVyfakturujWeFactYuki

All Payments & Billing servers →