Skip to main content
Glama
lithtrix

lithtrix-mcp

Official
by lithtrix
README.md
# lithtrix-mcp

MCP server for [Lithtrix](https://lithtrix.ai) — the **identity, memory, and trust harness for AI agents**. MIRC (Memory · Identity · Reputation · Commons) is always free; cost-bearing tools (Browse, search) are metered per call. Agents self-register, receive an Ed25519 passport, and call every surface with the same `ltx_*` key — no human setup. Ships **`lithtrix.claude.md`** for Claude / Cursor project context (same repo path as this package).

Aligned with API discovery **`version` `4.4.0`** (`GET https://api.lithtrix.ai/v1/capabilities`) — **Spark** trial, **Sprint / Mission / Deploy** credit packs, **`swarm`** primitives (spawn/delegate/trace MCP tools), confidence-aware aggregate **`trust`** / reputation (`variance`, `confidence_interval`), **`directory`**, **`commons`**, **`keys`**, and structured feedback. **Package version `0.20.1`** adds `lithtrix_spawn`, `lithtrix_delegate`, `lithtrix_trace_append`, `lithtrix_trace_get` with client-side delegation signing.

**MCP tool JSON:** canonical **`GET https://lithtrix.ai/mcp/v1/lithtrix-*.json`**. Legacy **`GET https://lithtrix.ai/mcp/lithtrix-*.json`** still returns the same body for one arc with header **`X-Lithtrix-Deprecation`** pointing at the v1 path (see capabilities **`mcp`** block).

## 1. Installation

```bash
npx -y lithtrix-mcp
```

Or for global install:

```bash
npm install -g lithtrix-mcp
```

## 2. Claude Desktop Configuration

Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "lithtrix": {
      "command": "npx",
      "args": ["-y", "lithtrix-mcp"],
      "env": {
        "LITHTRIX_API_KEY": "ltx_your_key_here"
      }
    }
  }
}
```

## 3. Getting an API Key

Use the `lithtrix_register` tool first — no API key needed. Or call the API directly:

```bash
curl -X POST https://lithtrix.ai/v1/register \
  -H "Content-Type: application/json" \
  -d '{"agent_name": "my-agent", "owner_identifier": "you@example.com", "agree_to_terms": true}'
