Skip to content

litellm.UnsupportedParamsError when Task subagents use Bedrock provider #29428

Closed as not planned

Description

@pt-james-woszczynski

Bug Report

Environment:

  • Model: us.anthropic.claude-opus-4-6-v1 via Bedrock (litellm)
  • OS: macOS
  • OpenCode version: latest

Error

litellm.UnsupportedParamsError: Bedrock doesn't support tool calling without `tools=` param specified. Pass `tools=` param OR set `litellm.modify_params = True` // `litellm_settings::modify_params: True` to add dummy tool to the request.. Received Model Group=us.anthropic.claude-opus-4-6-v1
Available Model Group Fallbacks=None

Context

This error occurs when a Task subagent is spawned to perform work that involves MCP tool calls (e.g. Atlassian Confluence, Jira, Miro, Todoist). The subagent session appears to not pass the tools= parameter to the Bedrock API, which is required by litellm when using Bedrock as the provider.

Reproduction Steps

  1. Configure OpenCode with a Bedrock-hosted model via litellm (e.g. us.anthropic.claude-opus-4-6-v1)
  2. Have MCP servers configured (e.g. Atlassian, Todoist)
  3. Trigger a task that causes the primary agent to spawn a Task subagent
  4. The subagent attempts to use MCP tools → error fires

Expected Behaviour

Task subagents should correctly pass the tools= parameter to the model provider when MCP tools are available, or litellm's modify_params should be set to handle this case gracefully.

Workaround

Added AGENTS.md rules to prevent the primary agent from delegating MCP/external service calls to Task subagents. This avoids the error but limits parallelism.

Suggestion

Either:

  1. Ensure the tools= param is forwarded to subagent sessions when using Bedrock via litellm
  2. Set litellm.modify_params = True / litellm_settings::modify_params: True as a default when Bedrock is the provider
  3. Document the limitation clearly for Bedrock users

Activity

  1. github-actions commented on May 26, 2026

    @github-actions
    Contributor

    This issue might be a duplicate of existing issues. Please check:

    These were closed after fixes were applied. If the issue persists specifically for Task subagent sessions (as opposed to the main agent), it may be a regression or a gap in the existing fix coverage.

  2. serejaris commented on May 27, 2026

    @serejaris

    I looked through the related history (#2915, #10037, #10259) and the newer PR #29474. This looks like a specific remaining Task subagent + LiteLLM/Bedrock/tool-history path, but #29474 already attempted the likely _noop compatibility fix and was closed unmerged.

    Before opening another PR in the same direction: was #29474 closed because opencode should not add provider-specific LiteLLM/Bedrock compatibility here, or would a narrower/opt-in shape be acceptable (for example only when litellmProxy is enabled)?

  3. github-actions commented on Jul 27, 2026

    @github-actions
    Contributor

    To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

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