这是一个通过AnkiConnect插件与Anki无缝集成的模型上下文协议(MCP)服务器。该服务器使AI助手和其他MCP客户端能够以编程方式与您的Anki闪卡集合进行交互。

AnkiConnect 是一个强大的Anki插件,它通过REST API公开了Anki的功能。它允许外部应用程序:
模型上下文协议是一种标准化的方式,用于AI助手连接到外部数据源和工具。这个MCP服务器充当MCP客户端(如Claude Desktop)和AnkiConnect之间的桥梁,使AI助手能够通过对话自然地帮助您管理Anki闪卡。
此MCP服务器通过以下工具提供了对AnkiConnect功能的全面访问:
create_flashcard() - 使用正面和背面内容创建新闪卡add_note() - 添加带有自定义字段和标签的笔记add_notes() - 批量添加多个笔记update_note_fields() - 更新现有笔记字段find_notes() - 使用Anki查询语法搜索笔记deck_names() - 获取所有卡片组名称deck_names_and_ids() - 获取带有ID的卡片组名称change_deck() - 在卡片组之间移动卡片delete_decks() - 删除卡片组及其可选卡片get_deck_config() - 检索卡片组配置设置find_cards() - 搜索卡片cards_info() - 获取详细卡片信息suspend() / unsuspend() - 暂停/取消暂停卡片are_suspended() / are_due() - 检查卡片状态gui_deck_browser() - 打开卡片组浏览器gui_deck_review() - 开始卡片组复习gui_browse() - 使用搜索打开卡片浏览器gui_add_cards() - 打开添加卡片对话框version() - 获取AnkiConnect版本get_tags() - 检索所有标签multi() - 批量执行多个AnkiConnect请求2055492159AnkiConnect开箱即用,但您可以自定义其设置:
git clone https://github.com/spacholski1225/anki-connect-mcp.git
cd anki-connect-mcp
npm install
npm run build
要使用此MCP服务器与Claude Desktop,需在您的MCP设置文件中添加以下配置:
MCP配置文件的位置:
%APPDATA%\Claude\claude_desktop_config.json~/Library/Application Support/Claude/claude_desktop_config.json~/.config/Claude/claude_desktop_config.json配置选项:
{
"mcpServers": {
"anki-connect-mcp": {
"command": "node",
"args": [
"dist/index.js"
],
"env": {},
"disabled": false,
"alwaysAllow": [
"deck_names",
"cards_info",
"deck_names_and_ids",
"gui_deck_browser"
]
}
}
}
然后配置您的MCP客户端:
{
"mcpServers": {
"anki-connect": {
"command": "npx",
"args": [
"@spacholski1225/anki-connect-mcp"
],
"env": {},
"disabled": false,
"alwaysAllow": [
"deck_names",
"cards_info",
"deck_names_and_ids",
"gui_deck_browser"
]
}
}
}
{
"mcpServers": {
"anki-connect": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"--network=host",
"-e", "ANKI_CONNECT_URL=http://host.docker.internal:8765",
"spacholski/anki-connect-m-最新版"
],
"env": {},
"disabled": false,
"alwaysAllow": [
"deck_names",
"cards_info",
"deck_names_and_ids",
"gui_deck_browser"
]
}
}
}
Docker特定的AnkiConnect配置:
当使用Docker选项时,必须使用特定设置来配置AnkiConnect,以便允许Docker容器访问:
{
"apiKey": null,
"apiLogPath": null,
"ignoreOriginList": [],
"webBindAddress": "0.0.0.0",
"webBindPort": 8765,
"webCorsOriginList": [
"http://localhost",
"http://host.docker.internal",
"http://host.docker.internal:3000"
]
}
关键Docker配置点:
webBindAddress: "0.0.0.0" - 允许AnkiConnect接受来自任何IP地址的连接(对于Docker容器是必需的)webCorsOriginList - 必须包括"http://host.docker.internal"及相关来源,以允许来自Docker容器的跨域请求重要提示:
index.js文件路径替换args中的路径@spacholski1225/anki-connect-mcp - 不需要本地安装spacholski/anki-connect-mcp:latestalwaysAllow数组包含每次不需要确认的工具--network=host标志允许容器访问主机上的AnkiConnect一旦与类似Claude Desktop的MCP客户端配置好,您可以自然地与您的Anki集合互动:
欢迎贡献!请随时提交问题、功能请求或拉取请求。
ISC许可证