t212-mcp
t212-mcp
Un servidor MCP que expone tu cuenta de Trading212 (resumen, cartera, efectivo, historial de órdenes, dividendos) como herramientas, pensado para conectarse directamente a claude.ai como conector remoto personalizado.
Debido a que claude.ai accede a este servidor a través de internet público y tu cuenta T212 es live, el servidor requiere un inicio de sesión OAuth (una única contraseña que tú establezcas) antes de atender cualquier llamada de herramienta — ver auth.py.
0. Obtén el código en el VPS e instala los requisitos previos
git clone <this-repo-url> t212-mcp && cd t212-mcpNecesitarás en el VPS: git, rsync y uv instalados a nivel de sistema (no solo en tu propio $HOME, ya que la aplicación luego se ejecuta como su propio usuario de sistema dedicado sin directorio personal):
curl -LsSf https://astral.sh/uv/install.sh | sh
sudo cp "$HOME/.local/bin/uv" /usr/local/bin/uvRelated MCP server: Trading212 MCP Server
1. Configuración
python3 setup_wizard.pyTe guía de forma interactiva: tu clave/secreto de API de T212, un dominio (ofrece uno gratuito <ip>.sslip.io si no tienes uno propio) y la contraseña de inicio de sesión — luego escribe .env con chmod 600. Puedes volver a ejecutarlo en cualquier momento para regenerar .env desde cero (preguntará antes de sobrescribir).
¿Prefieres editarlo a mano? cp .env.example .env y completa:
T212_API_KEY/T212_API_SECRET— desde Trading212 → Configuración → API (par de clave/secreto, autenticación básica).T212_ENV—liveodemo.MCP_PUBLIC_URL— la URL HTTPS a la que este servidor será accesible, p. ej.https://mcp.example.com(sin barra final). Debe coincidir con tu configuración de DNS y proxy inverso.MCP_DOMAIN— el mismo host que arriba, sin el esquema (Caddy lo usa para solicitar un certificado TLS).MCP_AUTH_PASSWORD— una contraseña que solo tú conozcas; la escribirás una vez en el navegador al conectar Claude.
2. Apunta el DNS a tu VPS
Crea un registro A/AAAA para el dominio en MCP_DOMAIN que apunte a la IP de tu VPS. Los puertos 80 y 443 deben ser accesibles desde internet.
Antes de instalar un proxy inverso TLS a continuación, comprueba si algo ya está vinculado a 80/443 en esta máquina (un nginx/Caddy existente que sirva otros sitios):
sudo ss -tlnp | grep -E ':80|:443'3. Ejecútalo
sudo useradd --system --no-create-home --shell /usr/sbin/nologin t212mcp
sudo mkdir -p /opt/t212-mcp
sudo rsync -a --exclude .venv --exclude __pycache__ --exclude .git ./ /opt/t212-mcp/
sudo chown -R t212mcp:t212mcp /opt/t212-mcp
cd /opt/t212-mcp
# t212mcp has no home dir, so point uv's cache somewhere it can write:
sudo -u t212mcp env HOME=/opt/t212-mcp UV_CACHE_DIR=/opt/t212-mcp/.cache/uv \
uv sync --frozen --no-dev
sudo cp deploy/t212-mcp.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now t212-mcpLuego coloca TLS delante en el puerto 8000, según lo que mostró ss -tlnp arriba:
Nada ejecutándose en 80/443 — instala Caddy (un único binario estático, ~10-20MB de RAM en reposo) y apúntalo a deploy/Caddyfile:
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list sudo apt update && sudo apt install -y caddy set -a; source .env; set +a sudo bash -c "sed 's/{\$MCP_DOMAIN}/'\"$MCP_DOMAIN\"'/' deploy/Caddyfile > /etc/caddy/Caddyfile" sudo systemctl reload caddynginx ya ejecutándose para otros sitios — copia deploy/nginx.conf.example en
/etc/nginx/sites-available/t212-mcp, reemplazamcp.example.comen él con tu$MCP_DOMAINreal, crea un enlace simbólico ensites-enabled,nginx -t && systemctl reload nginx, y luegosudo certbot --nginx -d $MCP_DOMAIN(no toca tus bloques de servidor existentes).
Comprueba que está activo:
curl https://$MCP_DOMAIN/.well-known/oauth-authorization-server4. Conéctalo a Claude
En claude.ai: Configuración → Conectores → Añadir conector personalizado, pega https://<MCP_DOMAIN>/mcp como URL. Claude abrirá una pestaña del navegador con la página de inicio de sesión de este servidor — introduce MCP_AUTH_PASSWORD — y serás redirigido de vuelta, conectado.
Desarrollo local
uv run python server.py ejecuta el mismo servidor streamable-HTTP + OAuth localmente en HOST:PORT (por defecto 0.0.0.0:8000) — MCP_PUBLIC_URL y MCP_AUTH_PASSWORD son variables de entorno obligatorias incluso para ejecuciones locales, ya que el proveedor OAuth está conectado incondicionalmente. Apunta MCP_PUBLIC_URL a http://127.0.0.1:8000 para pruebas solo locales (sin TLS, sin conector de Claude, solo para ejercitar el código de las herramientas y el flujo OAuth con curl).
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Brazilian Open Finance MCP — 30+ banks (Itaú, Nubank, etc.) to Claude/Cursor. Read-only.
Real SEC, 13F, insider, congress & macro data your AI agent can cite. Hosted MCP, 24 tools.
MCP server exposing the Backtest360 engine API as tools for AI agents.
SmartMoney77 MCP v0.6.0 — 14 public tools that turn financial questions into exact numbers and citable links. New: historical_investment_return and compare_investments, which compute "what if I had invested" results from real yearly price data. Also compound interest, FIRE number, credit-card payoff, emergency fund, inflation, latte factor, investment fees, cost of waiting, plus discovery/deep-link/share-pack tools for a catalog of calculators in 6 languages (he/en/ar/es/pt/in). Public, no login. Endpoint: https://smartmoney77.com/mcp
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceProvides secure access to Trading 212 Public API through MCP, enabling Claude Desktop users to manage portfolios, execute trades, and analyze market data using natural language commands.
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to manage Trading212 brokerage accounts, including portfolio analysis, order placement (demo mode), and investment pie management.5MIT
- FlicenseAqualityDmaintenanceAn MCP server that wraps the Trading 212 Public API, enabling AI agents to interact with your Trading 212 brokerage account through natural language.16
- AlicenseNot gradedqualityBmaintenanceExposes Trading 212 trading account, instruments, orders, history, and pies as MCP tools. Allows placing and canceling real orders (defaults to demo/paper environment).Apache 2.0
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/joshua-repo/t212-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server