MCP server exposing Cairn's local-first file-organization tools to Claude Code, Codex, Cursor, and any MCP client.
Project description
cairn-mcp-server
An MCP server that exposes Cairn's local-first file-organization tools to
Claude Code, Codex, Cursor, and any MCP client. Point it at a folder and
your agent gains file tools: list, read, search, grep, edit, move, tag, query,
digest, and retrieve — over the .uni document format and plain markdown with
YAML frontmatter.
This is the flagship, UI-less face of the product. The MCP client supplies the agent loop, the approval prompts, and the chat. Nothing of ours runs remotely; the server is a local process over your own files.
Install & run
uvx cairn-mcp-server --workspace ~/Documents/notes
To import real documents (docx/pdf/pptx/xlsx/md), install the converter extra:
uvx --with "cairn-core[convert]" cairn-mcp-server --workspace ~/Documents/notes
Use it in Claude Code
claude mcp add cairn -- uvx cairn-mcp-server --workspace ~/Documents/notes
Or in any MCP client config:
{
"mcpServers": {
"cairn": {
"command": "uvx",
"args": ["cairn-mcp-server", "--workspace", "~/Documents/notes"]
}
}
}
Tools
| Tool | Kind | Purpose |
|---|---|---|
list_dir, get_file_tree, read_detail |
read-only | inspect the workspace |
search_files, grep, semantic_retrieve |
read-only | find things |
find_by_meta, digest_workspace |
read-only | exact metadata queries; a token-efficient workspace map |
get_file_tags, get_tag_tree, list_templates |
read-only | inspect tags; list document templates |
create_file, create_folder, update_file_tags |
write | add content (create_file supports template/fields) |
import_document, import_folder |
write | convert docx/pdf/pptx/csv/xlsx/md → editable .uni |
multi_edit, rename_item, move_item, delete_item |
destructive | change/relocate (client confirms) |
Read-only tools carry readOnlyHint; destructive tools carry destructiveHint,
so clients like Claude Code run reads freely and prompt before destructive edits.
Also exposes workspace://tree and workspace://tags resources, and
organize / tag_all prompts (slash-commands in the client).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cairn_mcp_server-0.2.0.tar.gz.
File metadata
- Download URL: cairn_mcp_server-0.2.0.tar.gz
- Upload date:
- Size: 4.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eb7906ffbec44e3290012e6893f5c8953a998645c9524c36331acb48c9b196f2
|
|
| MD5 |
6ef6092acd5ef40944fe625c966159b4
|
|
| BLAKE2b-256 |
570113cde3019b77a847bc59d3e80a7a86c0e54cb949e6bc8c28401ef79afdb2
|
File details
Details for the file cairn_mcp_server-0.2.0-py3-none-any.whl.
File metadata
- Download URL: cairn_mcp_server-0.2.0-py3-none-any.whl
- Upload date:
- Size: 5.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fd07121334c7e8c5af93d9160dc5d3f6867ab937d4fe18e9b480b9002373be4b
|
|
| MD5 |
a8c69da5288fb6b5e980c1646ced660d
|
|
| BLAKE2b-256 |
d175cbde6edff9c69182bde0a089a81231d1af0601e9e991b21e3e935c261ba8
|