MCP-native collaborative markdown editor with real-time AI document editing
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"tabla-cognita": {
"cwd": "/path/to/tablacognita",
"args": [
"server/index.js",
"--transport",
"stdio"
],
"command": "node"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Co-write with any AI. In your browser. No data on anyone's server.
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in writing / productivity
Persistent memory using a knowledge graph
Dynamic problem-solving through sequential thought chains
mini cli search engine for your docs, knowledge bases, meeting notes, whatever. Tracking current sota approaches while being all local
A markdown editor — and the bridge to your LLM. Local-first, MIT, ~15 MB. Bundled MCP server lets Claude Code / Codex / Cursor drive your vault directly. 14 AI providers BYOK.
MCP Security Weekly
Get CVE alerts and security updates for Tablacognita MCP Server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
Co-write with any AI. In your browser. No data on anyone's server.
TablaCognita is a browser-based Markdown editor where AI is a first-class participant, not a feature bolted onto a text box. Select text and send it to your AI. Watch edits land in real time. Undo anything. The AI sees the document through MCP tools — the same protocol that powers Claude Desktop, Cursor, and every other MCP-capable client.
Your document lives in your browser. The relay server is a stateless wire. Nobody stores your writing.
┌──────────────┐ MCP (stdio | HTTP) ┌──────────────┐ WebSocket ┌──────────────────┐
│ Your AI │◄───────────────────────►│ Relay │◄────────────►│ Browser Editor │
│ (Claude, │ Tool calls/results │ (stateless) │ │ (source of truth)│
│ Cursor, │ │ │ │ │
│ any MCP) │ └──────────────┘ │ CodeMirror 6 │
└──────────────┘ │ Live preview │
│ Section tracking │
│ Lock management │
└──────────────────┘
The AI reads and writes through 17 MCP tools. The editor handles section addressing, fuzzy text matching, collision avoidance, and undo. The relay just passes messages. That's it.
git clone https://github.com/pstryder/tablacognita.git
cd tablacognita
npm install
npm start
Open http://localhost:3000 in your browser. The editor is live.
Connect your MCP client. For Claude Desktop, add to your config:
{
"mcpServers": {
"tabla-cognita": {
"command": "node",
"args": ["server/index.js", "--transport", "stdio"],
"cwd": "/path/to/tablacognita"
}
}
}
Your AI can now read your document, edit sections, replace text, and respond to selections you send it from the editor.
Read — read_document, get_structure, get_section. The AI sees your full document, section outline, or individual sections by heading name or stable ID.
Write — replace_section, replace_text, insert_after, append. Section-level edits with auto-locking. Fuzzy text matching that works through markdown formatting (**bold text** matched by searching "bold text"). Full document replacement requires your confirmation in the browser.
Coordinate — request_edit_lock, release_lock, get_cursor_context, get_dirty_regions, poll_context. The AI knows where your cursor is, which sections you've edited since it last looked, and can lock sections for multi-step operations. All locks have TTLs — nothing stays locked forever.
Manage — open_document, snapshot, restore_snapshot, get_revision_history. Named checkpoints saved to your browser's IndexedDB. Restore any snapshot with one tool call.
Browser is source of truth. The relay holds zero document state. If the relay restarts, your document is still in your browser. The AI reconnects and continues.
Section IDs are stable. Rename a heading from "Introduction" to "Overview" — the section ID doesn't change. The AI can always find its way back.
Agent edits are undoable. Every AI edit goes through CodeMirror's transaction system. Ctrl+Z works on AI edits exactly like your own.
Locks are intent signals, not mutexes. Auto-locks during edits are atomic and invisible. Explicit locks for multi-step operations have TTLs and never block you — just a gentle indicator that the AI is working on a section.
Notifications are fire-and-forget. The editor tells the AI when you move between sections, rename headings, or delete content. If the transport doesn't support notifications, the AI