Affine MCP Server

by DAWNCR0W• 317•• Scanned•Claim this listing•Request removal
Database Managementaffineai assistantsclaudecodexcursor

Model Context Protocol server for AFFiNE. Connect AI assistants to AFFiNE workspaces, documents, databases, and collaboration APIs over stdio or HTTP.

Affine MCP Server is an open-source mcp server by DAWNCR0W, written mainly in JavaScript, with 317 GitHub stars and the MIT license. Its code was last updated Oct 30, 2026. The latest npm release is affine-mcp-server 3.13.0, published Nov 12, 2026, with 1,543 downloads last week.

Scan summary: scanned Nov 5, 2026 at commit 00f1162. Seen able to connect to databases. Scan policy

What Affine MCP Server can touch

  • Run shell commandsNot seen in this scan
  • Run dynamic codeNot seen in this scan
  • Read or write filesNot seen in this scan
  • Read environment and secretsNot seen in this scan
  • Control a web browserNot seen in this scan
  • Connect to databasesListed as a tool: add_database_row
  • Read or send messagesNot seen in this scan
  • Touch money or tradingNot seen in this scan
  • Connect to the internetNo connections seen while running

"Not seen" means our checks did not find it, and the tool may still do it. Covers commit 00f1162, Nov 5, 2026. See the scan policy.

Before you install Affine MCP Server

AgenticMart scanned Affine MCP Server on Nov 5, 2026 with automated checks for hidden code, known-malicious packages, leaked secrets and vulnerable dependencies. The result covers one commit under our scan policy, so review what access you give it and check any advisories shown here.

What it can access

  • An MCP server is a program your AI app starts and talks to. A local one runs with your user's permissions: it can see the files, environment variables and network your account can.
  • Based on its description and topics, it likely needs to connect to a database.

Before you install

  1. Give it a read-only database user unless it must write.
  2. Pin the version you reviewed instead of always installing the latest release.
  3. Read the tool list or scripts before the first run, and keep approval prompts on for actions that write, send or delete.
  • Maintained by DAWNCR0W on GitHub, 317 stars and 84 forks. Popularity is not proof of safety.
  • Last code change: Oct 30, 2026.
  • Open-source license: MIT.

Tools Affine MCP Server exposes (108)

