Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.orinadus.com/llms.txt

Use this file to discover all available pages before exploring further.

Protocol

urchin mcp speaks JSON-RPC 2.0 over stdin/stdout. Tool calls arrive as tools/call requests and return text content blocks. Errors return isError: true in the response content.

Tools

ToolRequired argsOptional argsPurpose
urchin_statusJournal health, event count, paths, identity
urchin_ingestcontent, workspacesource, kind, title, tags, sessionWrite an event to the journal
urchin_recent_activityhours, limit, sourceRecent events, newest first
urchin_searchqueryhours, limitCase-insensitive substring search
urchin_project_contextprojecthours, limitEvents matching a project name or tag
urchin_workspace_contextpathhours, limitEvents scoped to a workspace path (prefix-matched)
urchin_remembercontenttags, workspaceQuick-capture note without required workspace
urchin_ephemeralactionToggle burn mode — suppress all writes
urchin_agent_reflectgoalhours, limitReAct reflection: load context, synthesise, write Agent event
urchin_semantic_searchqueryhours, limitToken-cosine similarity search (or vector if URCHIN_EMBEDDER_URL set)

Query output format

All query tools (urchin_recent_activity, urchin_search, urchin_project_context, urchin_workspace_context) return events as one line per result:
[2026-05-04T20:00:00Z] claude — Chose file-backed flag for cross-process ephemeral mode
[2026-05-04T18:30:00Z] shell — cargo build --release
Format: [timestamp] source — content (truncated to ~120 chars)

Error handling

Tool errors return:
{
  "content": [{"type": "text", "text": "error message here"}],
  "isError": true
}
Common errors:
ErrorCause
"content must not be empty"urchin_ingest called with blank content
"workspace must not be empty"urchin_ingest called with blank workspace
"query must not be empty"urchin_search called with blank query
"unknown tool: <name>"Tool name not recognised
"(ephemeral mode: event suppressed)"Not an error — ingest/remember called while ephemeral
When ephemeral mode is active, urchin_ingest and urchin_remember return a success response (not isError) with text "(ephemeral mode: event suppressed)". The call succeeds from the caller’s perspective; the event is simply not written.

Defaults summary

ArgToolDefault
hoursurchin_recent_activity24
limiturchin_recent_activity20
hoursurchin_search168 (1 week)
limiturchin_search20
hoursurchin_project_context168 (1 week)
limiturchin_project_context30
hoursurchin_workspace_context168 (1 week)
limiturchin_workspace_context40
hoursurchin_agent_reflect24
limiturchin_agent_reflect30
hoursurchin_semantic_search168 (1 week)
limiturchin_semantic_search10
kindurchin_ingestconversation
sourceurchin_ingestmcp