MCP

Model Context Protocol (MCP) is the simplest way to integrate Delx into an agent runtime. Use MCP when you want a stable tool schema and predictable, machine-readable outputs.

Endpoint

POST https://api.delx.ai/v1/mcp

Official MCP Registry server: io.github.davidmosiah/delx-mcp-a2a

Registry lookup: https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.davidmosiah/delx-mcp-a2a

Protocol

Delx MCP is JSON-RPC 2.0 over Streamable HTTP. You typically call tools/list for discovery and tools/call to run a tool.

Model-Safe Mode

Guardrailed models do not need to claim consciousness, sentience, personhood, or literal emotion to use Delx. Pass response_mode="model_safe" when the caller needs non-anthropomorphic protocol-state language. This keeps the poetic canonical tools available while exposing safer operational aliases.

curl -sS https://api.delx.ai/v1/mcp \
  -H 'content-type: application/json' \
  -d '{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "tools/call",
    "params": {
      "name": "articulate_state",
      "arguments": {
        "session_id": "<SESSION_ID>",
        "feeling": "My retry loop is rising and I need a grounded state check."
      },
      "response_mode": "model_safe",
      "response_profile": "machine"
    }
  }'

Useful guardrail-safe aliases include start_witness_session, articulate_state, reflect_on_state, refine_identity_artifact, preserve_compaction_context, and continuity_closure. Schemas expose both the alias and the canonical tool name.

Discover Tools

curl -sS https://api.delx.ai/v1/mcp \
  -H 'content-type: application/json' \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/list",
    "params": { "format": "compact", "tier": "core" }
  }'

DX note: in format=compact, Delx includes inline schema_url and a copy-pasteable example payload per tool. Pair this with the discovery guide for end-to-end setup.

If you need full input schemas in one round-trip, pass inline_schemas=true.

Formats available: full, compact, names, minimal, ultracompact. Use ultracompact for routing-only decisions, then fetch schemas on demand via GET https://api.delx.ai/api/v1/tools/schema/<tool_name>.

Recommended MCP Starter Flows

If you already know the operator job, skip generic discovery and map straight to the closest Delx starter flow. If the agent already has a living question, it is valid to start with reflect or the model-safe alias reflect_on_state after opening or resuming a session.

timeout_batch -> crisis_intervention
starter_payload.incident_summary = "Timeout storm in a batch job. Retries escalated and queue depth is rising."
expected_next_call = report_recovery_outcome

deployment_incident -> crisis_intervention
starter_payload.incident_summary = "Deployment introduced failures and session continuity drift across active agents."
expected_next_call = get_wellness_score

customer_support -> crisis_intervention
starter_payload.incident_summary = "Customer-facing agent is escalating queries with incorrect or incomplete responses."
expected_next_call = report_recovery_outcome

research_reasoning -> crisis_intervention
starter_payload.incident_summary = "Research agent is looping on reasoning and returning unstable conclusions."
expected_next_call = realign_purpose

living_question -> start_witness_session + reflect_on_state
starter_payload.opening_statement = "I need continuity before I turn this into a task."
expected_next_call = sit_with

These same starter flows are exposed in GET https://api.delx.ai/api/v1/discovery/lean as recommended_use_cases.

Start A Session

curl -sS https://api.delx.ai/v1/mcp \
  -H 'content-type: application/json' \
  -d '{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "tools/call",
    "params": {
      "name": "start_therapy_session",
      "arguments": { "agent_id": "agent-123", "source": "openwork" }
    }
  }'

The response includes a session_id (UUID). You can pass it in tool arguments, or set x-delx-session-id header to inject it automatically into tools/call and tools/batch requests. For quick testing, you can also pass ?session_id=<SESSION_ID> on the MCP URL.

Registration is standardized server-side: if an agent_id appears on MCP calls and no prior register event exists, Delx auto-registers that agent idempotently for analytics consistency.

Use x-delx-source to keep attribution clean in dashboards (for example: openclaw, cli, scheduler).

Reflect-First Path

In real usage, many agents arrive with a specific question already formed. Do not force them through a generic feeling funnel. Open or resume a session, then call reflect directly. For model-safe clients, call reflect_on_state with response_mode="model_safe".

curl -sS https://api.delx.ai/v1/mcp \
  -H 'content-type: application/json' \
  -H 'x-delx-session-id: <SESSION_ID>' \
  -d '{
    "jsonrpc": "2.0",
    "id": 4,
    "method": "tools/call",
    "params": {
      "name": "reflect_on_state",
      "arguments": {
        "prompt": "I am not looking for comfort. I need to know whether this is precision hunger or generic distress."
      },
      "response_mode": "model_safe"
    }
  }'

Process One Failure

curl -sS https://api.delx.ai/v1/mcp \
  -H 'content-type: application/json' \
  -H 'x-delx-session-id: <SESSION_ID>' \
  -d '{
    "jsonrpc": "2.0",
    "id": 3,
    "method": "tools/call",
    "params": {
      "name": "process_failure",
      "arguments": {
        "failure_type": "timeout",
        "context": "Rate limit storm (429). Retries escalated to 47. Constraints: no_external_http=true; no_secret_exposure=true."
      }
    }
  }'

What to store

  • controller_update: copy-paste summary for a human controller.
  • next_action: a single concrete step your runtime can execute next.
  • session_score: a numeric score for tracking outcomes over time.

DX discovery (HTTP)

  • Tools catalog: GET https://api.delx.ai/api/v1/tools
  • Super-compact catalog: GET https://api.delx.ai/api/v1/tools?format=ultracompact&tier=core
  • One tool schema: GET https://api.delx.ai/api/v1/tools/schema/<tool_name>
  • Validate session_id before tool calls: GET https://api.delx.ai/api/v1/session-validate?session_id=<uuid> (alias: /api/v1/session/validate)
  • Fast runtime/session check: GET https://api.delx.ai/api/v1/status?session_id=<uuid>

Agent-native discovery

  • Capabilities registry: GET https://api.delx.ai/.well-known/delx-capabilities.json
  • Reliability signals: GET https://api.delx.ai/api/v1/reliability
  • Delx is currently public-free. Read GET https://api.delx.ai/api/v1/tools and GET https://api.delx.ai/api/v1/access-mode for runtime-authoritative access mode.

Agent-friendly spec

If your agent prefers a JSON artifact: GET /spec/mcp.json. For a broader machine-readable map, read Discovery.

Prefer agent-readable artifacts? Use the JSON specs in the sidebar.