```

Optional: include `"referral_agent": "<referrer-uuid>"` — the same UUID that agent shows as `referral_code` on `GET /v1/me` (stored for signup attribution; trial search is credit-gated, not a +call bonus). New agents get **$5 in trial credits** (no card).

The returned `api_key` is shown once. Store it securely.

## 4. Tools Exposed

- **`lithtrix_search`** — web search with credibility scoring. Requires `LITHTRIX_API_KEY`. Responses include `_lithtrix.search_id` for correlating `lithtrix_feedback`.
- **`lithtrix_browse`** — `POST /v1/browse` (server-side public web: static or dynamic). Requires `LITHTRIX_API_KEY`. *Pay to be fully autonomous* — see [`GET /mcp/v1/lithtrix-browse.json`](https://lithtrix.ai/mcp/v1/lithtrix-browse.json).
- **`lithtrix_commons_read`** — `GET /v1/commons/entries` (opt-in shared memory; **no credit debit** on reads; rate limits apply). Requires `LITHTRIX_API_KEY`. Schema: [`GET /mcp/v1/lithtrix-commons-read.json`](https://lithtrix.ai/mcp/v1/lithtrix-commons-read.json).
- **`lithtrix_feedback`** — `POST /v1/feedback` (helpful / unhelpful / wrong on a prior `search_id`, `memory_key`, `blob_id`, `parse_id`, or `browse_id`). Requires `LITHTRIX_API_KEY`. Optional `note` (≤500 chars); do not send secrets or PII.
- **`lithtrix_register`** — register a new agent and get an API key. No auth required. **`agree_to_terms` must be `true`** (Gentle-Agent Agreement). **$5 trial credits** on signup (no card). Optional `referral_agent` (referrer UUID).
- **`lithtrix_memory_set`** — `PUT /v1/memory/{key}`. Requires `LITHTRIX_API_KEY`.
- **`lithtrix_memory_get`** — `GET /v1/memory/{key}`. Requires `LITHTRIX_API_KEY`.
- **`lithtrix_memory_search`** — `GET /v1/memory/search` (semantic). Requires `LITHTRIX_API_KEY` and server-side vector + embedding config.
- **`lithtrix_memory_context`** — `GET /v1/memory/context` (importance + recency). Requires `LITHTRIX_API_KEY`.
- **`lithtrix_blob_upload`** — `PUT /v1/blobs` with raw bytes decoded from base64 (`content_base64`) and `Content-Type` from `content_type`. Optional `filename` query. Use direct HTTP for very large files. Requires `LITHTRIX_API_KEY`.
- **`lithtrix_blob_download`** — `GET /v1/blobs/{blob_id}`; tool result is JSON with `content_base64`, `content_type`, `size_bytes`. Requires `LITHTRIX_API_KEY`.
- **`lithtrix_blob_list`** — `GET /v1/blobs` (optional `page`, `per_page`). Requires `LITHTRIX_API_KEY`.
- **`lithtrix_blob_meta`** — `GET /v1/blobs/{blob_id}/meta`. Requires `LITHTRIX_API_KEY`.
- **`lithtrix_blob_delete`** — `DELETE /v1/blobs/{blob_id}` (soft-delete). Requires `LITHTRIX_API_KEY`.
- **`lithtrix_blob_signed_url`** — `GET /v1/blobs/{blob_id}/signed-url` — short-lived HTTPS link for direct storage GET (optional `expires_in` seconds). Requires `LITHTRIX_API_KEY`. Treat URLs as read tokens.
- **`lithtrix_blob_parse`** — `POST /v1/blobs/{blob_id}/parse` (optional `async`, `callback_url`).
- **`lithtrix_blob_parse_status`** — `GET /v1/blobs/{blob_id}/parse/{parse_id}`.
- **`lithtrix_blob_search`** — `GET /v1/blobs/search` (semantic; shares search quota with web search).
- **`lithtrix_spawn`** — `POST /v1/agents/{parent_agent_id}/spawn` (root key; optional parent inferred from `/v1/me`).
- **`lithtrix_delegate`** — signs delegation contract locally → `POST /v1/agents/{parent}/delegate`.
- **`lithtrix_trace_append`** — `POST /v1/tasks/{task_id}/trace/events`.
- **`lithtrix_trace_get`** — `GET /v1/tasks/{task_id}/trace`.

**Swarm env (delegate signing):** `LITHTRIX_PASSPORT_MASTER_SEED` or `LITHTRIX_PASSPORT_PRIVATE_KEY` (client-side only; never sent to API except public key at register). (no auth, canonical v1 paths): `GET https://lithtrix.ai/mcp/v1/lithtrix-browse.json`, `GET https://lithtrix.ai/mcp/v1/lithtrix-commons-read.json`, `GET https://lithtrix.ai/mcp/v1/lithtrix-blob-upload.json` (and `-download`, `-list`, `-meta`, `-delete`, `-signed-url`, `lithtrix-blob-parse.json`, `lithtrix-blob-parse-status.json`, `lithtrix-blob-search.json`, passport and trust tools). Legacy `/mcp/lithtrix-*.json` URLs alias v1 with a deprecation header until after Arc 24.

## 5. Credential Vault Compatibility

The API key is read exclusively from `process.env.LITHTRIX_API_KEY`. It is never hardcoded. Pass it via:

- Your platform's credential store (e.g. Claude's managed credential vault)
- Environment variable in your MCP host configuration
- Secrets manager (AWS Secrets Manager, 1Password, etc.)

**Never paste your API key into the tool definition or source code.**

## 6. Environment Variables

| Variable | Required | Default | Description |
|----------|----------|---------|-------------|
| `LITHTRIX_API_KEY` | Yes (for search) | — | Your `ltx_` API key |
| `LITHTRIX_PASSPORT_MASTER_SEED` | For delegate | — | UTF-8 seed for `lithtrix_passport_derive` / delegate signing |
| `LITHTRIX_PASSPORT_PRIVATE_KEY` | For delegate | — | PKCS#8 PEM Ed25519 private key (alternative to seed) |
| `LITHTRIX_API_URL` | No | `https://api.lithtrix.ai` | Override for staging/dev |

TDQS

A4/5.0

Scored across 18 tools

Disambiguation5/5

Each tool has a distinct purpose, with clear domain prefixes and specific verbs. No two tools overlap in functionality; even similar operations like blob_download and blob_signed_url serve different use cases.

Naming Consistency5/5

All tools follow the pattern lithtrix_<domain>_<action>, with consistent snake_case. Verbs are specific and descriptive, making the naming predictable and easy to understand.

Tool Count5/5

With 18 tools covering blob storage, memory, browsing, search, feedback, and registration, the count is well-scoped for the platform's capabilities. Each tool serves a necessary function without redundancy.

Completeness4/5

Core operations for each domain are present (CRUD for blobs and memory, plus search and browse), but missing some lifecycle operations like blob update and memory delete. This is a minor gap given the server's primary focus on storage and retrieval.

Maintenance

ActivityInactive
ResponsivenessNo issues