picoclaw/pkg/tools
Andy Lo-A-Foe a01c0ec3af
feat(mcp): support per-request dynamic headers from channel context
Channels can now pass HTTP headers to MCP servers on a per-request basis
by storing keys with a "mcp:" prefix in InboundContext.Raw. This enables
forwarding bearer tokens from channel authentication to MCP tool calls.

The context flows: Channel → InboundContext.Raw["mcp:Authorization"]
→ toolshared.MCPHeaders(ctx) → headerTransport.RoundTrip → HTTP header.

SSE/HTTP transports now always use headerTransport (previously only when
static headers were configured) so dynamic headers work out of the box.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-11 09:55:38 +02:00
..
fs fix(feishu): fix image download with API fallback and post image support (#2708) 2026-04-30 11:08:00 +08:00
hardware fix(serial_windows): remove unused import (#2697) 2026-04-28 16:19:59 +08:00
integration fix(events): keep runtime observers non-blocking 2026-04-27 13:09:03 +08:00
shared feat(mcp): support per-request dynamic headers from channel context 2026-05-11 09:55:38 +02:00
cron.go fix(cron): propagate sessionKey to prevent duplicate tool responses 2026-04-27 13:17:25 +02:00
cron_test.go fix(cron): propagate sessionKey to prevent duplicate tool responses 2026-04-27 13:17:25 +02:00
delegate.go fix(tools): normalize agent_id before self-check and delegation 2026-04-15 22:23:17 +08:00
delegate_test.go test(tools): verify normalization prevents self-delegation bypass 2026-04-15 22:23:47 +08:00
facade_compat_test.go feat(tools): add cross-platform serial hardware tool 2026-04-28 12:54:28 +08:00
fs_facade.go fix(providers,tools): address linter issues after reorg 2026-04-17 14:16:18 +08:00
fs_registry_compat_test.go refactor(tools): reorganize tool packages and facades 2026-04-17 13:44:31 +08:00
hardware_facade.go feat(tools): add cross-platform serial hardware tool 2026-04-28 12:54:28 +08:00
identifier_compat.go refactor(tools): reorganize tool packages and facades 2026-04-17 13:44:31 +08:00
integration_facade.go Keep launcher locale changes from mutating shared web-search routing (#2573) 2026-04-24 13:45:25 +08:00
load_image_compat_test.go refactor(tools): reorganize tool packages and facades 2026-04-17 13:44:31 +08:00
normalization.go chore: revert unrelated golines formatting 2026-03-29 14:06:19 +02:00
path_compat.go refactor(tools): reorganize tool packages and facades 2026-04-17 13:44:31 +08:00
registry.go fix(tools): exempt MCP discovery tools from agent allowlists 2026-05-08 09:18:14 +02:00
registry_test.go fix(tools): exempt MCP discovery tools from agent allowlists 2026-05-08 09:18:14 +02:00
result_test.go chore: revert unrelated golines formatting 2026-03-29 14:06:19 +02:00
search_tool.go fix(tools): exempt MCP discovery tools from agent allowlists 2026-05-08 09:18:14 +02:00
search_tools_test.go chore: revert unrelated golines formatting 2026-03-29 14:06:19 +02:00
session.go refactor(tools): reorganize tool packages and facades 2026-04-17 13:44:31 +08:00
session_process_unix.go feat(tools): add exec tool enhancement with background execution and PTY support (#1752) 2026-03-25 21:02:49 +08:00
session_process_windows.go feat(tools): add exec tool enhancement with background execution and PTY support (#1752) 2026-03-25 21:02:49 +08:00
session_test.go feat(tools): add exec tool enhancement with background execution and PTY support (#1752) 2026-03-25 21:02:49 +08:00
shared_facade.go feat(mcp): support per-request dynamic headers from channel context 2026-05-11 09:55:38 +02:00
shell.go Feat/support isolation (#2423) 2026-04-08 18:15:42 +08:00
shell_process_unix.go fix(exec): terminate process tree on timeout 2026-02-18 02:01:29 +08:00
shell_process_windows.go fix(exec): terminate process tree on timeout 2026-02-18 02:01:29 +08:00
shell_test.go chore: revert unrelated golines formatting 2026-03-29 14:06:19 +02:00
shell_timeout_unix_test.go feat(tools): add exec tool enhancement with background execution and PTY support (#1752) 2026-03-25 21:02:49 +08:00
spawn.go Merge upstream/main into feat/agent-discovery-prompt 2026-05-07 13:16:30 +02:00
spawn_status.go chore: revert unrelated golines formatting 2026-03-29 14:06:19 +02:00
spawn_status_test.go chore: revert unrelated golines formatting 2026-03-29 14:06:19 +02:00
spawn_test.go Merge upstream/main into feat/agent-discovery-prompt 2026-05-07 13:16:30 +02:00
subagent.go feat(agent): add TargetAgentID to SubTurnConfig for cross-agent delegation 2026-04-15 21:27:13 +08:00
subagent_tool_test.go chore: revert unrelated golines formatting 2026-03-29 14:06:19 +02:00
sysproc_unix.go feat(tools): add exec tool enhancement with background execution and PTY support (#1752) 2026-03-25 21:02:49 +08:00
sysproc_windows.go feat(tools): add exec tool enhancement with background execution and PTY support (#1752) 2026-03-25 21:02:49 +08:00
toolloop.go feat: add load_image tool for local file vision (#2116) 2026-04-01 21:32:10 +08:00
validate.go feat(tools): add tool argument schema validation before execution (#1877) 2026-03-24 18:35:56 +08:00
validate_test.go chore: revert unrelated golines formatting 2026-03-29 14:06:19 +02:00