io.github.KyuRish/trading212-mcp-server
MCP server for Trading 212 API - portfolio, orders, pies, dividends, and analytics
What can you do with io.github.KyuRish/trading212-mcp-server?
fetch_portfolio_summary- Complete snapshot: total value, P&L, cash, top holdings, allocationfetch_portfolio_performance- Per-position returns with dividends, best/worst performersfetch_dividend_summary- Income analysis grouped by ticker and monthfetch_recent_activity- Combined timeline of trades and transactions
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
trading212-mcp-serverclaude mcp add trading212-mcp-server -e 'TRADING212_API_KEY=<your trading212_api_key>' -e 'TRADING212_API_SECRET=<your trading212_api_secret>' -e 'ENVIRONMENT=<ENVIRONMENT>' -- uvx trading212-mcp-server==0.1.1
{
"mcpServers": {
"trading212-mcp-server": {
"command": "uvx",
"args": [
"trading212-mcp-server==0.1.1"
],
"env": {
"TRADING212_API_KEY": "<your trading212_api_key>",
"TRADING212_API_SECRET": "<your trading212_api_secret>",
"ENVIRONMENT": "<ENVIRONMENT>"
}
}
}
}
Environment variables
TRADING212_API_KEYrequired secret Trading 212 API key from Settings > API (Beta)TRADING212_API_SECRETrequired secret Trading 212 API secret from Settings > API (Beta)ENVIRONMENTAPI environment: 'live' for real account, 'demo' for paper trading
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Contents
Trading 212 MCP Server
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=demoto 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, allocationfetch_portfolio_performance- Per-position returns with dividends, best/worst performersfetch_dividend_summary- Income analysis grouped by ticker and monthfetch_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.
License
MIT
Frequently asked questions
What is io.github.KyuRish/trading212-mcp-server?
MCP server for Trading 212 API - portfolio, orders, pies, dividends, and analytics
How do I install io.github.KyuRish/trading212-mcp-server?
It runs on your machine. In Claude Code: claude mcp add trading212-mcp-server -e 'TRADING212_API_KEY=<your trading212_api_key>' -e 'TRADING212_API_SECRET=<your trading212_api_secret>' -e 'ENVIRONMENT=<ENVIRONMENT>' -- uvx trading212-mcp-server==0.1.1. For other clients, paste the JSON configuration from this page into their MCP settings.
Does io.github.KyuRish/trading212-mcp-server need an API key?
Yes. It expects TRADING212_API_KEY, TRADING212_API_SECRET, which you set in its configuration.
Is io.github.KyuRish/trading212-mcp-server open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains io.github.KyuRish/trading212-mcp-server?
It is published by KyuRish. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.