Back to MCP directory
publicPublicdnsLocal runtime

bcs-mcp

BCS-MCP是一个用于将BCS交易API与LLM集成的自主MCP服务,它收集市场和个人数据,存储在PostgreSQL/pgvector中,并通过MCP提供工具,支持语义搜索、本地脚本计算和交易信号生成。

article

README

🚀 BCS-MCP

这是一个自主的MCP服务,用于将 BCS Trade API 与大语言模型(LLM)集成。该服务收集市场和私有数据,将其存储在PostgreSQL/pgvector中,并通过MCP提供相关工具。

Version Runtime Database MCP

快速开始 API覆盖情况 更新日志

✨ 主要特性

📈 数据与存储

  • 市场数据流:包含行情报价、订单簿、交易记录、K线等。
  • 私有数据:涵盖投资组合、委托单、交易记录、交易限制等。
  • 数据按模式划分
    • bcs_market:用于存储市场数据。
    • bcs_private:用于存储私有数据。

🧠 支持大语言模型的层

  • 基于嵌入向量的语义搜索:通过嵌入向量(默认使用llm_mcp,Ollama作为备用)对历史数据进行语义搜索。
  • 决策日志和上下文:记录决策日志和上下文,方便后续分析。
  • 本地优先策略:尽可能在数据库或脚本端进行计算,减少大语言模型的令牌使用。

🧮 脚本与信号

  • 内置数学脚本:包含简单移动平均线(SMA)、指数移动平均线(EMA)、相对强弱指数(RSI)、手续费、交易时段、风险计算等脚本。
  • 脚本目录与服务器计算:提供脚本目录,可在服务器端进行计算,避免将原始数据序列输出到大语言模型。
  • 信号保存与增强signals.run 可保存启发式信号,并增强 direction.llm(无需迁移模式)。

🧱 架构

  • server/:Node.js MCP服务器(包含工具和HTTP端点)
  • worker/:Python数据摄取、数据流处理和嵌入向量生成
  • db/init/:SQL初始化和数据库模式

一个容器(Dockerfile)包含服务器和工作进程。

🚀 快速开始

cd bcs-mcp
cp .env.example .env
# 请填写 BCS_REFRESH_TOKEN

docker compose -f compose.yml up -d

验证服务是否正常运行:

curl http://127.0.0.1:3332/health
curl http://127.0.0.1:3332/tools

🔧 关键环境变量

  • BCS_REFRESH_TOKEN:必需的刷新令牌
  • BCS_CLIENT_IDtrade-api-readtrade-api-write
  • BCS_ALLOW_WRITE:启用交易操作
  • BCS_DB_HOST:在compose文件中为 bcsdb
  • BCS_DB_PORT:在compose网络内为 5432
  • MCP_PORT:MCP在容器内的端口为 3333,对外暴露的端口为 3332
  • OLLAMA_EMBED_MODEL:嵌入向量模型
  • LLM_BACKEND=llm_mcp|ollama, LLM_MCP_BASE_URL, LLM_MCP_PROVIDER, LLM_BACKEND_FALLBACK_OLLAMA

🧰 MCP工具(分组)

  • market.*:数据查询、最新数据、聚合数据、快照、计算等操作
  • private.*:投资组合、交易记录、盈亏计算、决策等操作
  • selected_assets.*:关注列表操作
  • embedding.*:队列管理和搜索操作
  • scripts.*, signals.run:本地计算操作
  • bcs.*:直接调用BCS REST API

📚 详细文档

  • docs/bcs_api_reference.md:API和MCP工具的映射文档
  • CHANGELOG.md:版本更新历史记录
  • VERSION:当前模块版本

📁 项目结构

bcs-mcp/
├── server/
├── worker/
├── scripts/
├── db/init/
├── compose.yml
└── Dockerfile

🧭 公共Git标准

  • VERSION 文件中的版本号严格遵循 YYYY.MM.x 格式。
  • 所有更改都记录在 CHANGELOG.md 中。
  • 敏感信息不存储在git中,仅提供 .env.example 文件,实际工作值存储在本地 .env 文件中。
  • 发布前需执行 docker compose config 和基本的冒烟测试(/health, /tools)。

🔐 安全措施

  • 仅当 BCS_ALLOW_WRITE=1 时,才允许执行交易操作。
  • 对于HTTP MCP,可以启用 MCP_HTTP_TOKEN 进行身份验证。
  • 实际的敏感信息仅存储在本地 .env 文件中。
help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client