Skip to main content

ramp-mcp: A Ramp MCP server

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 git@github.com: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.

Metadata

Release files for iflow-mcp_ramp-mcp 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iflow-mcp_ramp-mcp 0.0.1
File Size Uploaded
iflow_mcp_ramp_mcp-0.0.1.tar.gz 10.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iflow-mcp_ramp-mcp 0.0.1
File Interpreter ABI Platform
iflow_mcp_ramp_mcp-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 23.6 kB

Release files / iflow_mcp_ramp_mcp-0.0.1.tar.gz

Download URL iflow_mcp_ramp_mcp-0.0.1.tar.gz
Size 10.7 kB
Tags Source
SHA-256 checksum
How to use checksums
660f8c130bd661b5149f4317c35ddd55eca630a82fb376064b5513254bf5af7e
BLAKE2b-256 checksum
How to use checksums
6669105d4088c0cff5f658659b25dd8f5628046dd1b71815eb2270df2ff614d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.6.9

Release files / iflow_mcp_ramp_mcp-0.0.1-py3-none-any.whl

Download URL iflow_mcp_ramp_mcp-0.0.1-py3-none-any.whl
Size 12.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2f34cd21368a2df06902401efd81fda9024b926c14d76d9a80e2a542219152a4
BLAKE2b-256 checksum
How to use checksums
dd676d1e8bf23c0174acb67b580b27b9f63f471786626c3e7f50b0f1565a8cc7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.6.9

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page