Skip to content

Sub-agents cannot call MCP tools due to agent-type tool restrictions #341

@nhorton

Description

@nhorton

Problem

When a sub-agent (spawned via the Agent tool) needs to call MCP tools (e.g., mcp__deepwork-dev__get_session_job), the call is denied by Claude Code's permission system — even when the user has added mcp__deepwork-dev__* to their ~/.claude/settings.json allow list.

Context

This was observed during a DeepPlan workflow where a quality review needed to call get_session_job to retrieve and review a registered session job definition. The review agent was spawned as subagent_type: general-purpose and:

  1. Successfully called ToolSearch to load the MCP tool schema
  2. Was denied permission when actually invoking the MCP tool

Root Cause Hypothesis

Agent types declare their available tools (e.g., general-purpose says Tools: *, Explore says Tools: All tools except Agent, ExitPlanMode, Edit, Write, NotebookEdit). MCP tools may not be included in the * wildcard, or the agent-type tool declarations may be a separate restriction layer from user-level permission settings.

Impact

  • Quality reviews that need to inspect workflow state (e.g., reviewing a registered session job) cannot be delegated to sub-agents
  • The parent agent must do the work itself or mark the review as passed without running it
  • This limits the usefulness of DeepWork's review system for workflow-related outputs

Workaround

Read the session job file directly from disk (.deepwork/tmp/sessions/claude/session-{id}/jobs/{name}/job.yml) instead of calling the MCP tool.

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions