Anki MCP Server

Anki MCP Server

将 Claude Desktop 连接到 Anki,允许检索和分析带有 leech 标签的卡片,并通过自然语言请求添加复习标签。

Category
访问服务器

README

Anki MCP 服务器

一个用于 Claude Desktop 的 MCP (模型上下文协议) 服务器,它通过 AnkiConnect 连接到 Anki 并检索带有“leech”(水蛭)标签的卡片。

功能

  • 通过 AnkiConnect API 连接到 Anki
  • 检索带有 "leech" 标签的卡片
  • 向卡片添加带有日期戳的复习标签
  • 提供全面的卡片数据,供 Claude 分析
  • 可与 Claude Desktop 一起使用

前提条件

  • 已安装并运行 Anki
  • 已在 Anki 中安装 AnkiConnect 插件
  • Node.js 和 npm

安装

  1. 克隆此存储库:

    git clone https://github.com/yourusername/anki-mcp-server.git
    cd anki-mcp-server
    
  2. 安装依赖项:

    npm install
    
  3. 构建项目:

    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 启用测试的模拟模式 (true/false) false

如果未设置环境变量,服务器将使用默认值。

查找 AnkiConnect 的本地 IP 地址

如果连接到 localhost 不起作用,您需要改用计算机的本地 IP 地址。 使用以下内容配置您的 .env 文件:

ANKI_CONNECT_URL=http://YOUR_LOCAL_IP:8765

要查找您的本地 IP 地址:

  • macOS: 打开终端并运行 ifconfigipconfig getifaddr en0 (对于 WiFi)
  • Windows: 打开命令提示符并运行 ipconfig
  • Linux: 打开终端并运行 ip addr showhostname -I

在输出中查找类似 192.168.x.x10.x.x.x 的 IPv4 地址。

测试配置

为了进行测试,提供了一个单独的配置文件 .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

用法

  1. 确保 Anki 正在运行并安装了 AnkiConnect
  2. 运行 MCP 服务器:
    npm start
    

配置 Claude Desktop

要将此 MCP 服务器与 Claude Desktop 一起使用:

  1. 打开 Claude Desktop

  2. 编辑位于以下位置的 Claude Desktop 配置文件:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
    • Linux: ~/.config/Claude/claude_desktop_config.json
  3. 将以下配置添加到 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?

(你能分析我的 Anki 水蛭卡片并提出改进学习的方法吗?)

Claude 将使用 MCP 服务器来检索您的水蛭卡片并进行分析。

可用工具

get_leech_cards

从 Anki 检索标记为水蛭的卡片。

参数:

  • detailed (可选, 布尔值, 默认值: true): 是否返回全面的卡片数据,或者仅返回 ID
  • count (可选, 数字): 要返回的随机卡片的数量 (默认为所有卡片)

tag_reviewed_cards

向指定的卡片添加带有日期戳的 "reviewed"(已复习)标签。 这允许您跟踪您已使用 Claude 复习过的卡片。

参数:

  • card_ids (必需, 数字数组): 要标记为已复习的卡片 ID 数组
  • custom_tag_prefix (可选, 字符串, 默认值: "見直し"): 标签的自定义前缀

标签的格式将为 見直し::YYYYMMDD (如果指定了自定义前缀,则为您的自定义前缀)。

在 Claude 中的用法示例:

I've reviewed these cards, please tag them as reviewed: [1234567890, 1234567891]

(我已经复习了这些卡片,请将它们标记为已复习:[1234567890, 1234567891])

故障排除

  • "Could not connect to Anki"(无法连接到 Anki) - 确保 Anki 正在运行并且 AnkiConnect 已正确安装
  • "No leech cards found"(未找到水蛭卡片) - 您在 Anki 中没有任何标记为 "leech" 的卡片
  • Connection issues with localhost(与 localhost 的连接问题) - 如果您无法使用 localhost 连接:
    1. 按照配置部分中的描述找到您的本地 IP 地址
    2. 更新您的 .env 文件以使用 ANKI_CONNECT_URL=http://YOUR_LOCAL_IP:8765
    3. 确保 AnkiConnect 配置为允许来自您的 IP 地址的连接
    4. 在进行这些更改后重新启动 MCP 服务器
  • Tag not appearing(标签未出现) - 确保您向 tag_reviewed_cards 工具提供有效的卡片 ID

测试模式

为了在不影响实际 Anki 数据的情况下进行测试,您可以使用模拟模式:

  1. 在您的 .env 文件中设置 ANKI_MOCK_MODE=true 或使用提供的 .env.test 文件
  2. 使用 npm run start:test 运行服务器

在模拟模式下,服务器将模拟所有 Anki 操作,而无需实际连接到 Anki。 这对于测试 Claude 集成而不会冒数据更改的风险非常有用。

开发

要以热重载模式运行服务器进行开发:

npm run dev

对于启用模拟模式的开发:

npm run dev:test

许可证

MIT

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选