mcpField
T
Trading212 MCP Server

Trading212 MCP Server

本地服务
github.com/lukeplausin金融数据541 周前更新

关于 Trading212 MCP Server

Trading212 MCP Server 将 Trading212 账户数据和操作接入 MCP,面向需要让 AI Agent 查询投资组合、市场工具信息或管理投资组合的用户。它提供下单和投资组合更新等功能;README 提醒应先在模拟环境测试,并谨慎处理交易风险。

主要功能

  1. 01查询账户、现金和投资组合
  2. 02检索交易工具及详情
  3. 03搜索交易工具
  4. 04创建或更新投资组合配置
  5. 05提交交易订单
  6. 06缓存 API 结果

适用场景

  1. 01让 Agent 汇总投资组合持仓
  2. 02查询账户余额及交易工具信息
  3. 03在模拟环境中测试下单流程
  4. 04调整 Trading212 投资组合配置

MCP 相关

该服务通过 MCP 向客户端提供账户和市场资源,以及查询账户、检索交易工具、下单和更新投资组合的工具。支持 SSE 模式供远程连接;README 提醒下单目前仅能在模拟模式执行。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Trading212 MCP 服务

⚠️ **警告**:让 AI 管理你的股票经纪账户本身就有风险。请务必考虑相关风险并采取适当措施进行管理后,再使用此连接器。

使用此连接器即表示你同意 MIT 许可条款,其中包括对因使用此连接器而导致的任何财务损失免于承担责任。

部署到真实账户前,请先在“demo”模式下测试此连接器。

风险自负

概览

此 MCP 工具旨在让你将 Agentic AI 连接到自己的 Trading212 经纪账户。连接后,你可以执行以下操作:

  • 让 AI 分析并评估你的投资组合
  • 让 AI 推荐一些股票并代表你下单(由于 Trading212 API 的限制,目前只能在模拟模式下创建订单)
  • 让 AI 代表你管理或更新 Trading212 投资饼图
  • 让 AI 代表你创建 Trading212 投资饼图(即将推出)

由于 Trading212 API 施加了严格的调用频率限制,此工具会尝试在内存中缓存 API 结果(默认 TTL 为 5 分钟)。

如果你在 6379 端口部署本地 Redis 服务,此工具将改用 Redis,而非内存缓存。

安全提示

  • 如果你将此工具服务托管在远程服务器上并通过互联网连接,请确保部署带 HTTPS 的反向代理,最好还要启用相互 TLS 验证。
  • 请避免以明文形式保存 Trading212 API 密钥。可尝试使用 keyring 或 1password 等自动化密钥管理器。
  • 连接真实账户前,务必先在模拟账户上测试此连接器。

组件

资源

此服务会公开一些动态资源:

  • trading212://equity/portfolio:我的投资组合——交易投资组合中的所有资产
  • trading212://equity/account/info - 我的账户信息 - 交易账户相关信息
  • trading212://equity/account/cash - 我的现金 - 交易账户中可用现金的信息
  • trading212://equity/metadata/instruments/all - 交易工具信息 - 所有工具的信息(警告:会返回大量数据,可能导致上下文窗口溢出)
  • trading212://equity/metadata/instruments/list - 返回已交易工具的代码列表
  • trading212://equity/metadata/instruments/{ticker} - 返回指定代码的详细信息
提示词

目前没有提示词

工具

此服务提供以下工具:

订单管理
  • place_order

    • 通过 Trading212 下达有效订单。将根据输入动态选择正确的订单类型。
    • 输入:
      • ticker(string):要下单的股票代码
      • quantity(float):买入或卖出的数量
      • stopPrice(float):止损价(如适用)
      • limitPrice(float):限价(如适用)
      • validDuration(string):订单有效期(DAY / GTC)
    • 返回:Trading212 API 返回的数据对象
  • cancel_order(即将推出)

    • 通过 Trading212 取消订单
    • 输入:
      • ticker(string):订单的股票代码
    • 返回:Trading212 API 返回的数据对象
  • create_pie(即将推出)

    • 在 Trading212 中创建一个“饼”
    • 输入:
    • dividendCashAction(str):股息的处理方式
    • endDate(str):饼目标的结束日期
    • goal(int):饼的储蓄目标
    • icon(str):饼使用的图标
    • instrumentShares(dict[str, float]):股票代码与持仓分配比例的映射。
    • name(str):饼的名称
    • 返回:Trading212 API 返回的数据对象
  • update_pie

    • 更新 Trading212 中的一个“饼”
    • 输入:
    • dividendCashAction(str):股息的处理方式
    • endDate(str):饼目标的结束日期
    • goal(int):饼的储蓄目标
    • icon(str):饼使用的图标
    • instrumentShares(dict[str, float]):股票代码与持仓分配比例的映射。
    • name(str):饼的名称
    • 返回:Trading212 API 返回的数据对象
