使用说明
Anki MCP服务器
Claude Desktop的MCP(模型上下文协议)服务器,通过AnkiConnect连接到Anki并检索水蛭标记的卡。
特性
- 通过AnkiConnect API连接到Anki
- 检索带有“水蛭”标签的卡片
- 在卡片上添加带有日期戳的审核标签
- 提供全面的卡片数据供Claude分析
- 可与Claude Desktop配合使用
先决条件
- 安基 已安装并正在运行
- AnkiConnect Anki中安装的插件
- Node.js和npm
安装
-
克隆此存储库:
git clone https://github.com/yourusername/anki-mcp-server.git cd anki-mcp-server -
安装依赖项:
npm install -
构建项目:
npm run build
配置
可以使用环境变量配置服务器。复制提供的示例文件以创建自己的配置:
cp .env.example .env
然后编辑 .env 文件以自定义您的设置:
| 环境变量 | 描述 | 默认值 |
|---|---|---|
ANKI_CONNECT_URL |
Anki Connect API的URL | http://localhost:8765 |
ANKI_CONNECT_VERSION |
要使用的Anki Connect API版本 | 6 |
ANKI_MOCK_MODE |
启用模拟模式进行测试(真/假) | false |
如果未设置环境变量,服务器将使用默认值。
查找AnkiConnect的本地IP地址
如果连接到 localhost 不起作用,您需要使用计算机的本地IP地址。配置您的 .env 文件包含:
ANKI_CONNECT_URL=http://YOUR_LOCAL_IP:8765
要查找您的本地IP地址:
- macOS:打开终端并运行
ifconfig或ipconfig getifaddr en0(适用于WiFi) - 视窗:打开命令提示符并运行
ipconfig - Linux:打开终端并运行
ip addr show或hostname -I
查找IPv4地址,如 192.168.x.x 或 10.x.x.x 在输出中。
测试配置
为了进行测试,需要一个单独的配置文件 .env.test 提供:
cp .env.example .env.test
编辑 .env.test 设置测试特定值:
ANKI_CONNECT_URL=http://localhost:8765
ANKI_CONNECT_VERSION=6
ANKI_MOCK_MODE=true
要在测试模式下运行:
npm run start:test
用法
- 确保Anki在安装了AnkiConnect的情况下运行
- 运行MCP服务器:
npm start
配置Claude桌面
要将此MCP服务器与Claude Desktop一起使用:
-
打开克劳德桌面
-
编辑位于以下位置的Claude Desktop配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 窗户:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
将以下配置添加到
mcpServers章节:
{
"mcpServers": {
"anki": {
"command": "node",
"args": ["path/to/anki-mcp-server/dist/index.js"]
}
}
}
替换 "path/to/anki-mcp-server" 带有克隆此存储库的实际路径。
MCP工具使用
配置后,您可以在Claude中使用以下工具:
示例用法
Could you analyze my Anki leech cards and suggest ways to improve my study?
Claude将使用MCP服务器检索您的水蛭卡并对其进行分析。
可用工具
get_leach_cards
从Anki检索标记为水蛭的卡片。
参数:
detailed(可选,布尔值,默认值:true):是返回综合卡数据还是仅返回IDcount(可选,数字):要返回的随机卡数(默认为所有卡)
tag_reviewed_cards
在指定卡片上添加带有日期戳的“已审核”标签。这允许您跟踪您与Claude一起审核的卡片。
参数:
card_ids(必填,数字数组):根据审查结果标记的卡ID数组custom_tag_prefix(可选,字符串,默认值:“垂直”):标签的自定义前缀
标签将采用以下格式 見直し::YYYYMMDD (或指定您的自定义前缀)。
Claude中的示例用法:
I've reviewed these cards, please tag them as reviewed: [1234567890, 1234567891]
故障排除
- “无法连接到Anki” -确保Anki正在运行,并且AnkiConnect已正确安装
- “未找到水蛭卡” -你在Anki中没有任何标记为“水蛭”的卡片
- 与localhost的连接问题 -如果您无法使用连接
localhost:- 按照配置部分中的描述查找您的本地IP地址
- 更新您的
.env要使用的文件ANKI_CONNECT_URL=http://YOUR_LOCAL_IP:8765 - 确保AnkiConnect已配置为允许从您的IP地址进行连接
- 进行这些更改后重新启动MCP服务器
- 标签未出现 -请确保您向
tag_reviewed_cards工具
测试模式
为了在不影响实际Anki数据的情况下进行测试,您可以使用模拟模式:
- 集
ANKI_MOCK_MODE=true在你的.env文件或使用提供的.env.test文件 - 使用以下命令运行服务器
npm run start:test
在模拟模式下,服务器将模拟所有Anki操作,而无需实际连接到Anki。这对于测试Claude集成非常有用,而不会带来数据更改的风险。
发展
要在热重新加载的开发模式下运行服务器,请执行以下操作:
npm run dev
对于启用模拟模式的开发:
npm run dev:test
许可证
麻省理工学院