← 返回目录
A

Anki MCP Server Addon

社区
将Anki与AI助手无缝集成,通过本地MCP服务器暴露您的卡片集合。
GitHub 源仓库 ↗
★ 72 Stars 分类 · 其他 热门 源版本 5c3d7ee8251e
55FMRS · C
可靠性
6/20
安全与权限
11/20
维护活跃度
9/20
文档质量
16/20
安装易用性
13/20

AnkiMCP Server是一个功能强大的Anki插件,通过MCP协议将Anki与AI助手连接,提供丰富的工具和安全性措施。它适合希望利用AI提升学习的用户,但需要一定的技术配置。

查看 FMRS 评分方法 →

AnkiMCP Server是一个Anki插件,它在Anki内部运行一个本地MCP服务器,允许AI助手(如Claude)通过模型上下文协议(MCP)与您的卡片集合交互。该插件支持本地HTTP服务器和远程隧道,提供多种工具管理卡片、笔记、标签、模型和媒体文件,并支持FSRS调度参数和GUI交互。

工具能力

sync
与AnkiWeb同步集合,支持异步状态和全同步冲突解决
list_decks
列出集合中的所有牌组
create_deck
创建新牌组
find_notes
使用Anki搜索语法搜索笔记
notes_info
获取笔记的详细信息
add_note
向牌组添加新笔记
add_notes
批量添加笔记,最多max_notes_per_batch条
card_management
管理卡片,包括重新定位、移动牌组、搁置/取消搁置、暂停/取消暂停、设置标记、设置截止日期和遗忘卡
tag_management
管理标签,包括添加、移除、替换、获取、清除未使用和批量操作
filtered_deck
管理筛选牌组,包括创建/更新、重建、清空和删除
update_note_fields
更新现有笔记的字段
update_notes
批量更新多个笔记的字段,支持部分成功
delete_notes
从集合中删除笔记
get_due_cards
获取下一张到期卡片,支持跳过图片/音频
cards_stats
获取牌组(含子牌组)的批量每卡片调度统计
present_card
获取卡片内容用于复习
rate_card
复习后评价卡片(再次/困难/良好/简单)
model_names
列出可用的笔记类型
model_field_names
获取笔记类型的字段名和描述
model_styling
获取笔记类型的CSS样式
update_model_styling
更新笔记类型的CSS样式
model_templates
读取笔记类型中每种卡片类型的前/后HTML模板
update_model_templates
更新前/后模板HTML
model_fields
管理笔记类型字段,包括添加、重命名、重新定位和删除(破坏性)
create_model
创建新的笔记类型
store_media_file
通过base64、文件路径或URL存储媒体文件,防止路径遍历和SSRF
get_media_files_names
列出匹配模式的媒体文件
delete_media_file
将媒体文件移动到Anki的回收站
get_fsrs_params
获取牌组预设的FSRS调度参数
set_fsrs_params
更新FSRS参数(权重、期望保留率、最大间隔)
get_card_memory_state
获取卡片的FSRS记忆状态(稳定性、难度、可提取性)
optimize_fsrs_params
使用Anki内置优化器运行FSRS参数优化
gui_browse
打开卡片浏览器并执行搜索查询
gui_add_cards
打开添加卡片对话框
gui_edit_note
打开特定笔记的编辑器
gui_current_card
获取当前显示的卡片信息
gui_show_question
显示当前卡片的问题面
gui_show_answer
显示当前卡片的答案面
gui_select_card
在复习器中选择特定卡片
gui_deck_browser
导航到牌组浏览器
gui_undo
撤销上一个操作

安装接入

  1. 打开Anki,进入工具→附加组件→获取附加组件...,输入代码124672614并重启。
  2. 或者从GitHub Releases下载anki_mcp_server.ankiaddon并双击安装。
  3. 对于Claude Desktop,在配置文件(如macOS的~/Library/Application Support/Claude/claude_desktop_config.json)中添加MCP服务器配置,使用npx mcp-remote连接http://127.0.0.1:3141。
  4. 对于Claude Code,运行:claude mcp add anki --transport http http://127.0.0.1:3141/。
claude_desktop_config.json
{
  "mcpServers": {
    "anki": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "http://127.0.0.1:3141"
      ]
    }
  }
}

选型与风险

适合谁

  • 使用Anki进行间隔重复学习并希望利用AI自动化学习流程的用户
  • 需要批量管理卡片、笔记和标签的高级用户
  • 希望将Anki数据集成到AI工作流中的开发者

不适合谁

  • 不需要AI交互且仅希望使用Anki基本功能的普通用户
  • 对技术配置感到不适且希望即插即用的用户
  • 需要官方支持或企业级安全保证的用户

所需权限

  • 读取和修改Anki集合数据(卡片、笔记、牌组、标签)
  • 执行同步操作,与AnkiWeb通信
  • 访问和修改媒体文件(导入、删除)
  • 在Anki界面中执行UI操作(如打开对话框、浏览)

风险与副作用

  • 通过隧道暴露可能增加未经授权访问的风险,但内置DNS重绑定保护和可选API密钥可缓解
  • 破坏性工具(如字段删除)默认隐藏,但用户可选择启用,可能导致数据丢失
  • 媒体文件导入存在路径遍历和SSRF风险,已内置验证,但若配置宽松可能引发安全问题
  • 自动同步可能意外覆盖或修改集合,建议定期备份

常见排障

  1. 首次运行会下载pydantic_core,若失败请检查网络连接并重试
  2. 如果HTTP服务器未启动,检查Anki版本是否>=25.07,并确认配置中http_enabled为true
  3. 若客户端连接失败,确认HTTP端口未被占用,且Host/Origin在允许列表中(启用隧道时)
  4. 查看日志文件(启用log_to_file后)或使用诊断复制按钮收集信息以排查问题

使用场景

通过AI助手进行智能复习会话,包括交互式、快速和语音模式
批量创建和编辑卡片、笔记和标签
分析卡片统计数据和FSRS调度参数
通过GUI工具控制Anki界面,如浏览、添加和编辑卡片
通过远程隧道在外出时访问您的卡片集合

支持客户端

Claude Desktop完整支持
Claude Code完整支持
Opencode完整支持