opencode-subagent-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OPENCODE_SUBAGENT_MODE | No | Overrides the defaultPermissionMode config value. | |
| OPENCODE_SUBAGENT_MODEL | No | Overrides the defaultModel config value. | |
| OPENCODE_SUBAGENT_CONFIG | No | Path to an optional JSON config file (defaults to ~/.config/opencode-subagent-mcp/config.json). |
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| agentA | Launch a subagent that runs on an opencode model (default opencode-go/deepseek-v4.1-flash) in the current project. Mirrors the built-in Agent tool: give a self-contained task prompt; the agent starts with no conversation context and returns only its final report. subagent_type accepts Claude agent definitions from .claude/agents/ (their prompt, tools, permissionMode and maxTurns apply) or opencode agents (general, explore, plan, build). isolation 'worktree' runs it in a temporary git worktree off the default branch, removed if unchanged. The call blocks until the agent finishes (it is backgrounded automatically after a while); set run_in_background to return at once and collect the result with wait. |
| send_messageA | Send a follow-up message to a finished opencode subagent by agent_id. It resumes with its full previous history (and its worktree, if one was kept) and returns its new final report. Also works for agent_ids from before a restart of the MCP server or Claude Code session, and for agents that were interrupted by such a restart. |
| waitA | Wait for a background opencode subagent and return its result. agent_ids from before a restart of the MCP server still work. |
| stopB | Abort a running opencode subagent. Returns what it produced so far. agent_ids from before a restart of the MCP server still work. |
| listA | List this session's opencode subagents and the available agent types. It shows agents started or used since this MCP server started; agents from before a restart are not listed but their agent_id still works with wait, send_message and stop. |
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 5 tools
Each tool maps to a distinct lifecycle action: launch (agent), follow-up (send_message), await result (wait), abort (stop), enumerate (list). The overlap between wait (awaits a background agent) and send_message (resumes a finished agent and returns its report) is clearly disambiguated by their descriptions.
Names mix conventions: send_message is verb_noun, while wait, stop, and list are bare verbs and 'agent' is a bare noun. All are readable, but there is no single predictable pattern across the set.
Five tools cleanly cover the subagent lifecycle (launch, message, wait, stop, list) with no redundancy. This is well-scoped for the server's stated purpose.
The surface covers launch, resume, wait, stop, and list, which spans the full lifecycle. Minor gaps exist (e.g. no dedicated status/inspect or explicit cleanup of retained worktrees), but agents can work around them via list and send_message.