/ 目錄 / 演練場 / affine-mcp-server
● 社群 DAWNCR0W ⚡ 即開即用

affine-mcp-server

作者 DAWNCR0W · DAWNCR0W/affine-mcp-server

將 Claude 連接至您的 AFFiNE 工作區——涵蓋文件、資料庫、留言、Blob、使用者等 87 項工具,支援 API 金鑰、Cookie 或帳號密碼驗證。

affine-mcp-server 提供 87 項工具,涵蓋 AFFiNE 整體架構:工作區、組織、文件、資料庫、留言、歷史記錄、使用者/金鑰及 Blob 儲存。支援 AFFiNE Cloud(使用 API 金鑰)或自架伺服器(亦支援帳號密碼登入)。

為什麼要用

核心特性

即時演示

實際使用效果

affine.replay ▶ 就緒
0/0

安裝

選擇你的客戶端

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "affine": {
      "command": "npx",
      "args": [
        "-y",
        "affine-mcp-server"
      ],
      "_inferred": true
    }
  }
}

開啟 Claude Desktop → Settings → Developer → Edit Config。儲存後重啟應用。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "affine": {
      "command": "npx",
      "args": [
        "-y",
        "affine-mcp-server"
      ],
      "_inferred": true
    }
  }
}

Cursor 使用與 Claude Desktop 相同的 mcpServers 格式。專案級設定優先於全域。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "affine": {
      "command": "npx",
      "args": [
        "-y",
        "affine-mcp-server"
      ],
      "_inferred": true
    }
  }
}

點擊 Cline 側欄中的 MCP Servers 圖示,然後選 "Edit Configuration"。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "affine": {
      "command": "npx",
      "args": [
        "-y",
        "affine-mcp-server"
      ],
      "_inferred": true
    }
  }
}

格式與 Claude Desktop 相同。重啟 Windsurf 生效。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "affine",
      "command": "npx",
      "args": [
        "-y",
        "affine-mcp-server"
      ]
    }
  ]
}

Continue 使用伺服器物件陣列,而非映射。

~/.config/zed/settings.json
{
  "context_servers": {
    "affine": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "affine-mcp-server"
        ]
      }
    }
  }
}

加入 context_servers。Zed 儲存後熱重載。

claude mcp add affine -- npx -y affine-mcp-server

一行命令搞定。用 claude mcp list 驗證,claude mcp remove 移除。

使用場景

實戰用法: affine-mcp-server

從 Claude 快速將筆記存入 AFFiNE

👤 以 AFFiNE 作為主要筆記工具的使用者 ⏱ ~5 min beginner

何時使用: 對話中想將重點記錄到 AFFiNE,又不想切換視窗。

前置條件
  • AFFiNE API 金鑰 — AFFiNE Cloud:前往「設定 > 整合 > MCP Server」取得
步驟
  1. 查詢工作區
    列出我的 AFFiNE 工作區,我想寫入「Personal」。✓ 已複製
    → 工作區清單
  2. 建立文件
    建立一份標題為「2026-04-14 會議記錄」的新文件,內容為 [貼上內容],放在 /Meetings 下。✓ 已複製
    → 文件建立成功並附上網址

結果: 無需離開對話視窗,筆記即存入 AFFiNE。

注意事項
  • Cloudflare 封鎖了 Cloud 版的帳號密碼登入 — Cloud 版請使用 API 金鑰;帳號密碼登入僅限自架伺服器

根據外部訊號將資料列新增至 AFFiNE 資料庫

👤 將 AFFiNE 資料庫當作輕量 CRM 或追蹤工具的知識工作者 ⏱ ~10 min intermediate

何時使用: 希望每位從電子郵件訂閱電子報的人自動進入「Contacts」AFFiNE 資料庫。

步驟
  1. 列出資料庫
    顯示我「Work」工作區中的所有資料庫。✓ 已複製
    → 資料庫清單
  2. 新增資料列
    在「Contacts」資料庫中新增一筆資料:name='Jane Doe'、email='[email protected]'、source='Newsletter'、date=今天。✓ 已複製
    → 資料列新增成功並附上 UUID

結果: 以 LLM 驅動 AFFiNE 作為輕量級 CRM。

注意事項
  • 欄位類型必須符合資料庫結構描述 — 請先透過類似 describe-database 的工具取得結構描述

跨 AFFiNE 工作區搜尋並彙整結果

👤 擁有大量文件的 AFFiNE 進階使用者 ⏱ ~10 min beginner

何時使用: 記得曾寫過某主題,但忘了存在哪裡。

步驟
  1. 搜尋
    在我的所有工作區中搜尋「series A process」,列出前 10 篇文件並附上摘錄。✓ 已複製
    → 文件搜尋結果並附上關鍵片段
  2. 彙整
    載入前 3 篇文件,彙整重點並指出任何矛盾之處。✓ 已複製
    → 跨文件彙整摘要

結果: 從自己的筆記中挖掘出組織知識。

組合

與其他 MCP 搭配,撬動十倍槓桿

將內容存入 AFFiNE

將這部影片摘要後儲存至 AFFiNE 的「Talks Notes」資料庫。✓ 已複製

工具

此 MCP 暴露的能力

工具輸入參數何時呼叫成本
list_workspaces 瀏覽您的 AFFiNE 架構 1 API call
search_documents workspace_id, query, limit? 依文字內容搜尋文件 1 API call
create_document workspace_id, title, content, parent_id? 新增文件 1 API call
update_document doc_id, content | title 編輯現有文件 1 API call
add_database_row database_id, fields: obj 輸入結構化資料 1 API call

成本與限制

運行它的成本

API 配額
受 AFFiNE 方案限制
每次呼叫 Token 數
文件內容長度差異極大——建議依章節篩選以控制用量
費用
自架伺服器免費;Cloud 版有付費方案
提示
優先使用 search_documents,避免先列出所有文件再於程式中過濾。

安全

權限、密鑰、影響範圍

最小權限: Workspace-scoped API token where possible
憑證儲存: 使用 AFFINE_API_TOKEN 環境變數;切勿提交至版本控制
資料出站: 您的 AFFiNE 資料將傳送至 LLM 服務提供商
切勿授予: Cookie auth on a shared machine — cookies are user-session-equivalent

故障排查

常見錯誤與修復

401 / token invalid

前往「設定 > 整合 > MCP Server」重新產生金鑰,並將新金鑰貼入環境變數。

Cannot find workspace

請確認是伺服器同步工作區還是本地工作區——只有同步至伺服器的工作區才可存取。

驗證: 開啟 AFFiNE 介面,確認該工作區是否已啟用雲端同步。
DB row rejected — field type mismatch

請先取得結構描述再進行比對,日期欄位通常需要 ISO-8601 格式字串。

替代方案

affine-mcp-server 對比其他方案

替代方案何時用它替代權衡
Notion MCP您使用 Notion 而非 AFFiNE不同產品;生態系較為成熟
Obsidian MCP您全面採用 Obsidian Markdown 檔案本地優先;設計理念不同

更多

資源

📖 閱讀 GitHub 上的官方 README

🐙 查看未解決的 issue

🔍 瀏覽全部 400+ MCP 伺服器和 Skills