Anki MCP Server

Anki MCP Server

镜子 (jìng zi)

MCP-Mirror

研究与数据
访问服务器

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

推荐服务器

Crypto Price & Market Analysis MCP Server

Crypto Price & Market Analysis MCP Server

一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。

精选
TypeScript
MCP PubMed Search

MCP PubMed Search

用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。

精选
Python
mixpanel

mixpanel

连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

精选
TypeScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Nefino MCP Server

Nefino MCP Server

为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。

官方
Python
Vectorize

Vectorize

将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。

官方
JavaScript
Mathematica Documentation MCP server

Mathematica Documentation MCP server

一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。

本地
Python
kb-mcp-server

kb-mcp-server

一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。

本地
Python
Research MCP Server

Research MCP Server

这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

本地
Python
Cryo MCP Server

Cryo MCP Server

一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。

本地
Python