mcpField
A
Anki MCP

Anki MCP

本地服务
github.com科研与教育02 天前更新

关于 Anki MCP

Anki MCP 通过 AnkiConnect 将 MCP 客户端连接到 Anki Desktop,让用户在 AI 聊天应用中管理学习材料。它支持笔记和牌组操作、卡片预览、媒体及牌组包。

主要功能

  1. 01搜索、创建和编辑笔记
  2. 02管理牌组和卡片
  3. 03预览卡片 HTML 与 CSS
  4. 04处理媒体文件
  5. 05导入和导出 .apkg 包

适用场景

  1. 01按文本或标签查找笔记
  2. 02为牌组起草词汇笔记
  3. 03修改前检查卡片内容
  4. 04预览牌组导出

MCP 相关

本地 stdio MCP 服务向 MCP 客户端提供基于 AnkiConnect 的工具,以操作 Anki Desktop。Anki Desktop 需保持运行并启用 AnkiConnect。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"ryhus-anki": {
"command": "npx",
"args": [
"-y",
"@ryhus/anki-mcp"
],
"env": {
"ANKI_URL": "<ANKI_URL>",
"ANKI_API_MODE": "<ANKI_API_MODE>",
"ANKI_REQUEST_TIMEOUT_MS": "<ANKI_REQUEST_TIMEOUT_MS>",
"ANKI_MEDIA_IMPORT_DIRS": "<ANKI_MEDIA_IMPORT_DIRS>",
"ANKI_PACKAGE_IMPORT_DIR": "<ANKI_PACKAGE_IMPORT_DIR>",
"ANKI_PACKAGE_EXPORT_DIR": "<ANKI_PACKAGE_EXPORT_DIR>"
}
}
}
}
启动命令npx -y @ryhus/anki-mcp
需要配置的环境变量
ANKI_URLAnkiConnect base URL on your computer. Keep Anki Desktop open; omit /api/v1.
ANKI_API_MODEUse v1 for the full tool set with compatible AnkiConnect, or legacy for older add-ons.
ANKI_REQUEST_TIMEOUT_MSRequest deadline in integer milliseconds, including queue wait: 1 to 300000.
ANKI_MEDIA_IMPORT_DIRSOptional trusted local media folders. Separate with : on macOS/Linux or ; on Windows.
ANKI_PACKAGE_IMPORT_DIROptional existing absolute folder for local .apkg imports. Requires API v1.
ANKI_PACKAGE_EXPORT_DIROptional existing absolute folder for local .apkg exports. Requires API v1.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@ryhus/anki-mcp0.1.1

工具

73

收录的工具列表 · 更新于 2 天前

此工具无需参数。

详细介绍

Anki MCP

在 AI 聊天应用中使用 Anki Desktop。搜索、创建和编辑笔记; 管理牌组和卡片;预览卡片的 HTML/CSS;以及处理媒体和 .apkg 牌组包。

你的 MCP 客户端是你用来聊天的应用,而不是 Anki Desktop。它需要 支持启动本地 MCP 服务(也称为 stdio 服务)。它会启动 Anki MCP, 让你的助手能够使用 Anki 工具。

快速开始

  1. 安装 Node.js 24 或更高版本及 npm。
  2. 在 Anki Desktop 中,通过 Tools → Add-ons → Get Add-ons 使用代码 2055492159 安装 AnkiConnect。 重启 Anki 并保持运行。
  3. 在 MCP 客户端的设置中添加以下服务配置。 无需克隆或全局安装。
{
  "mcpServers": {
    "anki": {
      "command": "npx",
      "args": ["--yes", "--prefer-online", "--package=@ryhus/anki-mcp@latest", "anki-mcp"],
      "env": {
        "ANKI_URL": "http://127.0.0.1:8765",
        "ANKI_API_MODE": "v1"
      }
    }
  }
}

如果客户端提供表单,请在 Command 中只填写 npx,将四个 Arguments 分别填写,并添加上方所示的两个 Environment variables。ANKI_URL 是 AnkiConnect 地址,不是远程 MCP URL。

重新加载客户端,然后询问:“列出我的 Anki 牌组,不要进行任何更改。”

@latest 会在服务启动时检查当前版本;它不会更新正在运行的服务。 如果想自行控制更新,请将 @latest 替换为确切的已发布版本,例如 @0.1.0。

试试看

  • “查找带有 a1 标签且提到 Haus 的德语笔记。”
  • “为我的德语牌组起草三条词汇笔记。创建前先给我看看草稿。”
  • “显示这张卡片正面和背面的 HTML,不要进行更改。”
  • “预览导出我的德语牌组,但不包含复习记录。”

设置

  • ANKI_API_MODE=v1 可通过兼容的 AnkiConnect 版本启用完整工具集。对于较旧的插件,请使用 legacy 以启用受支持的工具子集。
  • 要启用本地 .apkg 导入或导出,请将 ANKI_PACKAGE_IMPORT_DIR 或 ANKI_PACKAGE_EXPORT_DIR 设为一个已存在且可信的绝对路径文件夹。 两者分别启用,且都需要本地 AnkiConnect v1。
  • 要从磁盘导入媒体,请使用 ANKI_MEDIA_IMPORT_DIRS 将其来源文件夹加入允许列表。公开的 HTTPS 和 base64 来源无需此设置。

批准破坏性更改前,请先查看预览。并非所有工具都提供预览。 服务不会创建备份,也不会自动重试写入操作;发生错误后,请先检查 Anki,再重复操作。

故障排除

  • 客户端找不到 npx: 确保 Node 和 npm 都在客户端的 PATH 中。在 Windows 上,如果客户端需要此命令垫片,请使用 npx.cmd。
  • 无法连接 Anki: 检查 Anki 是否已打开,以及 AnkiConnect 是否已启用。 在 ANKI_URL 中使用基础地址,不要带 /api/v1。
  • 找不到软件包: 检查请求的版本是否已发布,以及客户端能否访问 npm 注册表。

MIT 许可证。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。