100+ integrations are ready to connect to your AI.Connect your first MCP

Brex MCP server for your AI

See where the money went by category, chase missing receipts, lock a lost card and line up a vendor payment for someone to confirm, all on the Brex account your token belongs to.

PopMCPBrex

How much did we spend on cards last month, by category?

Supported Brex tools

Every card, expense, transaction, statement, budget, spend limit, vendor, transfer, person, trip, custom field and webhook operation the connection exposes, plus the Brex events it can watch.

115 tools in the full catalog: 61 read and 54 write. 41 load by default, and the rest are found with tool search.

brex_get_spend_limit

Get Spend Limit.

brex_list_budgets

List Budgets.

brex_list_spend_limits

List Spend Limits.

brex_create_transfer

Create transfer.

brex_create_vendor

Create vendor.

brex_get_transfer

Get transfer.

brex_get_vendor

Get vendor.

brex_list_linked_accounts

Lists linked accounts.

brex_list_transfers

Lists transfers.

brex_list_vendors

Lists vendors.

brex_prepare_transfer

Get everything for a payment to a vendor, without sending anything: finds the vendor, its payment methods and the cash accounts to pay from, and writes the body for brex_create_transfer.

brex_find_transactions

Find settled transactions between two dates, on the company's cards or a cash account.

brex_list_card_accounts

List card accounts.

brex_list_card_statements

List primary card account statements.

brex_list_card_transactions

List transactions for all card accounts.

brex_list_cash_accounts

List cash accounts.

brex_list_cash_transactions

List transactions for the selected cash account.

brex_expenses_to_review

Find expenses still missing a receipt, memo or other documentation, counted by person, so someone can chase them.

brex_get_expense

Get an expense.

brex_list_expenses

List expenses.

brex_spend_summary

Add up spend for a period by category, merchant, department, person, budget or location.

brex_update_card_expense

Update an expense.

brex_upload_receipt

Attach a receipt in one call.

brex_create_card

Create card.

brex_get_card

Get card.

brex_list_cards

List cards.

brex_lock_card

Lock card.

brex_unlock_card

Unlock card.

brex_get_current_user

Get current user.

brex_get_user

Get user.

brex_invite_user

Invite user.

brex_list_users

List users.

brex_list_departments

List departments.

brex_list_locations

List locations.

brex_list_trips

List trips.

brex_call_official_tool

Call any tool on Brex's own MCP server, including those that change something.

brex_list_official_tools

List the tools on Brex's own MCP server, with what they do and their inputs.

brex_read_official_tool

Call a read-only tool on Brex's own MCP server: bills, banking transactions, spend analytics, rewards.

brex_list_legal_entities

List legal entities.

brex_account_overview

Start here.

brex_get_company

Get company.

brex_archive_budget

Archive a Budget.

brex_archive_spend_limit

Archive a Spend Limit.

brex_archive_spend_limit_v1

Archive a Spend Limit.

brex_create_budget

Create Budget.

brex_create_spend_limit

Create Spend Limit.

brex_create_spend_limit_v1

Create Spend Limit.

brex_get_budget

Get Budget.

brex_get_budget_program

Get Budget Program.

brex_get_spend_limit_v1

Get Spend Limit.

brex_list_budget_programs

List Budget Programs.

brex_list_spend_limits_v1

List Spend Limits.

brex_update_budget

Update Budget.

brex_update_spend_limit

Update Spend Limit.

brex_update_spend_limit_v1

Update Spend Limit.

brex_add_webhook_group_members

Add Webhook Group Members.

brex_create_webhook

Register Webhook.

brex_create_webhook_group

Create Webhook Group.

brex_delete_webhook

Unregister Webhook.

brex_delete_webhook_group

Delete Webhook Group.

brex_get_webhook

Get Webhook.

brex_get_webhook_group

Get Webhook Group.

brex_list_webhook_group_members

List Webhook Group Members.

brex_list_webhook_groups

List Webhook Groups.

brex_list_webhook_secrets

List Webhook Secrets.

brex_list_webhooks

List Webhooks.

brex_remove_webhook_group_members

Remove Webhook Group Members.

brex_update_webhook

Update Webhook.

brex_create_incoming_transfer

Create incoming transfer.