账户数据
  • get_account_info

    • 获取账户 ID 和货币
    • 返回:账户相关数据
  • get_portfolio

    • 获取账户当前持有的股票列表
    • 返回:投资组合数据
  • get_account_cash

    • 获取账户当前可用现金
    • 返回:余额数据
市场数据
  • get_all_instruments

    • 获取账户中的所有金融工具列表(警告:会返回大量数据)
    • 返回:所有股票的完整数据
  • get_instrument_list

    • 获取账户中可用的股票代码列表
    • 返回:此账户中所有可用的股票代码
  • get_instrument

    • 根据股票代码获取单个交易品种的完整信息
    • 输入:
      • ticker(string):要查询的股票代码
    • 返回:交易品种的完整信息
  • search_instruments

    • 使用模糊匹配搜索词按名称搜索所有金融工具
    • 输入:
      • search_term(string):搜索词(通常为公司名称)
      • threshold(int):结果显示所需的最低模糊匹配分数,范围为 0-100,默认值:70
      • limit(int):返回结果的最大数量,默认值:15
    • 返回:匹配金融工具的完整信息

在 Claude Desktop 中使用

uv
# Add the server to your claude_desktop_config.json.
# NOTE: To trade in your real account you will need to change --environment to "live"
"mcpServers": {
  "trading212": {
    "command": "uv",
    "args": [
      "--directory",
      "parent_of_servers_repo/servers/src/mcp_server_trading212",
      "run",
      "--api-key",
      "<KEEP_THIS_A_SECRET>",
      "--environment",
      "demo",
      "mcp-server-trading212"
    ]
  }
}
Docker
# Add the server to your claude_desktop_config.json
"mcpServers": {
  "trading212": {
    "command": "docker",
    "args": [
      "run",
      "todo"
    ]
  }
}

SSE 模式

此工具内置 SSE(服务器发送事件)模式。这样可以将工具作为 HTTP 服务运行,并可选择将其部署在与 AI 客户端不同的服务器上。这有助于调试;如果你想避免 AI 环境访问 API 密钥,也可能会很有用。

在 SSE 模式下与 Claude 桌面版配合使用
# On Tool server:
uv --directory path/to/project run --api-key '<KEEP_THIS_SECRET>' --environment "demo" mcp-server-trading212 --host 127.0.0.1 --port 6677 --sse
// Claude Desktop file
"mcpServers": {
  "trading212": {
    "command": "uvx",
    "args": [
      "mcp-proxy",
      "http://127.0.0.1:6677/sse",
    ],
    "env": {
        "API_ACCESS_TOKEN": "my-token"
    }
  }
}

与 Google Gemini CLI 配合使用

要求:

  1. Node.js 版本为 20 或更高。可从 (这里)[https://nodejs.org/en/download] 下载。
  2. gemini-cli。有关安装方式的更多信息,请参阅 (这里)[https://github.com/google-gemini/gemini-cli]。

可能需要在项目文件夹的终端中运行 gemini-cli。

gemini MCP 配置设置

设置文件默认位于 ~/.gemini/settings.json

{
  "theme": "Default",
  "selectedAuthType": "oauth-personal",
  "mcpServers": {
    "trading212": {
      "command": "uv", // Path to your uv executable
      "args": [
        "run",                     // uv subcommand
        "--directory",             // uv argument to set working directory
        "absolute/path/to/project/mcp-server-trading212", // Your abosulte path project root
        "mcp-server-trading212"    // The Python module name
      ],
      "env": {
        "TRADING212_API_KEY": "your-trading212-api-key", // Your actual API Key
        "TRADING212_ENVIRONMENT": "demo" // Or "live" if you're using a live account
      }
    }
  }
}

注意:使用 which uv 查找 uv executable 的正确路径。

如果你通过不受信任的网络(例如互联网)连接到工具服务,应在工具服务前部署实现 HTTPS 加密的反向代理。双向 TLS 也会是不错的选择。Caddy 可以帮你完成所有这些工作。

构建

Docker:

docker build -t mcp/trading212 .

使用 MCP inspector 测试

uv add "mcp[cli]"
mcp dev src/mcp_server_sqlite/server.py:wrapper  

许可证

此 MCP 服务采用 MIT License 许可。这意味着你可以自由使用、修改和分发该软件,但须遵守 MIT License 的条款和条件。详情请参阅项目仓库中的 LICENSE 文件。

使用此连接器即表示你同意 MIT license 的条款,其中包括对因使用该连接器而造成的任何经济损失予以赔偿。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。