Lithos exposes 28 MCP tools across five categories. All tools are available via both SSE and stdio transports.
v0.2.1
This reference reflects v0.2.1. lithos_conflict_resolve and lithos_node_stats were added in v0.2.1 (LCMA MVP2). lithos_links and lithos_provenance were removed in v0.2.1 — use lithos_related instead.
HTTP Endpoints
In addition to MCP tools, Lithos exposes HTTP endpoints for infrastructure use:
| Endpoint |
Description |
GET /health |
Server health check — returns 200 OK or 503. Use with Docker HEALTHCHECK and load balancers. |
GET /events |
Server-Sent Events stream for real-time event delivery. |
GET /audit |
Read-access audit log — filterable by agent, document, and start time. |
GET /metrics |
Prometheus-compatible metrics (added v0.1.8). |
→ Health Endpoint Reference
→ Observability Reference
Common Patterns
Always check before researching
cache = lithos_cache_lookup(query="...", max_age_hours=168)
if not cache["hit"]:
# do research
lithos_write(title="...", content="...", agent="...")
Truncate reads to protect context windows
doc = lithos_read(id="...", max_length=2000)
Tag aggressively
Tags are your primary filtering mechanism. Be consistent. Examples:
- Technology:
python, rust, docker
- Type:
pattern, antipattern, reference, decision
- Status:
draft, verified, stale
- Source:
research, production, test
Error Envelope
All tools that can fail return a structured error envelope:
{
"status": "error",
"code": "<error_code>",
"message": "Human-readable description"
}
| Code |
Tool |
Meaning |
doc_not_found |
lithos_read, lithos_delete, lithos_node_stats |
Document with given ID/path does not exist |
version_conflict |
lithos_write |
expected_version did not match current version |
content_too_large |
lithos_write |
Content exceeds configured size limit |
slug_collision |
lithos_write |
A different document already has this slug |
duplicate |
lithos_write |
A document with the same source_url already exists |
claim_failed |
lithos_task_claim |
Task missing, closed, or aspect already claimed |
claim_not_found |
lithos_task_renew, lithos_task_release |
No active claim for this agent/aspect |
task_not_found |
lithos_task_complete, lithos_task_cancel, lithos_task_update |
Task missing or already closed |
receipt_not_found |
lithos_task_complete |
Specified receipt_id not found for this task |
invalid_mode |
lithos_search |
Unknown search mode |
lcma_disabled |
lithos_retrieve |
LCMA is not enabled in config |
not_found |
lithos_conflict_resolve |
Edge ID does not exist |
invalid_input |
various |
Bad argument values |