mcp-coinbase

mcp-coinbase

Browser-automated MCP server for Coinbase crypto exchange, enabling live prices, portfolio management, transaction history, and trading.

Category
Visit Server

README

@striderlabs/mcp-coinbase

MCP (Model Context Protocol) server for Coinbase crypto exchange. Provides browser-automated tools for live prices, portfolio management, transaction history, and trading.

Tools

Tool Description
get_prices Get current cryptocurrency prices from Coinbase
get_portfolio Get your Coinbase portfolio balances and values
get_transactions Get recent transaction history
buy_crypto Place a buy order (with preview mode)
sell_crypto Place a sell order (with preview mode)
get_wallet_address Get your deposit address for a cryptocurrency

Installation

npm install -g @striderlabs/mcp-coinbase
npx playwright install chromium

Or from the tarball:

npm install -g striderlabs-mcp-coinbase-1.0.0.tgz
npx playwright install chromium

Configuration

Set these environment variables before running:

export COINBASE_EMAIL="your@email.com"
export COINBASE_PASSWORD="yourpassword"
export COINBASE_2FA_CODE="123456"   # optional: TOTP code, or leave blank to enter manually

Usage with Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "coinbase": {
      "command": "mcp-coinbase",
      "env": {
        "COINBASE_EMAIL": "your@email.com",
        "COINBASE_PASSWORD": "yourpassword"
      }
    }
  }
}

Or using npx:

{
  "mcpServers": {
    "coinbase": {
      "command": "npx",
      "args": ["-y", "@striderlabs/mcp-coinbase"],
      "env": {
        "COINBASE_EMAIL": "your@email.com",
        "COINBASE_PASSWORD": "yourpassword"
      }
    }
  }
}

Tool Reference

get_prices

Get current spot prices for one or more cryptocurrencies.

{
  "symbols": ["BTC", "ETH", "SOL"],
  "currency": "USD"
}

Returns live prices fetched from the Coinbase public API — no login required.

get_portfolio

Get your full portfolio with balances and USD values. Requires login.

{}

get_transactions

Get recent transaction history.

{
  "limit": 20
}

buy_crypto

Place a buy order. Use confirm: false (default) to preview the order without executing.

{
  "symbol": "BTC",
  "amount_usd": 100,
  "confirm": false
}

Set confirm: true to execute the trade.

sell_crypto

Place a sell order. Use confirm: false (default) to preview.

{
  "symbol": "ETH",
  "amount_crypto": 0.5,
  "confirm": false
}

get_wallet_address

Get your deposit address for a cryptocurrency.

{
  "symbol": "BTC"
}

2FA Handling

The server handles two-factor authentication gracefully:

  • If COINBASE_2FA_CODE is set, it will be used automatically
  • Otherwise, the server waits up to 60 seconds for you to complete 2FA in the browser
  • The browser session is reused across tool calls to minimize repeated logins

Browser Automation

This package uses Playwright with stealth mode (via playwright-extra + puppeteer-extra-plugin-stealth) to automate the Coinbase web interface. This approach:

  • Works with Coinbase's standard web UI
  • Handles dynamic page content
  • Bypasses basic bot detection via stealth plugin

Development

git clone https://github.com/markswendsen-code/mcp-coinbase
cd mcp-coinbase
npm install
npx playwright install chromium
npm run build

Run in dev mode (with tsx, no build step):

npm run dev

Security Notes

  • Never commit your Coinbase credentials to version control
  • Use environment variables for all sensitive configuration
  • The confirm: false default on buy/sell prevents accidental trades
  • Review all trades carefully before setting confirm: true

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured