量化研究服务器

WorldQuant Brain MCP是一个用于量化研究的服务器,支持流式HTTP传输和论坛数据抓取,适用于金融分析和自动化研究。

  • by JoshuaAnthony6
  • Python
  • 云端部署
  • 9 星标
  • 更新于
在 GitHub 查看 JoshuaAnthony6/world-quant-brain-mcp

使用说明

世界量子大脑mcp

设置

  1. 安装依赖项:
python 配置前运行我_安装必要依赖包.py
  1. 配置环境变量(推荐):
  • 复制 .env.example 到 .env 并设定你的价值观。服务器将自动加载这些。
  • 必修的:
    • CREDENTIALS_EMAIL, CREDENTIALS_PASSWORD
  • 可选:
    • API_SETTINGS_TIMEOUT (秒,默认值30)
    • FORUM_SETTINGS_BASE_URL (默认值https://support.worldquantbrain.com)
    • FORUM_SETTINGS_HEADLESS (真/假,默认为真)
    • FORUM_SETTINGS_TIMEOUT (秒,默认值15)
    • FORUM_MAX_CONCURRENCY (默认值1;序列化论坛操作以减少会话争用)
    • FORUM_RATE_LIMIT_SECONDS (默认值为0;禁用额外的MCP侧论坛冷却,例如设置。 10 如果你想在论坛电话之间有一个软间隙)
    • MCP_HOST (远程HTTP的默认值为0.0.0.0)
    • MCP_PORT (默认值为8000)
    • MCP_STREAMABLE_HTTP_PATH (默认值/mcp)

服务器仍然支持 user_config.json但是 .env 值优先于重叠的键。

  1. 如下所述运行MCP服务器。

运行(流式HTTP)

从激活虚拟环境的项目根目录开始:

./.venv/bin/mcp run --transport streamable-http main.py:mcp

Streamable HTTP端点将侦听 http://$MCP_HOST:$MCP_PORT$MCP_STREAMABLE_HTTP_PATH (默认值:0.0.0.0:8000/mcp)。使用HTTPS反向代理进行生产。

详细安装(推荐)

  1. 创建并激活Python虚拟环境(如果你还没有):
python3 -m venv .venv
source .venv/bin/activate
  1. 使用提供的安装程序脚本升级pip并安装项目依赖项:
pip install -U pip
python 配置前运行我_安装必要依赖包.py
  1. (可选,但论坛/剧作家工具需要)安装剧作家和浏览器引擎:
pip install playwright
python -m playwright install chromium

Playwright系统包(Linux)

如果你打算在Linux主机上使用论坛/剧作家工具,playwright的Chromium需要几个操作系统库。在Ubuntu/Debian系统上,在运行之前安装运行时依赖项 python -m playwright install chromium:

sudo apt-get update
sudo apt-get install -y --no-install-recommends \
	libnspr4 libnss3 libgbm1 libgtk-3-0 libx11-xcb1 libxss1 \
	libatk1.0-0 libatk-bridge2.0-0 libpango-1.0-0 libxrandr2 \
	libxcomposite1 libxdamage1 libxkbcommon0 libcups2 ca-certificates \
	fonts-liberation xz-utils unzip wget
# On some Ubuntu releases the ALSA package is provided under a different name
# (e.g. `libasound2t64`). If `libasound2` has no candidate, install the
# distribution-provided package that provides `libasound.so.2`.
sudo apt-get install -y libasound2 || sudo apt-get install -y libasound2t64 || true

安装操作系统包后,运行Playwright安装并验证Chromium可以启动:

pip install -U playwright
python -m playwright install chromium

# Quick verification (headless):
./.venv/bin/python - <<'PY'
from playwright.sync_api import sync_playwright
with sync_playwright() as pw:
		browser = pw.chromium.launch()
		page = browser.new_page()
		page.goto('https://example.com')
		print(page.title())
		browser.close()
PY
  1. 启动流式HTTP MCP服务器:
./.venv/bin/mcp run --transport streamable-http main.py:mcp

笔记:

  • 如果您的环境限制安装系统软件包,请让管理员预安装 python3-venv 和 python3-pip.
  • 对于生产环境,将nginx/caddy(HTTPS)放置在MCP Streamable HTTP端点之前,并在下运行MCP进程 systemd 为了可靠性。

Nginx反向代理示例

将示例配置放置在 /etc/nginx/sites-available/mcp_http 符号链接到 sites-enabled. 此仓库中的示例文件: deploy/nginx/mcp_http.conf.

要点:

  • 使用 proxy_http_version 1.1 和 proxy_set_header Connection "" 以允许长期流连接。
  • 禁用缓冲 proxy_buffering off 因此响应立即流动。
  • 把TLS(Let's Encrypt/certbot)放在nginx前面,或者用你的证书配置nginx。

启用站点后重新加载nginx:

sudo ln -s /etc/nginx/sites-available/mcp_http /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

systemd服务示例

单位文件包含在 deploy/systemd/mcp-sse.service --复制到 /etc/systemd/system/ 并启用:

sudo cp deploy/systemd/mcp-sse.service /etc/systemd/system/mcp-http.service
sudo systemctl daemon-reload
sudo systemctl enable --now mcp-http.service
sudo journalctl -u mcp-http -f

该装置使用 /opt/project/world-quant-brain-mcp/.env 作为 EnvironmentFile 并运行 mcp 来自virtualenv的CLI。调整路径, User,以及适合您环境的权限。