brex_delete_vendor

Delete vendor.

brex_update_vendor

Update vendor.

brex_create_custom_field

Create a custom field (beta at Brex: an admin turns it on in Settings, Beta features, and it may change).

brex_create_custom_field_values

Create custom field values (beta at Brex: an admin turns it on in Settings, Beta features, and it may change).

brex_delete_custom_field

Delete a custom field (beta at Brex: an admin turns it on in Settings, Beta features, and it may change).

brex_delete_custom_field_values

Delete custom field values (beta at Brex: an admin turns it on in Settings, Beta features, and it may change).

brex_get_custom_field

Get custom field (beta at Brex: an admin turns it on in Settings, Beta features, and it may change).

brex_get_custom_field_value

Get a field value (beta at Brex: an admin turns it on in Settings, Beta features, and it may change).

brex_list_custom_field_values

List custom field values (beta at Brex: an admin turns it on in Settings, Beta features, and it may change).

brex_list_custom_fields

List custom fields (beta at Brex: an admin turns it on in Settings, Beta features, and it may change).

brex_update_custom_field

Update a custom field (beta at Brex: an admin turns it on in Settings, Beta features, and it may change).

brex_update_custom_field_values

Update custom field values (beta at Brex: an admin turns it on in Settings, Beta features, and it may change).

brex_get_cash_account

Get cash account by ID.

brex_get_primary_cash_account

Get primary cash account.

brex_list_cash_statements

List cash account statements.

brex_create_receipt_match

Create a new receipt match.

brex_create_receipt_upload

Create a new receipt upload.

brex_terminate_card

Terminate card.

brex_update_card

Update card.

brex_create_accounting_integration

Create accounting integration (alpha at Brex: open by invitation from developer-support@brex.com, and it may change).

brex_create_user

Create user.

brex_disconnect_accounting_integration

Disconnect accounting integration (alpha at Brex: open by invitation from developer-support@brex.com, and it may change).

brex_get_accounting_record

Get accounting record by ID (alpha at Brex: open by invitation from developer-support@brex.com, and it may change).

brex_list_accounting_records

Query accounting records (alpha at Brex: open by invitation from developer-support@brex.com, and it may change).

brex_reactivate_accounting_integration

Reactivate accounting integration (alpha at Brex: open by invitation from developer-support@brex.com, and it may change).

brex_report_accounting_export_results

Report accounting export results (alpha at Brex: open by invitation from developer-support@brex.com, and it may change).

brex_update_user

Update user.

brex_create_department

Create department.

brex_create_location

Create location.

brex_create_title

Create title.

brex_delete_department

Delete department.

brex_delete_location

Delete location.

brex_delete_title

Delete title.

brex_get_department

Get department.

brex_get_location

Get location.

brex_get_title

Get title.

brex_list_titles

List titles.

brex_update_department

Update department.

brex_update_location

Update location.

brex_update_title

Update title.

brex_get_trip

Get trip.

brex_get_trip_booking

Get booking.

brex_list_trip_bookings

List trip bookings.

brex_get_cost_center

Get cost center.

brex_get_legal_entity

Get legal entity.

brex_list_cost_centers

List cost centers.

Connect Brex to Claude, ChatGPT and Claude Code

Credentials off one Brex screen, then an endpoint your client signs into. Nothing to deploy, and nothing to install.

In Brex, go to Settings, then Developer, and click Create Token. Name it, pick Read only or Write for each area the AI should reach, click Allow Access, and paste the token into PopMCP. You need to be an account admin or card admin.

Brex API token••••••••••••3f7a
ConnectionVerified

Then just ask for the work

  • “How much did we spend on cards last month, by category?”

    • spend_summary
    • list_expenses
  • “Which October expenses are still missing a receipt or memo, and who do I need to chase?”

    • expenses_to_review
    • get_expense
    • upload_receipt
  • “Find every AWS charge between August and October over $500”

    • find_transactions
    • list_card_transactions
  • “Lock Sam's card, he just reported it lost”

    • list_users
    • list_cards
    • lock_card
  • “Get a $1,250 payment to Acme Supply ready, and show me before you send it”

    • prepare_transfer
    • create_transfer
    • get_transfer

Use Brex from the assistant you already open

