Connect Obsidian to AI Agents
Team Relay MCP Server gives Claude Code, Codex, or OpenCode read/write access to a shared Obsidian vault, synced live.
1.0.0Add to Favorites
Why it matters
Grant your AI agent read/write access to your Obsidian vault, enabling it to read, create, and sync notes seamlessly through the Team Relay API.
Outcomes
What it gets done
Read files from your Obsidian vault
Create or update files in your Obsidian vault
List accessible shares and files within your vault
Sync notes between your AI agent and Obsidian in real-time
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/evc-team-relay-mcp | bash Capabilities
Tools your agent gets
Authenticate with credentials (auto-managed)
List accessible shares (filter by kind, ownership)
List files in a folder share
Read a file by path from a folder share
Read document by doc_id (low-level)
Create or update a file by path
Write to a document by doc_id
Delete a file from a folder share
Overview
Team Relay
Team Relay MCP Server wraps EVC Team Relay's REST API into MCP tools, letting an AI agent list, read, write, create, and delete files in a shared Obsidian vault, synced live in both directions via Yjs CRDTs. Use it when an AI agent needs to read or update shared Obsidian notes a team already works in directly; requires an existing Team Relay deployment and control-plane account.
What it does
Team Relay MCP Server wraps EVC Team Relay's REST API into standard MCP tools, giving an AI agent read and write access to a shared Obsidian vault. The agent lists accessible shares, reads and writes files or documents, and creates or deletes files - all synced live to Obsidian, since Team Relay stores documents as Yjs CRDTs and pushes changes to connected Obsidian clients instantly, in both directions.
When to use - and when NOT to
Use this when you want Claude Code, Codex CLI, OpenCode, or any MCP-compatible client to read or update the same Obsidian notes your team works in directly - pulling specs, updating docs alongside code changes, or handing work between agent and human through a shared folder. It's built for teams that already treat Obsidian as shared team knowledge. It is not useful without an existing EVC Team Relay deployment and a user account on its control plane, and it only reaches shares you have access to - it's not a general-purpose file system connector.
Capabilities
authenticate: logs in with credentials (auto-managed internally, including JWT refresh).list_shares: lists accessible shares, filterable by kind and ownership.list_files: lists files in a folder share.read_file: reads a file by path from a folder share.read_document: reads a document by its low-level doc_id.upsert_file: creates or updates a file by path.write_document: writes to a document by doc_id.delete_file: deletes a file from a folder share.
Typical workflow: list_shares -> list_files -> read_file / upsert_file. All operations are Python function calls via JSON-RPC (no shell execution, no credentials passed as CLI arguments), with typed inputs validated against JSON Schema and a single persistent process rather than per-call spawning.
How to install
No installation needed - uvx downloads and runs it automatically. For Claude Code, add to .mcp.json:
{
"mcpServers": {
"evc-relay": {
"command": "uvx",
"args": ["evc-team-relay-mcp"],
"env": {
"RELAY_CP_URL": "https://cp.tr.entire.vc",
"RELAY_EMAIL": "agent@yourdomain.com",
"RELAY_PASSWORD": "your-password"
}
}
}
}
Similar configs work for Codex CLI (codex.json) and OpenCode (opencode.json). For shared or server-side use, run via HTTP transport with docker compose up -d and connect using "type": "streamable-http" pointed at the server URL. Requires Python 3.10+ with uv, and an account on the Relay control plane.
Who it's for
Teams running Claude Code, Codex CLI, OpenCode, or other MCP clients who want their AI agent reading and writing the same shared Obsidian vault the team uses, staying in sync instantly rather than working from a stale copy.
Source README
EVC Team Relay - MCP Server
Give your AI agent read/write access to your Obsidian vault.
Your agent reads your notes, creates new ones, and stays in sync - all through the Team Relay API.
Works with Claude Code, Codex CLI, OpenCode, and any MCP-compatible client.
Quick Start
No installation needed - uvx downloads and runs automatically.
Claude Code - add to .mcp.json:
{
"mcpServers": {
"evc-relay": {
"command": "uvx",
"args": ["evc-team-relay-mcp"],
"env": {
"RELAY_CP_URL": "https://cp.tr.entire.vc",
"RELAY_EMAIL": "agent@yourdomain.com",
"RELAY_PASSWORD": "your-password"
}
}
}
}
Codex CLI - add to codex.json:
{
"mcp_servers": {
"evc-relay": {
"type": "stdio",
"command": "uvx",
"args": ["evc-team-relay-mcp"],
"env": {
"RELAY_CP_URL": "https://cp.tr.entire.vc",
"RELAY_EMAIL": "agent@yourdomain.com",
"RELAY_PASSWORD": "your-password"
}
}
}
}
OpenCode - add to opencode.json:
{
"mcpServers": {
"evc-relay": {
"command": "uvx",
"args": ["evc-team-relay-mcp"],
"env": {
"RELAY_CP_URL": "https://cp.tr.entire.vc",
"RELAY_EMAIL": "agent@yourdomain.com",
"RELAY_PASSWORD": "your-password"
}
}
}
}
Available Tools
| Tool | Description |
|---|---|
authenticate |
Authenticate with credentials (auto-managed) |
list_shares |
List accessible shares (filter by kind, ownership) |
list_files |
List files in a folder share |
read_file |
Read a file by path from a folder share |
read_document |
Read document by doc_id (low-level) |
upsert_file |
Create or update a file by path |
write_document |
Write to a document by doc_id |
delete_file |
Delete a file from a folder share |
Typical workflow: list_shares -> list_files -> read_file / upsert_file
Authentication is automatic - the server logs in and refreshes tokens internally.
Remote Deployment (HTTP Transport)
For shared or server-side deployments, run as an HTTP server:
RELAY_CP_URL=https://cp.tr.entire.vc
RELAY_EMAIL=agent@yourdomain.com
RELAY_PASSWORD=your-password
docker compose up -d
Then configure your MCP client to connect via HTTP:
{
"mcpServers": {
"evc-relay": {
"type": "streamable-http",
"url": "http://your-server:8888/mcp"
}
}
}
Security
- No shell execution - all operations are Python function calls via JSON-RPC
- No CLI arguments - credentials are never passed as process arguments
- Automatic token management - login, JWT refresh, and token lifecycle handled internally
- Typed inputs - all parameters validated against JSON Schema
- Single persistent process - no per-call shell spawning
How It Works
AI Agent <--MCP--> MCP Server <--REST API--> Team Relay <--Yjs CRDT--> Obsidian
The MCP server wraps Team Relay's REST API into standard MCP tools. Team Relay stores documents as Yjs CRDTs and syncs them to Obsidian clients in real-time. Changes made by the agent appear in Obsidian instantly - and vice versa.
Prerequisites
- Python 3.10+ with uv
- A user account on the Relay control plane (default: cp.tr.entire.vc)
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.