OpenCode 通过配置文件里的 mcp 段加载 MCP。本教程说明如何把本仓库的 stdio MCP 装进 OpenCode,并与仓库 README 中的环境变量、工具列表保持一致。
- 已安装 OpenCode,且能编辑其配置文件(见下文「配置文件放哪里」)。
- 本机 Python ≥ 3.10,以及
pip(或pip3)。 - 在 iTick 文档 申请
ITICK_TOKEN(调用接口时必填)。
在仓库根目录执行:
cd /path/to/itick-mcp-server
pip install -e .若系统只有 python3:
pip3 install -e .安装成功后,终端应能直接运行:
itick-mcp按 Ctrl+C 退出即可;OpenCode 会自行拉起进程,一般不需要长期手动运行。
cd /path/to/itick-mcp-server
python3 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e .记下虚拟环境里 Python 可执行文件的绝对路径(例如 macOS/Linux 上多为 .../itick-mcp-server/.venv/bin/python),下面「方式 B」会用到。
OpenCode 要求 本地 MCP 使用:
"type": "local"command为字符串数组(第一个元素是可执行文件,后面是参数)- 环境变量写在
environment里(不是 Cursor 的env)
官方说明:OpenCode MCP Servers。
在 opencode.json 或 opencode.jsonc 中加入(可与现有配置合并):
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"itick": {
"type": "local",
"command": ["itick-mcp"],
"enabled": true,
"environment": {
"ITICK_TOKEN": "你的_itick_token"
}
}
}
}若你的环境使用 https://api.itick.io 作为 API 根地址,可追加:
"ITICK_API_BASE": "https://api.itick.io"把 /绝对路径/到/python 换成你本机的 Python(虚拟环境则用 .venv/bin/python 的绝对路径):
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"itick": {
"type": "local",
"command": [
"/绝对路径/到/python",
"-m",
"itick_mcp_server"
],
"enabled": true,
"environment": {
"ITICK_TOKEN": "你的_itick_token"
}
}
}
}前提:该 Python 对应的环境里已执行过 pip install -e .,能 import itick_mcp_server。
本服务注册工具较多,若 OpenCode 启动时报获取工具超时,可为该 MCP 增加 timeout(毫秒),例如:
"timeout": 15000具体字段见 Local Options。
OpenCode 会按优先级合并多处配置,常见位置包括:
- 全局:
~/.config/opencode/opencode.json - 项目根目录:
opencode.json/opencode.jsonc - 或通过环境变量
OPENCODE_CONFIG/OPENCODE_CONFIG_CONTENT指定(见 OpenCode Config)
任选其一保存上述 mcp.itick 块即可;项目内配置便于团队共享结构(令牌建议仍用环境变量引用或本地覆盖,勿提交密钥)。
若已安装 OpenCode CLI,可尝试:
opencode mcp list也可使用交互添加:
opencode mcp add按提示填写与「方式 A」等价的 command 数组 和 environment。
配置生效并连接成功后,MCP 工具会出现在 OpenCode 的工具列表中。可在提示里写明使用 itick 相关工具(名称以 OpenCode 实际展示为准),例如查询行情、K 线等。工具与 REST 路径的对应关系见 README 工具一览。
| 现象 | 处理 |
|---|---|
找不到 itick-mcp |
改用「方式 B」,或激活 venv 后确认 which itick-mcp |
ModuleNotFoundError: itick_mcp_server |
对「方式 B」里用的那个 Python 执行 pip install -e . |
| 401 / 无数据 | 检查 ITICK_TOKEN 是否正确、是否过期 |
| 接口域名不对 | 设置 ITICK_API_BASE 为文档或控制台提供的地址 |
更多关于 iTick 能力与限制,见仓库根目录 README。