Unclear It is not clear exactly which MCP server qualifies for this extra information.
MCP (Model Context Protocol, the standard Claude Code uses to connect to outside tools) requests carry a block of extra information called _meta. When a subagent (a helper agent that the main session starts to handle part of a task) calls a tool on a qualifying MCP server, that block now also includes:
claudecode/agentId, the subagent's IDclaudecode/agentType, the kind of subagent, cut to at most 128 charactersclaudecode/isObserver, added when the subagent was started, directly or further up the chain, by an observer-type task
Calls made by the main session are unchanged. This applies to only one specific server that Claude Code has built in, not to every MCP server, and it covers both ways Claude Code makes MCP tool calls.
The receiving server can now tell which subagent made each call instead of seeing them all as coming from the same session.
The entry above is what we published on the day. These lines were added later, as Anthropic's own pages caught up, and they sit beside the original rather than replacing it.
An MCP tool whose server marks it with [`_meta["anthropic/requiresUserInteraction"]`](/docs/en/mcp#require-approval-for-a-specific-tool) is stricter: a hook can't skip its approval prompt with `"allow"`, with or without `updatedInput`, bec…hooks see the edit
* Support CIMD instead. Claude selects CIMD only when your authorization server metadata advertises both `"client_id_metadata_document_supported": true` and `"none"` in `token_endpoint_auth_methods_supported`. The second is required becaus…connectors/building/authentication see the edit
It is not clear exactly which MCP server qualifies for this extra information.
Anthropic's documentation has since written up _meta, on Authentication for connectors.