# Orum MCP connector

The Orum connector lets Claude, ChatGPT, Cursor, and the Elaichi Agent look up, create, and update the people, businesses, bank accounts, and cards you pay through Orum, with every action tied to the person who signed in and recorded in an audit log.

Source: https://elaichi.ai/connectors/orum/

## Facts

| | |
| --- | --- |
| Application | Orum |
| Category | Payment Gateway |
| AI tools | 70 |
| Authentication | App credentials |
| Needs your own OAuth app | No |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | No. 70 tools is past the 30-tool threshold, so clients use `search_tools` and `execute_tool` |

## What you can ask once Orum is connected

- Which deliver businesses had failed payments this week?
- List deliver persons added in the last 30 days.
- Show total transfers processed by deliver business this month.

## Connect Orum in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick Orum.
2. Optionally set Share with, then press Connect.
3. Paste your Orum app credentials. Orum authenticates the app rather than a person. One person supplies the credentials once, and everyone else works through Share with.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which Orum tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Connect Orum to Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## Connect Orum to ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## Connect Orum to Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect Orum to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a Orum tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with Orum through Elaichi

### Add a new payee before the first payout

Finance. When a contractor or vendor is ready to be paid, create the person or business in Orum and attach their bank account in one ask, instead of clicking through the dashboard field by field.

### Fix a payee's bank details after a bounce

Operations. When a payout fails because an account number changed, find the payee in Orum, correct the external account, and confirm the update landed, all from the chat you are already in.

### Answer 'where is my payment' without switching tabs

Support. Pull up a customer's Orum record, see which bank accounts and cards are on file, and tell them exactly which one their money is headed to.

### Review who is set up to receive money

Compliance. List every person and business in Orum, check the details against your own records, and flag anything that looks incomplete or out of date.

### Update many payee records at once

Payments operations. When a batch of vendors moves to a new legal entity or address, apply the change across all the affected Orum businesses in a single request rather than one at a time.

### Check a new customer is fully set up

Onboarding. Before their first payout, confirm the Orum person exists, has at least one bank account or card linked, and that nothing is missing from the record.

## Frequently asked questions

### How do I connect Orum to Claude?

Connecting Orum to Claude takes two steps. First, connect Orum in Elaichi by pasting the app credentials from your Orum dashboard; there is no OAuth application to register and no client ID or secret to generate. Then open Claude, go to Customize, then Connectors, then Add, and paste the Elaichi endpoint https://api.elaichi.ai/mcp. Claude signs you in as yourself and Orum is ready to use.

### Does Orum work with ChatGPT and Cursor as well as Claude?

Yes. Once Orum is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any other MCP client, and the Elaichi Agent. You connect Orum once and every client you use picks it up.

### What can an AI agent actually do with my Orum data?

With Orum connected, an agent can find a payee by name, create a new person or business to pay, add or correct their bank account, see which cards are on file, and update many records in one go. Orum has a lot of actions available, so the agent searches for the right one as you ask; short concrete requests like 'update the bank account for Acme Ltd' work better than long paragraphs.

### Does connecting Orum give the AI access to everything in my Orum account?

No. The AI acts inside the access of the person who signed in, so it can only see and change the Orum payees, bank accounts, and cards that person could already reach. Elaichi can narrow that further by blocking specific actions for a team, but it can never grant more than the signed-in person already has in Orum.

### Can my team share one Orum connection?

Yes. One person connects Orum in Elaichi and shares the connection with a team, and nobody else ever handles the Orum app credentials. Each teammate still signs in to Elaichi as themselves, so every action on an Orum payee or bank account is logged under the name of the person who asked for it.

### Can I stop an agent from deleting or changing things in Orum?

Yes. Restrictions in Elaichi work per action, so you can allow looking up Orum payees while blocking deleting a person, a business, or a bank account. A blocked action is never shown to Claude, ChatGPT, or any other client at all, so no prompt, however worded, can reach it.

### What happens to an Orum connection when someone leaves the company?

