🎯

mercury

🎯Skill

from vm0-ai/vm0-skills

VibeIndex|
What it does

Manages business bank accounts and financial operations through Mercury's API, enabling transaction tracking, transfers, and account insights.

πŸ“¦

Part of

vm0-ai/vm0-skills(138 items)

mercury

Installation

Add MarketplaceAdd marketplace to Claude Code
/plugin marketplace add vm0-ai/vm0-skills
Install PluginInstall plugin from marketplace
/plugin install notion@vm0-skills
Install PluginInstall plugin from marketplace
/plugin install slack-webhook@vm0-skills
git cloneClone repository
git clone https://github.com/vm0-ai/vm0-skills.git
πŸ“– Extracted from docs: vm0-ai/vm0-skills
10Installs
-
AddedFeb 4, 2026

Skill Details

SKILL.md

Mercury Banking API via curl. Use this skill to manage bank accounts, transactions, transfers, and financial operations.

Overview

# Mercury Banking API

Manage business bank accounts, transactions, transfers, and financial operations via Mercury's REST API.

> Official docs: https://docs.mercury.com/reference/getaccount

---

When to Use

Use this skill when you need to:

  • View account balances and details
  • List and search transactions
  • Create internal transfers between accounts
  • Manage recipients for external transfers
  • Download account statements
  • Access treasury account information

---

Prerequisites

  1. Sign up for a Mercury business bank account at https://mercury.com
  2. Go to Settings > Developers > API Tokens
  3. Create a new API token with appropriate permissions

Set environment variable:

```bash

export MERCURY_API_TOKEN="your-api-token"

```

> Important: When using $VAR in a command that pipes to another command, wrap the command containing $VAR in bash -c '...'. Due to a Claude Code bug, environment variables are silently cleared when pipes are used directly.

> ```bash

> bash -c 'curl -s "https://api.example.com" --header "Authorization: Bearer $API_KEY"'

> ```

---

Accounts

List All Accounts

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/accounts" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

Get Account by ID

Replace with the actual account ID:

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/account/" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

Get Account Cards

Replace with the actual account ID:

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/account//cards" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

---

Transactions

List Account Transactions

Replace with the actual account ID:

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/account//transactions" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

List Transactions with Filters

Filter by date range, status, or limit. Replace with the actual account ID:

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/account//transactions?limit=50&start=2024-01-01&end=2024-12-31" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

Get Transaction by ID

Replace and with the actual IDs:

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/account//transaction/" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

---

Transfers

Create Internal Transfer

Transfer funds between your Mercury accounts.

Write to /tmp/mercury_request.json:

```json

{

"toAccountId": "target-account-id",

"amount": 100.00,

"note": "Internal transfer"

}

```

Then run. Replace with the actual account ID:

```bash

bash -c 'curl -s -X POST "https://api.mercury.com/api/v1/account//internal-transfer" --header "Authorization: Bearer $MERCURY_API_TOKEN" --header "Content-Type: application/json" -d @/tmp/mercury_request.json'

```

Send Money Request

Initiate a money transfer request.

Write to /tmp/mercury_request.json:

```json

{

"recipientId": "recipient-id",

"amount": 100.00,

"paymentMethod": "ach",

"idempotencyKey": "unique-key-123"

}

```

Then run. Replace with the actual account ID:

```bash

bash -c 'curl -s -X POST "https://api.mercury.com/api/v1/account//send-money" --header "Authorization: Bearer $MERCURY_API_TOKEN" --header "Content-Type: application/json" -d @/tmp/mercury_request.json'

```

Get Send Money Request Status

Replace with the actual request ID:

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/request-send-money/" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

---

Recipients

List All Recipients

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/recipients" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

Get Recipient by ID

Replace with the actual recipient ID:

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/recipient/" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

Create Recipient

Write to /tmp/mercury_request.json:

```json

{

"name": "Vendor Name",

"emails": ["vendor@example.com"],

"paymentMethod": "ach",

"electronicRoutingInfo": {

"accountNumber": "123456789",

"routingNumber": "021000021",

"bankName": "Example Bank",

"electronicAccountType": "businessChecking"

}

}

```

Then run:

```bash

bash -c 'curl -s -X POST "https://api.mercury.com/api/v1/recipients" --header "Authorization: Bearer $MERCURY_API_TOKEN" --header "Content-Type: application/json" -d @/tmp/mercury_request.json'

```

---

Statements

List Account Statements

Replace with the actual account ID:

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/account//statements" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

Download Statement PDF

Replace and with the actual IDs:

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/account//statement//pdf" --header "Authorization: Bearer $MERCURY_API_TOKEN"' > statement.pdf

```

---

Organization

Get Organization Info

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/organization" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

---

Treasury

List Treasury Accounts

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/treasury" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

Get Treasury Account by ID

Replace with the actual treasury ID:

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/treasury/" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

List Treasury Transactions

Replace with the actual treasury ID:

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/treasury//transactions" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

---

Users

List Users

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/users" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

---

Credit

List Credit Accounts

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/credit" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

---

Accounts Receivable

List Customers

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/accounts-receivable/customers" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

Create Customer

Write to /tmp/mercury_request.json:

```json

{

"name": "Customer Name",

"email": "customer@example.com"

}

```

Then run:

```bash

bash -c 'curl -s -X POST "https://api.mercury.com/api/v1/accounts-receivable/customers" --header "Authorization: Bearer $MERCURY_API_TOKEN" --header "Content-Type: application/json" -d @/tmp/mercury_request.json'

```

List Invoices

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/accounts-receivable/invoices" --header "Authorization: Bearer $MERCURY_API_TOKEN"'

```

Create Invoice

Write to /tmp/mercury_request.json:

```json

{

"customerId": "customer-id",

"lineItems": [{"description": "Service", "amount": 500.00}],

"dueDate": "2024-12-31"

}

```

Then run:

```bash

bash -c 'curl -s -X POST "https://api.mercury.com/api/v1/accounts-receivable/invoices" --header "Authorization: Bearer $MERCURY_API_TOKEN" --header "Content-Type: application/json" -d @/tmp/mercury_request.json'

```

Download Invoice PDF

Replace with the actual invoice ID:

```bash

bash -c 'curl -s "https://api.mercury.com/api/v1/accounts-receivable/invoice//pdf" --header "Authorization: Bearer $MERCURY_API_TOKEN"' > invoice.pdf

```

---

Guidelines

  1. Rate Limits: Mercury may enforce rate limits; implement appropriate backoff strategies for high-volume operations
  2. Idempotency: Use idempotencyKey for transfer operations to prevent duplicate transactions
  3. Security: Never expose API tokens in logs or client-side code
  4. Amounts: All monetary amounts are typically in USD and represented as decimal numbers
  5. Pagination: For large result sets, use limit and offset parameters where supported

---

API Reference

  • Documentation: https://docs.mercury.com/reference/getaccount
  • Dashboard: https://dashboard.mercury.com

More from this repository10