Surfaces
One tgss-mem process serves three client surfaces. Per
TGSS-MEM-002 v1.0 §5.2.
Full reference: docs/INTEGRATIONS.md.
| Surface | Transport | Auth | Status |
|---|---|---|---|
| Claude Code | local stdio MCP | none (single-user) | supported |
| Claude Web | remote HTTP at http://127.0.0.1:5002/api | X-TGSS-Composite header (24-byte prime) | open (set TGSS_MEM_REQUIRE_AUTH=1 to enforce) |
| Adjacent services (Conductor, GCE-MCP, pria-relate, signal-engine) | HTTP + consumer scoping | composite credential bound to consumer label | 5 policies |
Active sessions: 5 · Consumer policies: 5 · Auth enforcement: OFF
1. Claude Code (stdio)
Add to ~/.claude/mcp_settings.json (CLI) or %APPDATA%\Claude\claude_desktop_config.json (Desktop):
{
"mcpServers": {
"tgss-mem": {
"command": "npx",
"args": [
"tsx",
"D:/GitHub/Tribernachi-Memory-Layer/src/index.ts"
],
"env": {
"TGSS_MEM_DIR": "C:\\Users\\mark\\.tgss-mem",
"TGSS_MEM_DB": "C:\\Users\\mark\\.tgss-mem\\memories.db"
}
}
}
}
Restart Claude Code; the 9 tgss_mem_* tools should appear in the tool list.
2. Claude Web (remote MCP, composite-credential auth)
Pattern from ACO Field 25 inline TCHAS — credentials are 24-byte primes, not bearer tokens.
Composite = nextPrime(hash(P_user, P_session, P_t)) per spec §5.2.2.
Step 1 — Issue a session
curl -X POST http://127.0.0.1:5002/api/auth/session \
-H "Content-Type: application/json" \
-d '{"consumer_label":"claude-web","ttl_seconds":86400}'
Or use the form at /sessions.
Step 2 — Configure in claude.ai
Settings → Integrations → Remote MCP. Add a server with:
- Name:
tgss-mem - URL:
http://127.0.0.1:5002/api - Header:
X-TGSS-Composite: <session_composite from step 1>
Step 3 — Verify
curl -H "X-TGSS-Composite: <composite>" http://127.0.0.1:5002/api/auth/whoami
Should return {"auth_mode":"valid",...}. Right now auth enforcement is OFF — calls without the header also return auth_mode: "none" instead of 401.
3. Adjacent Services (consumer-pattern)
Per spec §5.2.3. Each consumer's policy = {PentaLinear bucket} × {domain prime mask}.
When strip_project_prime=1, the project prime is divided out of returned composites
— privacy boundary enforced mathematically, not by policy.
# Seed default consumers (one-time) npx tsx scripts/seed-consumers.ts C:\Users\mark\.tgss-mem\memories.db
curl -H "X-TGSS-Composite: <session_composite>" \
"http://127.0.0.1:5002/api/consumer/query/gce-mcp?text_search=postgres&limit=10"
Manage policies at /consumers.
4. MCP Stdio Integration Tests
Sprint 6 added tests/integration/mcp-stdio.test.ts — spawns the actual server
via StdioClientTransport and exercises every MCP tool over real JSON-RPC.
Proves the entire MCP wiring (server.tool registrations, zod schema validation, response
formatting) works end-to-end.
npx vitest run tests/integration/mcp-stdio.test.ts
9 tests · ~3 seconds · per-test temp DB (won't touch your real one).
5. Cross-Language Clients (TCE matrix)
Spec §5.3.2 Tier 2.2 — testing TCE against llama.cpp, Ollama, LM Studio, and llama.cpp's built-in MCP client — belongs to the TCE repo, not tgss-mem. tgss-mem itself targets only Claude Code (stdio) and Claude Web (remote HTTP); adjacent services use the consumer-pattern HTTP API above. When TCE's matrix lands, this section will link to its parity report.
Reference
docs/INTEGRATIONS.md— full v2 reference (this page is a live mirror)docs/INTEGRATION_GUIDE.md— original v1 guide (install / build / basic Claude Code)tribernachi/standards/TTI_TOOL_TGSS-MEM-002_V1_0.md— the parent spectribernachi/standards/TTI_SPEC_FEDERATION-WIRE-001_V0_1.md— federation wire (planned, gates Phase C.4 actual transport)