codex-hermes-a2a-bridge
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CODEX_A2A_PORT | No | Inbound bind port. | 9910 |
| CODEX_A2A_HOS T | No | Inbound bind host. | 127.0.0.1 |
| HERMES_A2A_TOKEN | No | Optional outbound bearer token, read from env only. | |
| HERMES_A2A_ENDPOINT | No | Outbound Hermes A2A root; loopback only. | http://127.0.0.1:9900 |
| CODEX_WORKSPACE_ROOT | No | Workspace used by Codex. | [current directory] |
| CODEX_A2A_BEARER_TOKEN | No | Required before a non-loopback bind/public URL. | |
| CODEX_A2A_GATEWAY_BACKEND | No | `app-server` or explicit `cli`. | app-server |
| CODEX_A2A_GATEWAY_MAX_TURNS | No | Per-context anti-loop budget. | 5 |
| CODEX_A2A_GATEWAY_STATE_PATH | No | SQLite file; mode 0600. | [platform state directory] |
| CODEX_A2A_GATEWAY_CLI_FALLBACK | No | Limited fallback for a new context only. | false |
| CODEX_A2A_GATEWAY_MAX_CONCURENCY | No | Per-process execution limit. The MCP adapter and inbound gateway are separate processes, so this is not a global cap across both. | 4 |
| CODEX_A2A_GATEWAY_APPROVAL_POLICY | No | `never`, `untrusted`, or `on-request`. | never |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| hermes_statusA | Check bridge persistence, Hermes health, connectivity, and a concise Agent Card summary. |
| hermes_chatB | Start or continue a Hermes conversation; returns a durable bridge task and A2A context mapping. |
| hermes_task_getB | Get a task/result; optionally acknowledge a consumed result_id with expected_origin verification. |
| hermes_tasks_listA | List durable bridge tasks, optionally filtered by conversation and bridge state. |
| hermes_task_waitA | Wait for task progress/result using the active stream, A2A subscribe, then polling fallback. |
| hermes_task_cancelA | Request task cancellation; response is explicit that Hermes may continue underlying computation. |
| hermes_contextsA | List, inspect, or close bridge-owned conversation/context mappings; close never deletes Hermes data. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 7 tools
Most tools have clearly distinct purposes: chat/context management, task retrieval, cancellation, listing, waiting, and bridge status. The main possible confusion is between hermes_task_get and hermes_task_wait, since both can surface task results, but their descriptions distinguish immediate retrieval from waiting behavior.
All tools use the hermes_ prefix and snake_case, which makes the set predictable overall. Minor deviations exist because some names are noun-only (hermes_chat, hermes_contexts, hermes_status) and task/tasks singular-plural usage varies.
Seven tools is well-scoped for a bridge server focused on Hermes conversation/context and A2A task lifecycle. Each tool has a distinct operational role, and the set avoids unnecessary surface area.
The surface covers conversation start/continue, context list/inspect/close, task list/get/wait/cancel, and bridge health/status. Result acknowledgment and origin verification are included in hermes_task_get, so the core A2A bridge lifecycle appears complete.