Skip to main content

MCP server for Trading 212 - 32 tools for portfolio management, trading, pies, dividends, and analytics. Works with Claude, ChatGPT, Cursor, and any MCP client.

Project description

Trading 212 MCP Server

PyPI Downloads License: MIT Glama Python MCP Tools

Connect your AI assistant to your Trading 212 brokerage account. Ask questions about your portfolio, place trades, manage pies, and analyze dividends - all through natural language.

Works with Claude Desktop, Claude Code, ChatGPT, Gemini, Cursor, Windsurf, and any client that supports the Model Context Protocol (MCP).

Why this server?

  • 32 tools covering the full Trading 212 API, plus 4 analytics tools that combine multiple API calls into actionable insights
  • Smart rate limiting - reads T212's rate limit headers, auto-waits, and retries on 429 (up to 3 times). No rate limit errors leak to your AI
  • Zero config - install from PyPI, add your API key, done. No Docker, no database, no Redis
  • Typed responses - every tool returns structured Pydantic models, not raw JSON
  • Paper trading - set ENVIRONMENT=demo to test with virtual money first

What can it do?

Category Tools Examples
Analytics Portfolio summary, performance, dividends, activity "Show me my portfolio P&L"
Trading Market, limit, stop, stop-limit orders "Buy 5 shares of AAPL"
Portfolio Positions, cash balance, account info "What's my cash balance?"
Pies Create, update, duplicate, delete pies "Show my pie allocations"
Market Data Instrument search, exchange schedules "Search for Tesla"
History Past orders, dividends, transactions, CSV exports "Show my dividend history"

Analytics tools

These combine multiple API calls into single high-level responses:

  • fetch_portfolio_summary - Complete snapshot: total value, P&L, cash, top holdings, allocation
  • fetch_portfolio_performance - Per-position returns with dividends, best/worst performers
  • fetch_dividend_summary - Income analysis grouped by ticker and month
  • fetch_recent_activity - Combined timeline of trades and transactions

Quick start

Install

uvx trading212-mcp-server

Or via pip:

pip install trading212-mcp-server

Get your API credentials

From the Trading 212 app: Settings > API (Beta). You need both the API Key and Secret - the server uses Basic Auth.

Connect to Claude Desktop

Add to claude_desktop_config.json (Windows: %APPDATA%\Claude\, Mac: ~/Library/Application Support/Claude/):

{
  "mcpServers": {
    "trading212": {
      "command": "uvx",
      "args": ["trading212-mcp-server"],
      "env": {
        "TRADING212_API_KEY": "<your-api-key>",
        "TRADING212_API_SECRET": "<your-api-secret>",
        "ENVIRONMENT": "live"
      }
    }
  }
}

Connect to Claude Code

claude mcp add trading212 -- uvx trading212-mcp-server

Then set the environment variables in your shell or .env file.

Other clients (Cursor, Windsurf, ChatGPT, etc.)

Same command and env vars - configure per your client's MCP docs. Set ENVIRONMENT to demo for paper trading.

From source

git clone https://github.com/KyuRish/trading212-mcp-server.git
cd trading212-mcp-server
cp .env.example .env  # fill in your API keys
uv sync
uv run -m trading212_mcp_server.server
claude_desktop_config.json for source installs
{
  "mcpServers": {
    "trading212": {
      "command": "uv",
      "args": ["run", "--directory", "<path-to-repo>", "-m", "trading212_mcp_server.server"],
      "env": {
        "TRADING212_API_KEY": "<your-api-key>",
        "TRADING212_API_SECRET": "<your-api-secret>",
        "ENVIRONMENT": "live"
      }
    }
  }
}

All 32 tools

Analytics (composite)

Tool Description
fetch_portfolio_summary Complete portfolio snapshot with P&L and allocations
fetch_portfolio_performance Per-position returns, dividends, best/worst performers
fetch_dividend_summary Dividend income by ticker and month
fetch_recent_activity Combined timeline of trades and transactions

Account

Tool Description
fetch_account_info Account metadata (currency, ID)
fetch_account_cash Cash balance, invested value, P&L
fetch_all_open_positions All portfolio positions with live prices
search_specific_position_by_ticker Single position lookup by ticker

Trading

Tool Description
place_market_order Buy/sell at current market price
place_limit_order Buy/sell at specified price or better
place_stop_order Trigger order at stop price
place_stop_limit_order Stop trigger with limit execution
fetch_all_orders List all pending orders
fetch_order Get specific order by ID
cancel_order Cancel a pending order

Pies

Tool Description
fetch_pies List all investment pies
fetch_a_pie Pie details with instrument allocations
create_pie Create a new pie with target weights
update_pie Update pie settings and allocations
duplicate_pie Clone an existing pie
delete_pie Remove a pie

Market Data

Tool Description
search_instrument Search tradeable instruments by ticker or name
search_exchange Search available exchanges

History

Tool Description
fetch_historical_order_data Past orders with pagination
fetch_paid_out_dividends Dividend payment history
fetch_transaction_list Deposits and withdrawals
fetch_exports_list List CSV export reports
request_csv_export Request a new CSV export

Compatibility

Tested with these MCP clients:

Client Status
Claude Desktop Supported
Claude Code Supported
Cursor Supported
Windsurf Supported
Any MCP-compatible client Supported

Author

Built by Rishabh Dogra.

Support

If this server saves you time, a coffee would mean a lot.

Buy Me a Coffee

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

trading212_mcp_server-0.2.0.tar.gz (37.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

trading212_mcp_server-0.2.0-py3-none-any.whl (22.0 kB view details)

Uploaded Python 3

File details

Details for the file trading212_mcp_server-0.2.0.tar.gz.

File metadata

  • Download URL: trading212_mcp_server-0.2.0.tar.gz
  • Upload date:
  • Size: 37.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for trading212_mcp_server-0.2.0.tar.gz
Algorithm Hash digest
SHA256 2fc616c335d9d1f1a59db31ae9411920c488a078af4381e9e2e6499272d806aa
MD5 ba6f34167bab9acb6b436ba8928f3e15
BLAKE2b-256 9f42f45ea7967b482e7648e63e81730df8138f4d8fb28166fb46817c2d7f4c71

See more details on using hashes here.

Provenance

The following attestation bundles were made for trading212_mcp_server-0.2.0.tar.gz:

Publisher: publish.yml on KyuRish/trading212-mcp-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file trading212_mcp_server-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for trading212_mcp_server-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8a0ade1bb2c94ca4f3c04d83d624dc4bbb986c9a053d7e3e94263ebd810c2884
MD5 04db95a708ed4bb5af968098abc48d17
BLAKE2b-256 364927162a88890d180595e7c513a9b88c7036bca218fb282eef62c6566c1601

See more details on using hashes here.

Provenance

The following attestation bundles were made for trading212_mcp_server-0.2.0-py3-none-any.whl:

Publisher: publish.yml on KyuRish/trading212-mcp-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page