Listed by the server itself during our scan of commit 00f1162.

  • list_workspaces

    List available AFFiNE workspaces with best-effort profile metadata and direct URLs

  • get_workspace

    Get workspace details with best-effort profile metadata and a direct URL

  • create_workspace

    Create a new workspace with initial document (accessible in UI)

  • update_workspace

    Update workspace settings. Requires at least one of public or enableAi.

  • delete_workspace

    Delete a workspace permanently and report success only when AFFiNE confirms the mutation.

  • create_mindmap

    Create a native AFFiNE mindmap with one root shape in an existing document. Returns mindmapId/rootId for add_mindmap_node. Only right/left/balance are supported; down/up are unsupported by BlockSuite. Does not create a document or sidebar link.

  • get_mindmap

    Read and validate native mindmap hierarchy, ordered child IDs, text, collapsed state, geometry, and supported directions. Discover mindmapId via get_edgeless_canvas.

  • add_mindmap_node

    Add one native child shape to parentId inside mindmapId. beforeId optionally inserts before a sibling; otherwise append. Returns nodeId. Persists hierarchy and layout together. Maximum 500 nodes, depth 64; shape nodes only.

  • update_mindmap_node

    Replace a native node's text and/or set collapsed. Keeps node IDs and hierarchy. Recalculates geometry; the editor may refine text dimensions when opened.

  • reparent_mindmap_node

    Move a node with all descendants to a parent in the SAME native mindmap; beforeId optionally reorders siblings. Rejects root moves, cycles, missing/foreign IDs. Preserve collapsed state. One shared MCP server serializes workspace mutations; independent servers and native editors have no compare-and-

  • set_mindmap_style

    Switch native style ONE=1, TWO=2, THREE=3, FOUR=4. Persists the preset on all nodes, sizes and layout; native connectors follow style. Keeps IDs, hierarchy, collapsed state and root anchor. Rejects locked maps/nodes.

  • set_mindmap_lock

    Set the mindmap's native lockedBySelf flag. Nodes inherit the lock in AFFiNE. Unlock does not clear ancestor-group or independently locked node flags; read the returned effective locked state. Does not change layout or styles. This is an editor lock, not an access-control boundary.

  • set_mindmap_layout

    Set right, left, or balance and persist native node positions. Root stays anchored; collapsed flags remain unchanged. BlockSuite does not support down/up. This is a native mindmap, with editor-derived connectors.

  • list_docs

    List documents in a workspace (GraphQL), falling back to bounded workspace metadata when GraphQL document access is denied. Each doc includes an inTrash flag; fallback summary, public, and defaultRole values are null. GraphQL and fallback cursors are not interchangeable; restart pagination without a

  • search_docs

    Fast search for documents by title using workspace metadata. Much faster than exporting each doc. Returns docId, title, direct URL, and inTrash for each match, plus offset/limit pagination state (hasMore, truncated, and nextOffset).

  • find_doc_by_title

    Resolve docs by exact title. Returns ALL matches up to `limit` (callers handle ambiguity). Case-sensitive by default; pass `caseInsensitive: true` to fold case. Reads workspace metadata — fast, no per-doc fetch. Unlike `search_docs` (which is always case-insensitive and capped at limit 20), this too

  • list_tags

    List all workspace-level tags and the number of documents attached to each tag. Use this before tag mutation when the exact tag name or id is unknown.

  • list_docs_by_tag

    List documents that contain the requested tag. This is read-only and each result includes title metadata and an inTrash flag.

  • create_tag

    Create a workspace-level tag entry for future reuse. This does not attach the tag to a document; use add_tag_to_doc for that.

  • add_tag_to_doc

    Attach a workspace tag to a document, creating the workspace tag option if needed. Document tags are stored in workspace metadata.

  • remove_tag_from_doc

    Detach a tag from one document without deleting the workspace-level tag. Use delete_tag only when the tag should be removed from every document.

  • delete_tag

    Delete a workspace-level tag and remove it from every document that references it. Accepts a tag id or name; an ambiguous name is rejected with the candidate ids.

  • get_doc

    Read GraphQL metadata for one document, such as title, summary, public state, roles, and timestamps. Use read_doc when you need block content.

  • read_doc

    Read document block content and its revision via WebSocket snapshot. Pass revision as expectedRevision on a document write to reject stale edits through a shared MCP server. Each block includes plain text and formatting-preserving deltas. Set includeMarkdown: true to also get rendered markdown, whic

  • get_capabilities

    Return machine-readable capability flags for this MCP server, including static feature support and the effective enabled tool surface.

  • analyze_doc_fidelity

    Inspect a document for markdown export fidelity risk, including unsupported AFFiNE block flavours and risky content paths.

  • move_doc

    Move a doc in the AFFiNE sidebar. The destination link is validated and added before the optional source link is removed, cycles are rejected, and partial outcomes are reported explicitly.

  • publish_doc

    Make a document publicly accessible through AFFiNE public sharing. This changes sharing state; use revoke_doc to disable public access later.

  • revoke_doc

    Disable public sharing for a document without deleting the document. Use delete_doc only when the document itself should be removed.

  • create_doc

    Create a new AFFiNE document with optional plain-text content stored as one paragraph. Use create_doc_from_markdown for native headings, lists, links, and code blocks. If parentDocId is provided, the new doc is linked into the sidebar tree immediately. If folderId is provided, the doc is placed insi

  • create_semantic_page

    Create an AFFiNE-native page with intentional section structure and native block composition.

  • append_semantic_section

    Append a semantic section to an existing AFFiNE document by heading title and native block composition.

  • append_block

    Append document blocks with canonical types and legacy aliases (supports placement + strict validation).

  • export_doc_markdown

    Export AFFiNE document content to markdown.

  • export_with_fidelity_report

    Export document markdown together with a structured fidelity report that highlights markdown loss risk and unsupported AFFiNE-native content.

  • create_doc_from_markdown

    Create a new AFFiNE document and import Markdown as native blocks, including $$...$$ equation blocks and $...$ inline equations. Use parentDocId to embed the new doc into a parent, or folderId to place it in an organize folder.

  • append_markdown

    Append markdown content to an existing AFFiNE document. $$...$$ and $...$ become native equations.

  • replace_doc_with_markdown

    Replace the main note content of a document with markdown content.

  • trash_doc

    Move a document to the AFFiNE trash without deleting its content. This is recoverable with restore_doc and safe to retry.

  • restore_doc

    Restore a document from the AFFiNE trash without changing its content. This is safe to retry.

Affine MCP Server is an open-source mcp server by DAWNCR0W, written mainly in JavaScript. Model Context Protocol server for AFFiNE. Connect AI assistants to AFFiNE workspaces, documents, databases, and collaboration APIs over stdio or HTTP.

At a glance

Stars
317
Forks
84
Language
JavaScript
License
MIT
Created
Aug 2025
Last update
Oct 30, 2026
Type
MCP Server
Price
Free

Topics

affineai-assistantsclaudecodexcursorknowledge-basemcpmodel-context-protocol

Questions about Affine MCP Server

What is Affine MCP Server?

Model Context Protocol server for AFFiNE. Connect AI assistants to AFFiNE workspaces, documents, databases, and collaboration APIs over stdio or HTTP.

Who maintains Affine MCP Server?

Affine MCP Server is maintained by DAWNCR0W on GitHub (DAWNCR0W/affine-mcp-server). AgenticMart lists it from public repository data.

Is Affine MCP Server safe to use?

AgenticMart scanned Affine MCP Server on Nov 5, 2026 with automated checks for hidden code, known-malicious packages, leaked secrets and vulnerable dependencies. The result covers one commit under our scan policy, so review what access you give it and check any advisories shown here.

What license does Affine MCP Server use?

It is published under the MIT license.

Affine MCP Server alternatives

View more →

Similar mcp servers in Database Management, ranked by GitHub stars. Compare licence, recent activity and scan status before you choose.

NameStarsLicenceLast updatedScan
Affine MCP Server (this page)
DAWNCR0W
317MITOct 30, 2026Scanned, no flagged issues
Codebase Memory MCP
DeusData
48kMITNov 1, 2026Scanned, see report
Xerj
xerj-org
19kApache-2.0Nov 1, 2026Scanned, no flagged issues
MCP Toolbox
googleapis
17kApache-2.0Nov 1, 2026Scanned, no flagged issues
Nightingale
ccfos
13kApache-2.0Oct 30, 2026Scanned, no flagged issues
Dbhub
bytebase
3.8kMITOct 26, 2026Scanned, no flagged issues