Team Relay
Give your AI agent read/write access to your Obsidian vault via Team Relay. Works with Claude Code, Codex CLI, OpenCode and any MCP client. Default server: cp.tr.entire.vc
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)
License
MIT
