← Back to search

@heretyc/subagent-mcp

GitHub Actions Scanned 28d ago

MCP server that launches Claude Code/Codex sub-agents and routes tasks to Claude Messages or OpenAI-compatible API providers.

npm
B
75.3 / 100

Versions

No versions found.

PermissionsTool SafetyAuthAnnotationsCode QualityStabilitySpecVuln HistoryAuthorTransparencyCommunity

Tools 10

launch_agent
annotations: none low

Spawn a sub-agent session. CONTRACT: `prompt` states objective + output format + tools/sources + boundaries; the server auto-upserts \

cwd string prompt string deadlock boolean
get_status
annotations: none low

Return live in-memory MCP session state. `session_start_time` is the MCP server process boot time because smcp-activate runs as a separate hook process and cannot update this server

poll_agent
annotations: none low

Get an agent

verbose boolean agent_id string
kill_agent
annotations: none low

Terminate a live agent/session (status `processing`, `stalled`, or turn-finished but still interactive) by immediately force-killing its managed driver. A finished agent is force-killed automatically after 6 minutes of no `send_message`/`poll_agent` activity; call `kill_agent` sooner to free resources immediately. No-op for already-terminal closed agents.

agent_id string
respond_permission
annotations: none low

Answer a parked permission request for an agent. One-time only; does not create session-wide approvals. If request_id is omitted, answers the agent

reason string agent_id string request_id string
send_message
annotations: none low

Enqueue a user message for an open interactive agent session. Observe output with poll_agent or wait.

message string agent_id string
list_agents
annotations: none low

List all agents with token-efficient core metrics (status, `alive`, `idle_seconds`). `stalled` is ALIVE-but-quiet, NOT dead (full status semantics on poll_agent). Use `poll_agent` for per-agent stream items, hints, and final output.

wait
annotations: none low

Blocks until one or more sub-agents reach a reportable state (turn-finished, errored, stopped, or zombie_killed), returning exit code when known + local-time timestamp; or returns the live-job list after a 15-minute timeout. This is how you learn an agent finished — do NOT poll-loop. A `finished` agent with null exit_code is still alive and accepts `send_message`; `send_message`/`poll_agent` activity keeps it alive, and 6 minutes idle auto-kills it. A `stalled` agent is still ALIVE and does NOT end the wait. `verbose: true` adds each finished agent

verbose boolean
configure
annotations: none low

List, read, or update subagent-mcp configuration by canonical key. `action=list` enumerates settings; `action=get` requires `key`; `action=set` requires `key` and, for settable keys, string `value`. Secrets are always redacted. Machine-global and mode-owned settings are read-only here: edit the reported global file as a human or use `orchestration-mode`/`model-selection-mode`. Provider and .env writes are validated, backed up, and atomic; responses report `restart_required`.

key string value string
subagent-mcp
annotations: none low

Launches local Claude and Codex sub-agent sessions and can route configured tasks to direct Claude Messages or OpenAI-compatible API providers.

Permissions 4

network medium
Server uses network capabilities via: fetch()
filesystem low
Server uses filesystem capabilities via: fs, fs sync ops, path
shell high
Server uses shell capabilities via: child_process, execSync(), spawn(), spawnSync()
env_vars low
Server uses env_vars capabilities via: os.environ, process.env

Scan Findings 33

low
Tool 'launch_agent' has no annotations annotation_checker · 100%
low
Tool 'get_status' has no annotations annotation_checker · 100%
low
Tool 'poll_agent' has no annotations annotation_checker · 100%
low
Tool 'kill_agent' has no annotations annotation_checker · 100%
low
Tool 'respond_permission' has no annotations annotation_checker · 100%
low
Tool 'send_message' has no annotations annotation_checker · 100%
low
Tool 'list_agents' has no annotations annotation_checker · 100%
low
Tool 'wait' has no annotations annotation_checker · 100%
low
Tool 'configure' has no annotations annotation_checker · 100%
low
Tool 'subagent-mcp' has no annotations annotation_checker · 100%
medium
OAuth implementation without PKCE auth_checker · 75%
info
Sandbox failed to start for behavioral verification behavioral_verifier · 100%
medium
Vulnerable dependency: @modelcontextprotocol/sdk@1.0.0 (GHSA-w48q-cv73-mx4w) dependency_analyzer · 95%
info
package.json metadata manifest_parser · 100%
info
Tool: launch_agent manifest_parser · 70%
info
Tool: get_status manifest_parser · 70%
info
Tool: poll_agent manifest_parser · 70%
info
Tool: kill_agent manifest_parser · 70%
info
Tool: respond_permission manifest_parser · 70%
info
Tool: send_message manifest_parser · 70%
info
Tool: list_agents manifest_parser · 70%
info
Tool: wait manifest_parser · 70%
info
Tool: configure manifest_parser · 70%
info
Tool: subagent-mcp manifest_parser · 75%
info
Transport: stdio manifest_parser · 90%
info
Required env vars (57) manifest_parser · 80%
info
Sandbox failed to start for output poisoning scan output_poisoning · 100%
medium
Permission: network access detected permission_analyzer · 70%
low
Permission: filesystem access detected permission_analyzer · 90%
high
Permission: shell access detected permission_analyzer · 95%
low
Permission: env_vars access detected permission_analyzer · 90%
info
SBOM generated: 131 components sbom_generator · 100%
medium
No build provenance detected (SLSA L0) slsa_assessor · 90%