Captain Blue210_anki Mcp Server

Captain Blue210_anki Mcp Server

🚀 Anki MCP 服务器

Anki MCP 服务器是专为 Claude Desktop 设计的 Model Context Protocol (MCP) 服务器。它借助 AnkiConnect 与 Anki 相连,能检索带有“leech”标签的卡片,为 Claude 提供丰富的卡片数据用于分析。

✨ 主要特性

  • 通过 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

环境变量说明

属性 详情
ANKI_CONNECT_URL AnkiConnect 的 URL,默认为 http://localhost:8765
ANKI_MOCK_MODE 是否启用 mock 模式,值为truefalse,默认为false

💻 使用示例

基础用法

const { AnkiMCP } = require('anki-mcp');

// 初始化 MCP 服务器
const mcp = new AnkiMCP({
connectUrl: process.env.ANKI_CONNECT_URL,
mockMode: process.env.ANKI_MOCK_MODE === 'true'
});

// 获取所有 leech 卡片
async function getLeechCards() {
try {
const cards = await mcp.getLeechCards();
console.log('获取到的 leech 卡片:', cards);
} catch (error) {
console.error('获取卡片时出错:', error.message);
}
}

// 在卡片上添加复习标签
async function addReviewTag(cardId, customPrefix = '见直し') {
try {
await mcp.addReviewTag(cardId, customPrefix);
console.log('已为卡片', cardId, '添加复习标签');
} catch (error) {
console.error('添加标签时出错:', error.message);
}
}

// 启动服务器
async function startServer() {
try {
await mcp.start();
console.log('MCP 服务器已启动并正在监听...');
} catch (error) {
console.error('启动服务器失败:', error.message);
}
}

使用说明

1. 创建 .env 文件

在项目根目录下创建 .env 文件,并添加上述环境变量。例如:

ANKI_CONNECT_URL=http://localhost:8765
ANKI_MOCK_MODE=false

2. 启动服务器

运行以下命令启动服务器:

npm start

功能说明

  • 检索卡片:通过调用 getLeechCards 方法获取所有带有“leech”标签的卡片。
  • 添加复习标签:使用 addReviewTag 方法在指定卡片上添加日期戳记的复习标签。

📚 详细文档

问题排查

  • 无法连接到 Anki:请确保 Anki 已运行且 AnkiConnect 插件正常安装。
  • 没有找到 leech 卡片:您在 Anki 中没有任何带有“leech”标签的卡片。
  • localhost 连接问题:若使用 localhost 无法连接,请:
    1. 查找您的本地 IP 地址(如 192.168.x.x10.x.x.x)。
    2. 更新 .env 文件,设置 ANKI_CONNECT_URL=http://YOUR_LOCAL_IP:8765
    3. 确保 AnkiConnect 允许来自该 IP 的连接。
    4. 修改后重启 MCP 服务器。

测试模式

为了在不更改实际数据的情况下进行测试,请使用 mock 模式:

  1. .env 文件中设置 ANKI_MOCK_MODE=true 或使用提供的 .env.test 文件。
  2. 使用以下命令启动服务器:
    npm run start:test
    

开发模式

要在开发过程中启用热重载:

npm run dev

对于 mock 模式的开发,请运行:

npm run dev:test

📄 许可证

本项目采用 MIT 许可证。

  • 0 关注
  • 0 收藏,19 浏览
  • system 提出于 2025-09-19 20:24

相似服务问题

相关AI产品