Rootr MCP Server
Provides AI agents with direct, permissioned access to team documents, databases, spreadsheets, and knowledge via an MCP interface, enabling natural-language queries and management.
README
Rootr CLI + MCP Server
Connect your team's living knowledge base to Claude, ChatGPT, and any AI agent.
Rootr is a team knowledge & document workspace. This package is the official way to give an AI agent direct, permissioned access to your team's shared documents, structured data, and institutional knowledge — so your assistant already knows what your team knows, instead of you copy-pasting context into every conversation.
There are two ways to connect.
1. Remote connector — no install (recommended)
Rootr hosts a remote MCP endpoint over Streamable HTTP. In Claude Desktop, claude.ai, or ChatGPT, add a connector with just the URL and sign in with OAuth:
https://rootr.io/mcp
No JSON, no CLI, no tokens to paste. Log in, pick the workspace, and your team's docs are available to the assistant with your existing permissions. See the docs.
2. Local CLI / stdio MCP server (rootr-cli)
For the shell, or for agents that speak to a local stdio MCP server (e.g. Claude Code):
npm install -g rootr-cli
rootr config --api-key rootr_xxxx --workspace ws_xxx
rootr mcp # start the stdio MCP server
The rootr command also works standalone: ls, read, write, append, edit,
search, ask, ws, config.
Pure Node.js ESM, no build step. Requires Node 18+ (uses the built-in fetch).
- Homepage: https://rootr.io
- Docs: https://rootr.io/en/docs
- npm: https://www.npmjs.com/package/rootr-cli
Install
Run it straight from a clone, or install globally.
npm install -g rootr-cli
rootr --help
# or from source
cd cli && npm install
node bin/rootr.js --help
Configuration
Precedence: environment variables > ~/.rootr/config.json
| Env var | Config key | Description |
|---|---|---|
ROOTR_API_KEY |
apiKey |
A rootr_... API key. Sent as the x-api-key header on every request. |
ROOTR_WORKSPACE |
workspace |
Workspace id |
ROOTR_BASE_URL |
baseUrl |
Defaults to https://rootr.io/api/v1 |
Save to the config file (created with chmod 600):
rootr config --api-key rootr_xxxxxxxxxxxxxxxx --workspace ws_123
# optional on-prem / dev base URL
rootr config --api-key rootr_xxx --workspace ws_123 --base-url https://dev.rootr.io/api/v1
rootr config # show current config (api key shown masked)
Two kinds of key
Rootr API keys come in two kinds, and some tools require a specific one:
- Workspace key — scoped to a single workspace
(
docs:read/docs:write/graph:read/ask/webhooks:manage). Enough for most document, LOG, issue, webhook, and ask tools. - Account key (PAT) — acts across your whole account. With the
workspaces:createscope it can create new workspaces (rootr_create_workspace). Using a workspace key for an account-level action returns a403with a hint that an account key is required.
CLI usage
Path rule: an argument starting with / is treated as a path (resolved to a node id
via the by-path API; needs a workspace set). Otherwise it is treated as a node id.
rootr ls # whole tree (TYPE<TAB>path)
rootr ls /notes # subtree
rootr read /notes/todo.md # markdown to stdout
rootr read /notes/todo.md --json # full JSON incl. metadata
echo "# Title" | rootr write /notes/new.md # full replace (creates if missing)
rootr write /notes/new.md --file ./local.md
rootr append /notes/log.md "Deployed today" # safe, conflict-free
rootr append /notes/log.md "- one more" --heading "## Todo"
rootr edit /notes/todo.md --find "- [ ] ship" --replace "- [x] ship"
rootr search "deploy runbook" # path — snippet
rootr ws # list workspaces (id<TAB>name)
rootr ask "why did latency go up after last week's deploy?"
append never rewrites the whole document, so it is safe to run concurrently. write
supports --if-match "\"etag\"" for optimistic concurrency (a 412 means the document
changed underneath you — re-read and retry). edit returns 409 if --find is missing or
not unique; pass --all to replace every match. ask queries the workspace knowledge graph
(GraphRAG) and prints the answer plus citations (document path: quote).
Use as an MCP server
rootr mcp starts a Model Context Protocol server over stdio. It exposes 80+ tools
across the full Rootr surface, so an agent can author and query every node type:
| Group | Tools (examples) |
|---|---|
| Documents | rootr_list, rootr_read, rootr_append (recommended, conflict-free), rootr_edit, rootr_write, rootr_search, rootr_document_versions, rootr_delete_node, rootr_duplicate_node |
| Publishing & comments | rootr_publish_document, rootr_set_document_public, rootr_document_public_status, rootr_comment_document, rootr_list_document_comments |
| Workspaces & scaffolding | rootr_workspaces, rootr_scaffold_plan, rootr_create_workspace, rootr_scaffold_apply |
| Databases (typed columns + board/table views) | rootr_read_database, rootr_add_row, rootr_update_row, rootr_delete_row, rootr_list_rows |
| Spreadsheets (formulas) | rootr_create_spreadsheet, rootr_read_spreadsheet, rootr_update_spreadsheet, rootr_create_sheet, rootr_update_sheet, rootr_delete_sheet, rootr_patch_spreadsheet_cells |
| Whiteboards | rootr_create_whiteboard, rootr_read_whiteboard, rootr_update_whiteboard |
| Forms | rootr_create_form, rootr_read_form, rootr_update_form, rootr_list_form_responses, rootr_submit_form_response, rootr_create_form_share_link, rootr_list_form_share_links |
| CRM | rootr_crm_* — companies, contacts, deals (kanban), activities, tasks, CSV import |
| Presentations | rootr_create_presentation, rootr_read_presentation, rootr_update_presentation, rootr_update_presentation_slide, rootr_append_presentation_slides, rootr_reorder_presentation_slides |
| LOG datastores | rootr_create_log_store, rootr_update_log_fields, rootr_add_log_entries, rootr_query_log_entries, rootr_log_stats |
| Issues | rootr_create_issue_tracker, rootr_list_issues, rootr_create_issue, rootr_get_issue, rootr_update_issue, rootr_comment_issue |
| Webhooks | rootr_list_webhooks, rootr_create_webhook, rootr_delete_webhook |
| GraphRAG ask | rootr_ask — natural-language root-cause Q&A over the knowledge graph, with citations |
| Images | rootr_generate_image, rootr_remove_image_background |
Tool descriptions steer agents to prefer rootr_append / rootr_edit over the destructive
rootr_write. Tools that take a workspace argument fall back to ROOTR_WORKSPACE (or the
config default) when it is omitted. All tool schemas are in English; JSON-returning tools
respond with pretty-printed JSON text.
Register in Claude Code / Claude Desktop
Add to ~/.claude.json (Claude Code) or your Claude Desktop MCP config:
{
"mcpServers": {
"rootr": {
"command": "rootr",
"args": ["mcp"],
"env": {
"ROOTR_API_KEY": "rootr_xxxxxxxxxxxxxxxx",
"ROOTR_WORKSPACE": "ws_123"
}
}
}
}
(If you did not install globally, use "command": "node" and
"args": ["/path/to/rootr-cli/bin/rootr.js", "mcp"].)
Error handling
On a non-2xx response the CLI prints the API message (when present) to stderr and exits 1:
401/403— check the API key / workspace scope412— document changed since you read it (If-Match mismatch): re-read and retry409— the server's reason is shown verbatim (e.g.editfind not found / not unique)
Layout
bin/rootr.js— entry point, command dispatchlib/config.js— config load/savelib/client.js— Rootr REST API clientlib/resolve.js— shared path/id target resolutionlib/mcp.js— MCP stdio server, assembles all tool groupslib/mcp-tools/*— one module per tool group (documents, workspaces, databases, spreadsheets, whiteboards, forms, crm, presentations, logs, issues, webhooks, ask, misc)
Dependencies: @modelcontextprotocol/sdk (MCP server) and zod (tool input schemas). The
CLI core has no external dependencies. No build step — pure ESM JavaScript.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。