Prepare the server locally
Run this once before adding it to Claude Code.
git clone https://github.com/Cresium/cresium-mcp-server
cd cresium-mcp-serverThen follow the repository README for any remaining dependency or build steps.
Register it in Claude Code
claude mcp add -e "CRESIUM_API_KEY=${CRESIUM_API_KEY}" -e "CRESIUM_SECRET=${CRESIUM_SECRET}" -e "CRESIUM_COMPANY_ID=${CRESIUM_COMPANY_ID}" cresium -- node /absolute/path/to/cresium-mcp-server/build/index.jsReplace any placeholder paths in the command with the real path on your machine.
CRESIUM_API_KEYCRESIUM_SECRETCRESIUM_COMPANY_IDMake your agent remember this setup
cresium's config, env vars, and the gotchas you hit — recalled in every future Claude Code, Cursor, and Codex session.
npx conare@latestFree · one command · indexes the sessions already on disk. Set up in the browser instead →
What it does
- Manage financial transactions and payments
- Retrieve real-time wallet balances
- Automate invoice and payment creation
- Secure bank address lookups via CBU/CVU/alias
- Handle transaction approval workflows via signature requests
Tools 12
health_checkCheck API availabilityget_balanceGet wallet balances (balance, locked, invested, available)search_transactionsSearch transactions with filters and paginationget_transactionGet a single transaction by IDlookup_bank_addressLook up a CBU/CVU/alias to get the address IDcreate_transfer_previewCreate a transfer preview (does not execute)confirm_transactionConfirm a previewed transactioncreate_signature_requestRequest signer approval for a transactioncreate_paymentsCreate payments (accounts payable)create_invoicesCreate invoices (accounts receivable)list_paymentsList all company paymentslist_invoicesList all company invoicesEnvironment Variables
CRESIUM_API_KEYrequiredPartner API keyCRESIUM_SECRETrequiredPartner secret for HMAC signingCRESIUM_COMPANY_IDrequiredCompany ID to operate onTry it
Original README from Cresium/cresium-mcp-server
Cresium MCP Server
MCP (Model Context Protocol) server the Cresium API. Enables AI tools like Claude Code and Claude Desktop to manage transactions, payments, invoices, and balances through the Cresium Partner API (V3).
Prerequisites
You need a Cresium partner account with:
- API Key (
apiKey) - Secret (
secret) - Company ID (
companyId)
These are available from the Cresium Dashboard under your partner settings.
Installation
Claude Code
claude mcp add cresium-server \
-e CRESIUM_API_KEY=your_api_key \
-e CRESIUM_SECRET=your_secret \
-e CRESIUM_COMPANY_ID=your_company_id \
-- node /absolute/path/to/cresium-mcp-server/build/index.js
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"cresium": {
"command": "node",
"args": ["/absolute/path/to/cresium-mcp-server/build/index.js"],
"env": {
"CRESIUM_API_KEY": "your_api_key",
"CRESIUM_SECRET": "your_secret",
"CRESIUM_COMPANY_ID": "your_company_id"
}
}
}
}
Build from source
git clone <repo-url>
cd cresium-mcp-server
npm install
npm run build
Environment Variables
| Variable | Required | Description |
|---|---|---|
CRESIUM_API_KEY |
Yes | Partner API key |
CRESIUM_SECRET |
Yes | Partner secret for HMAC signing |
CRESIUM_COMPANY_ID |
Yes | Company ID to operate on |
Available Tools
| Tool | Description |
|---|---|
health_check |
Check API availability |
get_balance |
Get wallet balances (balance, locked, invested, available) |
search_transactions |
Search transactions with filters and pagination |
get_transaction |
Get a single transaction by ID |
lookup_bank_address |
Look up a CBU/CVU/alias to get the address ID |
create_transfer_preview |
Create a transfer preview (does not execute) |
confirm_transaction |
Confirm a previewed transaction |
create_signature_request |
Request signer approval for a transaction |
create_payments |
Create payments (accounts payable) |
create_invoices |
Create invoices (accounts receivable) |
list_payments |
List all company payments |
list_invoices |
List all company invoices |
Typical Workflow
Send a transfer
- Look up the destination:
lookup_bank_addresswith the CBU/CVU/alias - Create a preview:
create_transfer_previewwith the address ID, amount, and currency - Request approval:
create_signature_requestwith the transaction ID (signers approve from Dashboard)
Check balances and transactions
- Get balances:
get_balanceto see available funds per currency - Search transactions:
search_transactionswith date or status filters - Get details:
get_transactionwith a specific transaction ID
Authentication
All requests are signed using HMAC-SHA256. The server handles this transparently:
signature = HMAC-SHA256("{timestamp}|{METHOD}|{path}|{body}", secret) → base64
Headers sent on every request: x-api-key, x-company-id, x-timestamp, x-signature
License
MIT