One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.

Claude DesktopCustom connector

Add the PopMCP URL under Customize → Connectors and the tools appear in every chat.

Claude WebCustom connector

The same endpoint, registered in the browser. Nothing to install on the machine you are working from.

ChatGPTCustom connector

Register PopMCP as a custom connector, then let ChatGPT read and update the account.

CodexDesktop & CLI

Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.

OpenCodeCoding agent

Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.

ZCodeDesktop app

Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.

Brex MCP server questions

What teams ask before putting Brex behind an AI client.

What does PopMCP need to connect Brex?

One API token. In Brex, an account admin or card admin goes to Settings, then Developer, and clicks Create Token. The first time, your company accepts Brex's developer terms on that page. There is nothing to apply for, the token works straight away, and the connection is locked to the Brex account it belongs to.

Does the token expire?

Only if it goes unused. Brex stops a token after 90 days without a call, or when its owner stops being an active user. You can revoke it any time on the same Developer page. If that happens, a tool says so and you make a new token and reconnect.

Why not use Brex's own MCP server?

Brex's own server needs an admin to turn on a beta first and offers a chosen set of tools. PopMCP connects to the Brex API instead, which reaches far more, including transfers, card transactions, statements and company structure. Once that beta is on, the same token also reaches Brex's own tools for bills, banking transactions and spend questions, through list_official_tools and read_official_tool.

Can the AI see full card numbers?

No. PopMCP leaves out Brex's card number call and its call that emails card details, and never uses their permission, so only the last four digits are shown. Expiry dates are hidden too. A card number or security code sent to a tool is refused before it reaches Brex. Full bank account numbers come back as their last four.

Can the agent move money, or only read?

It can move money if you let it. create_transfer pays vendors by ACH, wire or check, create_incoming_transfer pulls funds in from a linked bank, update_vendor changes where money goes, and create_card and update_spend_limit let people spend. Those tools say so in their descriptions, and prepare_transfer lays a payment out for someone to confirm without sending anything. To keep it to reading, pick Read only when you make the token, or choose read-only for the connection in PopMCP.

A tool says a scope is missing. What do I do?

A token's scopes are fixed when it is made. The error names what the call accepts: make a new token with that one set to Read only or Write, and reconnect Brex in PopMCP with it. Custom fields are in beta, so an admin also turns them on in Settings, Beta features. Accounting records are in alpha and open by invitation from Brex.

Why can't I see pending transactions?

Brex's API only returns settled transactions. It also has no end date, search or amount filter on its transaction calls, so find_transactions reads the pages and applies those for you.

How many Brex operations does the connection expose?

108 operations across cards, expenses, transactions, statements, budgets, spend limits, vendors, transfers, people, company structure, travel, custom fields, accounting and webhooks, plus nine tools of PopMCP's own such as spend_summary and prepare_transfer. 41 load into your AI client by default and the rest stay searchable.

Which Brex events can PopMCP watch?

Webhook triggers cover transfers processed and failed, expense payment changes, people updated, and accounting records ready to export. Updated expenses, settled card transactions and trips are picked up by checking regularly, and so are new transfers, vendors, cards, people and card statements. Brex allows one webhook address per customer.

Do I have to run or host the Brex MCP server myself?

No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.

Which AI clients can use this MCP server?

Any client that supports a remote Streamable HTTP MCP server: Claude Desktop, Claude Web, Claude Code, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.

How do I connect Brex to Claude Code?

Connect Brex in PopMCP first, then run claude mcp add --transport http popmcp https://app.popmcp.com/mcp in a terminal. Inside Claude Code, run /mcp and sign in to PopMCP in the browser window it opens, ticking Brex on the consent screen. The Brex tools are then available in that session, and no Brex credential is stored on your machine.

Why do only 41 of the 115 tools load by default?

Loading 115 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 41-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. Every tool stays searchable, and on Scale the owner can load the full catalog for a teammate's connection.

What is the difference between a tool and a trigger?

A tool is something your AI calls, and there are 115 here. A trigger is something PopMCP watches for you: 13 Brex events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into Brex.

Connect Brex to your AI in minutes

Launch a hosted MCP endpoint for Brex, keep tool access under control, and start testing real workflow prompts right away.

Connect your first MCP