一个模型上下文协议(MCP)服务器,使 LLM 应用程序能够通过 AnkiConnect 与 Anki flashcards 进行交互。
- 牌组管理:获取所有可用牌组列表
- 笔记创建:向任何牌组添加新的 flashcards
- 笔记搜索:使用 Anki 的搜索语法查找笔记
- 牌组创建:创建新的牌组
- Anki 必须正在运行
- AnkiConnect 插件 必须已安装在 Anki 中
- 在 Anki 中安装:工具 > 插件 > 浏览并安装
- 插件代码:
2055492159 - 安装后重启 Anki
git clone https://github.com/kitagry/anki-mcp
cd anki-mcp
go build要将 anki-mcp 添加到 Cursor,请按照以下步骤操作:
- 打开 Cursor 设置(
Cmd + ,或Ctrl + ,) - 搜索 "MCP" 或 "Model Context Protocol"
- 在 MCP 服务器配置中添加以下配置:
{
"mcpServers": {
"anki-mcp": {
"command": "/path/to/anki-mcp/anki-mcp",
"args": []
}
}
}注意:请将路径 /path/to/anki-mcp/anki-mcp 替换为您实际的 anki-mcp 可执行文件的绝对路径。
或者,您可以使用相对路径(如果配置支持):
{
"mcpServers": {
"anki-mcp": {
"command": "anki-mcp",
"args": [],
"env": {
"PATH": "/path/to/anki-mcp:${PATH}"
}
}
}
}- 重启 Cursor 以使配置生效
运行 MCP 服务器:
./anki-mcp服务器通过 stdio 进行通信,并提供以下工具:
获取 Anki 中所有牌组名称。
参数:
anki_url(可选):AnkiConnect URL(默认为 http://localhost:8765)
在 Anki 中创建新牌组。
参数:
anki_url(可选):AnkiConnect URL(默认为 http://localhost:8765)deck_name(必需):要创建的牌组名称
向 Anki 添加新的 flashcard。
参数:
anki_url(可选):AnkiConnect URL(默认为 http://localhost:8765)deck_name(必需):要添加笔记的牌组名称model_name(可选):笔记模型名称(默认为 'Basic')front(必需):笔记的正面内容back(必需):笔记的背面内容tags(可选):逗号分隔的标签
在单次操作中向 Anki 添加多个 flashcards。
参数:
anki_url(可选):AnkiConnect URL(默认为 http://localhost:8765)deck_name(必需):要添加笔记的牌组名称model_name(可选):笔记模型名称(默认为 'Basic')notes(必需):包含 'front'、'back' 和可选 'tags' 字段的 JSON 数组
笔记格式示例:
[
{
"front": "日本的首都是什么?",
"back": "东京",
"tags": ["地理", "首都"]
},
{
"front": "2+2 等于多少?",
"back": "4",
"tags": ["数学"]
}
]使用搜索查询在 Anki 中查找笔记。
参数:
anki_url(可选):AnkiConnect URL(默认为 http://localhost:8765)query(必需):搜索查询(例如:'deck:Default'、'tag:important')
默认情况下,服务器连接到 http://localhost:8765 的 AnkiConnect。您可以在每个工具调用中使用 anki_url 参数指定不同的 URL。
- mark3labs/mcp-go - Model Context Protocol 的 Go 实现
- AnkiConnect - 用于 HTTP API 访问的 Anki 插件
MIT