When you offboard someone in Elaichi, their access to Orum through every AI client ends at once. If they had shared an Orum connection with a team, it keeps working for everyone else. If you ever want Orum gone entirely, disconnecting it once in Elaichi removes it from Claude, ChatGPT, Cursor, and every other client together.

## All 70 Orum tools

Every tool below is callable through https://api.elaichi.ai/mcp once Orum is connected, subject to the toolbox it is in and the restrictions on the caller.

- **List all Orum deliver persons** (List). List all persons in Orum Deliver, ordered by most recently created. Returns: id, customer_reference_id, first_name, middle_name, last_name, date_of_birth, status, addresses, contacts, status_reasons, created_at, updated_at, closed_at, metadata, social_security_number. Max 500 results per page.
- **Create a Orum deliver person** (Create). Create a person in Orum Deliver to represent a human customer. Returns the created person object including id, customer_reference_id, first_name, last_name, date_of_birth, status, and created_at. Required: customer_reference_id, first_name, last_name.
- **Orum deliver persons bulk update** (Update). Update a person in Orum Deliver by customer reference id. Returns the updated person object including id, customer_reference_id, first_name, last_name, status, and updated_at. Required: customer_reference_id, first_name, last_name.
- **Get single Orum deliver person by ID** (Get). Get a person by id in Orum. Returns the person object including id, customer_reference_id, first_name, last_name, status, addresses, and created_at. Required: id.
- **Update a Orum deliver person by ID** (Update). Update a person by id in Orum. Returns the updated person object including id, customer_reference_id, first_name, last_name, status, addresses, and updated_at. Customer reference id cannot be changed. Required: id, customer_reference_id, first_name, last_name.
- **Orum deliver persons partial update** (Update). Partially update a person in Orum by id, updating individual fields on the person object. Returns the updated person including id, customer_reference_id, first_name, last_name, status, created_at, and updated_at. Required: id.
- **Delete a Orum deliver person by ID** (Delete). Close a person in Orum by id so they are unable to transact. The person transitions to a 'closed' status. Returns the closed person including id, customer_reference_id, first_name, last_name, status, created_at, and updated_at. Deleted persons remain in GET responses but cannot be re-opened. Required: id.
- **List all Orum deliver businesses** (List). List all businesses in Orum with optional filtering by customer_reference_id, status, legal_name, account_number, id, or time range. Returns: id, customer_reference_id, legal_name, business_name, entity_type, tax_id_type, account_holder_name, incorporation_date, status, addresses, contacts, created_at, updated_at, closed_at, metadata, tax_id.
- **Create a Orum deliver business** (Create). Create a business customer in Orum. Returns the created business object including id, customer_reference_id, legal_name, status, created_at, and addresses. Required: customer_reference_id, legal_name.
- **Orum deliver businesses bulk update** (Update). Update a business in Orum by customer reference id. Returns the updated business object including id, customer_reference_id, legal_name, status, and updated_at. Required: customer_reference_id, legal_name.
- **Get single Orum deliver business by ID** (Get). Get a single business in Orum by id. Returns the business object including id, customer_reference_id, legal_name, status, created_at, and updated_at. Required: id.
- **Update a Orum deliver business by ID** (Update). Update a business in Orum by id. Returns the updated business object including id, customer_reference_id, legal_name, status, and updated_at. Required: id, customer_reference_id, legal_name.
- **Orum deliver businesses partial update** (Update). Partially update a business in Orum by id, changing only the fields provided in the request body. Returns the updated business object including id, customer_reference_id, legal_name, entity_type, status, addresses, contacts, created_at, and updated_at. Required: id.
- **Delete a Orum deliver business by ID** (Delete). Close a business in Orum by id so it can no longer transact. Returns the closed business object including id, customer_reference_id, legal_name, status, created_at, and closed_at. The resource transitions to closed status, cannot be re-opened, and reference IDs cannot be reused. Required: id.
- **List all Orum external accounts** (List). List all external accounts in Orum. Returns each account with id, account_reference_id, customer_reference_id, customer_resource_type, account_type, account_number, routing_number, account_holder_name, status, created_at, updated_at, and closed_at. Max 500 results per page.
- **Create a Orum external account** (Create). Create a new external account in Orum. Returns the created account object with id, account_reference_id, customer_reference_id, customer_resource_type, account_type, account_number, routing_number, account_holder_name, status, created_at, updated_at, and closed_at. Required: account_reference_id, customer_reference_id, customer_resource_type, account_type, account_number, routing_number, account_holder_name.
- **Orum external accounts bulk update** (Update). Update an external account in Orum by its account reference id. Returns the updated account object with id, account_reference_id, customer_reference_id, customer_resource_type, account_type, account_number, routing_number, account_holder_name, status, created_at, updated_at, and closed_at. Required: account_reference_id, customer_reference_id, customer_resource_type, account_type, account_number, routing_number, account_holder_name.
- **Get single Orum external account by ID** (Get). Get a single external account in Orum by id. Returns the account object with id, account_reference_id, customer_reference_id, customer_resource_type, account_type, account_number, routing_number, account_holder_name, status, created_at, updated_at, and closed_at. Required: id.
- **Update a Orum external account by ID** (Update). Update an external account in Orum by id. Returns the updated account object with id, account_reference_id, customer_reference_id, customer_resource_type, account_type, account_number, routing_number, account_holder_name, status, created_at, updated_at, and closed_at. Required: id, account_reference_id, customer_reference_id, customer_resource_type, account_type, account_number, routing_number, account_holder_name.
- **Orum external accounts partial update** (Update). Partially update an external account in Orum by id, modifying individual fields on the account object. Returns the external_account object including id, account_holder_name, account_number, routing_number, account_type, status, customer_reference_id, customer_resource_type, created_at, updated_at, and closed_at. Required: id.
- **Delete a Orum external account by ID** (Delete). Close an external account in Orum by id so it can no longer transact. Returns the external_account object including id, account_holder_name, account_number, account_reference_id, account_type, status, routing_number, customer_reference_id, customer_resource_type, created_at, closed_at, and updated_at. Deleted resources cannot be re-opened and their reference IDs cannot be reused. Required: id.
- **List all Orum person external accounts** (List). List all external accounts for a specific person in Orum. Returns: id, account_reference_id, customer_reference_id, customer_resource_type, account_type, account_number, routing_number, account_holder_name, status, created_at, updated_at, closed_at, metadata. Required: person_id.
- **List all Orum business external accounts** (List). List all external bank accounts for a specific business in Orum. Returns each account's id, account_reference_id, customer_reference_id, account_number, routing_number, account_type, account_holder_name, status, customer_resource_type, metadata, created_at, updated_at, and closed_at when applicable. Required: business_id.
- **List all Orum deliver cards** (List). List cards in Orum, optionally filtered by customer reference id and card status. Returns: id, account_reference_id, customer_reference_id, customer_resource_type, account_holder_name, status, pull_eligible, push_eligible, address, created_at, updated_at, closed_at, metadata, last4, expiration_month, expiration_year, status_reasons.
- **Create a Orum deliver card** (Create). Create a card object in Orum. Returns the created card object including its id, account_reference_id, account_holder_name, address, status, created_at, and updated_at. Required: account_reference_id, customer_reference_id, customer_resource_type, account_holder_name, address, number, expiration_month, expiration_year.
- **Get single Orum deliver card by ID** (Get). Get a single card by id in Orum. Returns the card object including id, account_reference_id, status, last4, expiration_month, expiration_year, account_holder_name, address, created_at, and updated_at. Required: id.
- **Delete a Orum deliver card by ID** (Delete). Close a card by id in Orum so it can no longer transact. Returns the closed card object including id, account_reference_id, status, last4, created_at, and closed_at. Deleted cards cannot be reopened and their reference IDs cannot be reused. Required: id.
- **List all Orum deliver transfers** (List). List all Orum transfer objects. Returns: id, transfer_reference_id, amount, currency, speed, source, destination, status, status_reasons, account_statement_descriptor, estimated_funds_delivery_date, created_at, updated_at, metadata, transfer_group_id, schedule_id, subledger_reference_id. Filter by status, transfer_reference_id, transfer_group_id, schedule_id, or subledger_reference_id. Max 500…
- **Create a Orum deliver transfer** (Create). Initiate a transfer in Orum between a source and destination party. Returns the created transfer object including id, transfer_reference_id, status, amount, currency, speed, source, destination, created_at, updated_at. Required: transfer_reference_id, amount, currency, speed.
- **Get single Orum deliver transfer by ID** (Get). Get a single Orum transfer by id. Returns the transfer object including id, transfer_reference_id, status, amount, currency, speed, source, destination, created_at, updated_at. Required: id.
- **Update a Orum deliver transfer by ID** (Update). Update metadata on an Orum transfer by id. Returns the updated transfer object including id, transfer_reference_id, status, amount, currency, speed, source, destination, metadata, and updated_at. Required: id, metadata.
- **Orum deliver transfers cancel** (Cancel). Cancel an Orum transfer by transfer_id if the transfer is eligible for cancellation. Returns: message. Cancellation is processed asynchronously. Required: transfer_id.
- **Orum deliver transfers get transfer history** (Get). Get the history of status changes for an Orum transfer by id. Returns: statuses. Required: transfer_id.
- **List all Orum deliver subledgers** (List). List all subledger objects in Orum. Returns: id, subledger_reference_id, customer_reference_id, customer_resource_type, status, created_at, updated_at, closed_at. Filterable by subledger_reference_id.
- **Create a Orum deliver subledger** (Create). Create a subledger in Orum to represent a separate pool of funds attached to an existing customer. Returns: subledger. Required: subledger_reference_id, customer_reference_id.
- **Get single Orum deliver subledger by ID** (Get). Get a single Orum subledger by id. Returns: subledger. Required: id.
- **List all Orum deliver schedules** (List). List all schedule objects in Orum Deliver for recurring transfers, optionally filtered by status. Returns: id, schedule_reference_id, status, amount, currency, speed, source, destination, start_date, recurrence, next_payment_date, created_at, updated_at, rrule_readable. Filter by status using active or inactive.
- **Create a Orum deliver schedule** (Create). Create a schedule. Returns: schedule. Required: schedule_reference_id, amount, currency, speed, start_date, recurrence.
- **Get single Orum deliver schedule by ID** (Get). Get a single schedule in Orum by its Orum-generated id. Returns the schedule object including id, status, created_at, and updated_at. Required: id.
- **Delete a Orum deliver schedule by ID** (Delete). Delete a single schedule in Orum by its Orum-generated id. Returns the deleted schedule object including id, status, created_at, and updated_at. Required: id.
- **Create a Orum schedules rrule** (Create). Validate and parse an RRULE string in Orum. Returns: start_date, rrule_string, rrule_readable, occurrences. Requires a request body with RRULE validation parameters as defined in the Orum API reference. Required: start_date, recurrence.
- **List all Orum deliver eligibilities** (List). List all routing numbers eligible for RTP and FedNow in Orum. Returns: routing_number, eligible.
- **Create a Orum deliver eligibility** (Create). Check if a specific routing number is eligible for RTP or FedNow in Orum. Returns: routing_numbers. Required: routing_numbers.
- **List all Orum deliver transfer groups** (List). List all Orum transfer groups sorted by most recently created. Returns: id, created_at, updated_at, transfer_group_reference_id, source, destination. Results are paginated; filter by transfer_group_reference_id to find a specific group. Max 500 results per page.
- **Create a Orum deliver transfer group** (Create). Create a Transfer Group in Orum. Returns: transfer_group. Required: transfer_group_reference_id.
- **Get single Orum deliver transfer group by ID** (Get). Get a transfer group in Orum by its UUID id. Returns: transfer_group. Required: id.
- **List all Orum deliver booktransfers** (List). List all book transfer objects in Orum. Returns: id, book_transfer_reference_id, status, subledger_reference_id, created_at, updated_at. Results can be filtered by book_transfer_reference_id, status, or subledger_reference_id. Max 500 results per page.
- **Create a Orum deliver booktransfer** (Create). Create a book transfer. Returns: book_transfer. Required: book_transfer_reference_id, amount, currency.
- **Get single Orum deliver booktransfer by ID** (Get). Get a book transfer. Returns: book_transfer. Required: id.
- **List all Orum deliver balances** (List). Get the enterprise account balance in Orum. Returns the enterprise account balance object.
- **List all Orum balance subledgers** (List). List all subledger account balances in Orum. Returns the subledger balance object including id. Max 500 results per page.
- **Get single Orum balance subledger by ID** (Get). Get a subledger account balance by id in Orum. Returns: balance. Required: id.
- **List all Orum reports recons** (List). List all reconciliation reports in Orum. Returns: id, created_at, start_time, end_time, status, report_scope, subledger_reference_id, updated_at.
- **Create a Orum reports recon** (Create). Create a reconciliation report in Orum for a requested date range. Returns: report. Required: start_time, end_time.
- **Get single Orum reports recon by ID** (Get). Get a single reconciliation report in Orum by id. Returns: report. Required: id.
- **Delete a Orum deliver report by ID** (Delete). Delete a single report in Orum by id. Returns an empty 204 response on success. Required: id.
- **Get single Orum report download by ID** (Get). Download a single report from Orum as a CSV file. Returns a CSV file containing the report data. Required: id.
- **List all Orum reports balances** (List). Get a balance statement summary report in Orum for the requested start and end date. Returns a balance report object with report-specific fields defined by the upstream BalanceReportResponse schema. Required: start_time, end_time.
- **List all Orum verify accounts** (List). List all verify accounts in Orum, sorted by most recently created. Returns: id, created_at, updated_at, account_number, routing_number, account_holder_name, email, verification_status, status_reason, ownership_status, person, business, control_status, debit_status, debit_status_reason, estimated_verification_date, sender_name. Max 500 results per page.
- **Create a Orum verify account** (Create). Request account verification in Orum by submitting bank account details. Returns the verify account object including id, account_number, verification_status, ownership_status, control_status, and debit_status. Requires a JSON request body with the account details to verify. Required: account_number, routing_number, account_holder_name.
- **Get single Orum verify account by ID** (Get). Get a single verify account in Orum by id. Returns: account. Required: id.
- **Create a Orum account control** (Create). Verify control for a single Orum verify account by account id. Returns the verify account object including id, account_number, verification_status, control_status, debit_status, and created_at. Required: account_id, statement_code.
- **Create a Orum account debit** (Create). Verify debit status for a single Orum verify account. Returns: account. Required: account_id.
- **List all Orum webhooks configurations** (List). List webhook configurations in Orum. Returns: id, url, event_types, enabled, created_at.
- **Create a Orum webhooks configuration** (Create). Create a webhook configuration in Orum with a destination URL and subscribed event types. Returns: webhook_configuration. The webhook URL must use HTTPS. Required: event_types, url, enabled.
- **Update a Orum webhooks configuration by ID** (Update). Update a webhook configuration in Orum by id. Returns the updated configuration including id, url, events, enabled, and created_at. Required: id, event_types, url, enabled.
- **Delete a Orum webhooks configuration by ID** (Delete). Delete a webhook configuration in Orum by id. Returns an empty 204 response on success. Required: id.
- **List all Orum webhooks secrets** (List). Retrieve the Orum webhook public-private key pair used to verify incoming webhook signatures. Returns: enterprise_keypair.
- **Create a Orum webhooks secret** (Create). Initialize a new Orum webhook public-private key pair for signing and verifying webhook requests. Returns: enterprise_keypair.
- **Create a Orum webhooks invoke** (Create). Invoke a test webhook event in Orum to trigger a sample delivery to your configured endpoint. The body accepts one of seven event-type-specific test request schemas (person, business, external account, transfer, verify account, subledger, book transfer). Returns an empty 201 response on success.
