Ramp

Official

by ramp-public

33 222 downloads Not rated yet MIT

About

Interact with [Ramp](https://ramp.com)'s Developer API to run analysis on your spend and gain insights leveraging LLMs

Details

License
MIT

Explore

- Database tools: process_data, execute_query, clear_table for ephemeral SQLite.
- Fetch tools: get_ramp_categories, get_currencies for direct data retrieval.
- Load tools: loads 11 data types (transactions, reimbursements, bills, etc.) via scoped API endpoints.
- Uses OAuth 2.0 client credentials grant for authentication.
- Operates against a demo environment by default; switch to production with RAMP_ENV=prd.
- In-memory data store resets after each session.

Run the MCP server from your CLI with:

RAMP_CLIENT_ID=... RAMP_CLIENT_SECRET=... RAMP_ENV=<demo|prd> uv run ramp-mcp -s <COMMA-SEPARATED-SCOPES>

1. Create a new client from the Ramp developer page (Profile on top right > Developer > Create app)
2. Grant the scopes you wish (based on tools) to the client and enable client credentials (Click on App > Grant Types / Scopes)
3. Include the client ID and secret in the config file as well as the scopes you wish to use

1. Clone this Github repo via git clone [email protected]:ramp/ramp-mcp.git or equivalent
2. Install uv

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "ramp-mcp": {
      "command": "uv",
      "args": [
        "--directory",
        "/<ABSOLUTE-PATH-TO>/ramp-mcp", // make sure to update this path
        "run",
        "ramp-mcp",
        "-s",
        "transactions:read,reimbursements:read"
      ],
      "env": {
        "RAMP_CLIENT_ID": "<CLIENT_ID>",
        "RAMP_CLIENT_SECRET": "<CLIENT_SECRET>",
        "RAMP_ENV": "<demo|qa|prd>"
      }
    }
  }
}

If this file doesn't exist yet, create one in /<ABSOLUTE-PATH-TO>/Library/Application Support/Claude/

load_transactions

transactions:read

load_reimbursements

reimbursements:read

load_bills

bills:read

load_locations

locations:read

load_departments

departments:read

load_bank_accounts

bank_accounts:read

load_vendors

vendors:read

load_vendor_bank_accounts

vendors:read

load_entities

entities:read

load_spend_limits

limits:read

load_spend_programs

spend_programs:read

load_users

users:read

Tools that can be used to setup, process, query, and delete an ephemeral database in memory.

1. process_data
2. execute_query
3. clear_table

Tools that can be used to fetch data directly

1. get_ramp_categories
2. get_currencies

Loads data to server which the client can fetch. Based on the tools you wish to use, ensure to enable those scopes on your
Ramp client and include the scopes when starting the server as a CLI argument.

| Tool | Scope |
| ------------------------- | ------------------- |
| load_transactions | transactions:read |
| load_reimbursements | reimbursements:read |
| load_bills | bills:read |
| load_locations | locations:read |
| load_departments | departments:read |
| load_bank_accounts | bank_accounts:read |
| load_vendors | vendors:read |
| load_vendor_bank_accounts | vendors:read |
| load_entities | entities:read |
| load_spend_limits | limits:read |
| load_spend_programs | spend_programs:read |
| load_users | users:read |

For large datasets, it is recommended to explicitly prompt Claude not to use REPL and to keep responses concise to avoid timeout or excessive token usage.

Overview

A Model Context Protocol server for retrieving and analyzing data or running tasks for Ramp using Developer API. In order to get around token and input size limitations, this server implements a simple ETL pipeline + ephemeral sqlite database in memory for analysis by an LLM. All requests are made to demo by default, but can be changed by setting RAMP_ENV=prd. Large datasets may not be processable due to API and/or your MCP client limitations.

Tools

Database tools

Tools that can be used to setup, process, query, and delete an ephemeral database in memory.

1. process_data
2. execute_query
3. clear_table

Fetch tools

Tools that can be used to fetch data directly

1. get_ramp_categories
2. get_currencies

Load tools

Loads data to server which the client can fetch. Based on the tools you wish to use, ensure to enable those scopes on your
Ramp client and include the scopes when starting the server as a CLI argument.

| Tool | Scope |
| ------------------------- | ------------------- |
| load_transactions | transactions:read |
| load_reimbursements | reimbursements:read |
| load_bills | bills:read |
| load_locations | locations:read |
| load_departments | departments:read |
| load_bank_accounts | bank_accounts:read |
| load_vendors | vendors:read |
| load_vendor_bank_accounts | vendors:read |
| load_entities | entities:read |
| load_spend_limits | limits:read |
| load_spend_programs | spend_programs:read |
| load_users | users:read |

For large datasets, it is recommended to explicitly prompt Claude not to use REPL and to keep responses concise to avoid timeout or excessive token usage.

Setup

Ramp Setup

1. Create a new client from the Ramp developer page (Profile on top right > Developer > Create app)
2. Grant the scopes you wish (based on tools) to the client and enable client credentials (Click on App > Grant Types / Scopes)
3. Include the client ID and secret in the config file as well as the scopes you wish to use

Local Setup

1. Clone this Github repo via git clone [email protected]:ramp/ramp-mcp.git or equivalent
2. Install uv

Usage

Run the MCP server from your CLI with:

RAMP_CLIENT_ID=... RAMP_CLIENT_SECRET=... RAMP_ENV=<demo|prd> uv run ramp-mcp -s <COMMA-SEPARATED-SCOPES>

Configuration

Usage with Claude Desktop

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "ramp-mcp": {
      "command": "uv",
      "args": [
        "--directory",
        "/<ABSOLUTE-PATH-TO>/ramp-mcp", // make sure to update this path
        "run",
        "ramp-mcp",
        "-s",
        "transactions:read,reimbursements:read"
      ],
      "env": {
        "RAMP_CLIENT_ID": "<CLIENT_ID>",
        "RAMP_CLIENT_SECRET": "<CLIENT_SECRET>",
        "RAMP_ENV": "<demo|qa|prd>"
      }
    }
  }
}

If this file doesn't exist yet, create one in /<ABSOLUTE-PATH-TO>/Library/Application Support/Claude/

License

Copyright (c) 2025, Ramp Business Corporation
All rights reserved.
This source code is licensed under the MIT License found in the LICENSE file in the root directory of this source tree.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.

Videos about Ramp

Relevant YouTube tutorials, setups, and demos