Skip to main content
Glama
ceedot-rock

json-chamber-mcp

README.md
# json-chamber-mcp

**Chamber MCP** — seal / open JSON. Slid Phi Labs.

Cloak (seal new JSON) needs a live license. Open of an already-sealed blob is both keys, no extra payment. Ciphertext does not expire.

## Install / run

```bash
npx -y json-chamber-mcp
```

```json
{
  "mcpServers": {
    "json-chamber": {
      "command": "npx",
      "args": ["-y", "json-chamber-mcp"],
      "env": {
        "CHAMBER_MASTER_SECRET": "your-high-entropy-secret"
      }
    }
  }
}
```

## Discovery

| Surface | URL |
|---------|-----|
| Official registry id | `io.github.ceedot-rock/json-chamber-mcp` |
| Lab well-known | https://www.slidphilabs.com/.well-known/mcp.json |
| Lab llms.txt | https://www.slidphilabs.com/llms.txt |
| npm | `json-chamber-mcp` 1.2.0 |
| Server schema | [`server.json`](server.json) |
| Product | https://www.slidphilabs.com/chamber |

Hosted lab MCP (PCC + catalog): `POST https://www.slidphilabs.com/mcp` · Smithery: https://smithery.ai/servers/slidphi/lab

## Pricing

| SKU | What | Price |
|-----|------|-------|
| Chamber try | cloak new JSON | 24 hours free |
| Chamber month | cloak license | $9 |
| Chamber year | cloak license | $99 |
| Open | already-sealed blob | keys only |

Prices live on https://www.slidphilabs.com/chamber

## Tools

| Tool | Purpose |
|------|--------|
| `chamber_status` | cloak try remaining / dead / purchased |
| `chamber_info` | pointer to live prices |
| `chamber_cloak` | seal JSON / text (licensed) |
| `chamber_open` | open sealed blob (keys only) |
| `chamber_hop_gate` | admit/reject hop (gate only) |
| `chamber_hop_reject_log` | live sanitized reject log |


## Hop-gate (ScanChunk / Rider SoT)

Admission layer in front of seal/open. **Seal/open APIs are unchanged.** No SettleHop / x402.

Wire is **exact text** (Agent-Rider `agent-rider-c` / PR #22), not JSON:

```
CUNI ScanChunk
url=https://example.com/
etag="abc"
hash=sha256:…
agent_id=agt_1
```

Fields (allowlist): `url` · `etag` · `hash` · `agent_id`. Gate **result wire** is a single exact-text code string (not a JSON body).

| Code | Meaning |
|------|---------|
| `admit` | hop allowed |
| `reject.schema` | Chamber-local only (Rider does not emit) |
| `reject.extra` | unknown keys or wrong kind — fail-closed; do not bind; never rehydrate |
| `reject.hash` | empty / invalid hash |
| `reject.replay` | **hash** already seen |
| `reject.agent` | agent allowlist fail |
| `reject.empty` | empty / missing required fields (`url`, `hash`, `agent_id`) |

Live `reject.log` is TSV `ISO\tcode\tpreview` (mirrors `agent-rider-c/reject.log`); preview truncates ~120 and flattens newlines. Extra-key **values** never rehydrate as next machine input.

**PCC ≠ payment** — PCC is the compression/storefront face; hop-gate codes are admission control, not billing.

MCP tools: `chamber_hop_gate`, `chamber_hop_reject_log`.

## Related

- Python SDK: https://github.com/ceedot-rock/json-chamber-sdk
- Product: https://www.slidphilabs.com/chamber
- Contact: corey@slidphilabs.com

TDQS

B3/5.0

Scored across 7 tools

Disambiguation4/5

The tools have distinct roles: status/info for licensing, cloak/open for sealing/unsealing, and two separate gate checks (hop_gate vs benefit_check) plus a log. There's minor overlap between status and info (both about license state), but they serve different details. Overall, an agent can tell them apart with clarity.

Naming Consistency3/5

Most tools follow a 'chamber_' prefix with a noun or verb (status, info, cloak, open, hop_gate, hop_reject_log), but 'benefit_check' breaks the pattern. The verbs are inconsistent (some are nouns like status, others are imperatives like cloak), though the naming is still readable and mostly predictable.

Tool Count5/5

With 7 tools, the server is well-scoped for its purpose: managing sealed JSON chambers, checking license status, and evaluating gates. Each tool has a clear function, and the count is appropriate for the domain without being overwhelming or too sparse.

Completeness4/5

The core lifecycle is covered: sealing (chamber_cloak), opening (chamber_open), status (chamber_status), and license info (chamber_info). Gate evaluation and logging are also included. A minor gap is no tool to list or manage multiple chambers, but for the given purpose, the surface is largely complete.

Maintenance

ActivityMaintained
ResponsivenessWithin a week