[BUG] MCP connectors (Slack) do not initialize in scheduled task / remote agent execution context

Resolved 💬 4 comments Opened Apr 7, 2026 by abrunke Closed Apr 10, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

MCP connectors attached to a scheduled task do not initialize when the task is executed — either via the scheduled trigger or the "Run now" button in the task UI. ToolSearch returns No matching deferred tools found for all queries, including exact tool names known to be correct.

The same task, with the same prompt and the same Slack connector, works correctly when run inside an interactive Claude Code conversation session.

In the remote/scheduled execution context, ToolSearch consistently returns No matching deferred tools found for all queries — including:

mcp__Slack__slack_read_channel (exact tool name)
mcp__Slack__slack_post_message
slack_read_channel
slack post message
Slack
Each query was retried multiple times across multiple runs. The connector never loaded.

In an interactive conversation session, the same connector initializes immediately upon user interaction and all tools become available via ToolSearch.

Evidence

ToolSearch log showing 10 failed attempts across all query variations (scheduled run):
mcp__Slack__slack_read_channel × 2 → No matching deferred tools found
mcp__Slack__slack_post_message × 2 → No matching deferred tools found
slack_read_channel × 2 → No matching deferred tools found
slack post message × 2 → No matching deferred tools found
Slack × 2 → No matching deferred tools found
Adding a text generation warm-up step before ToolSearch did not help
Adding more retry attempts did not help
The Slack connector IS visible and attached in the task's Connectors section

What Should Happen?

MCP connectors attached to a scheduled task should initialize and make their tools available as deferred tools when the task executes, regardless of whether execution is triggered by a schedule, "Run now", or interactive session.

Error Messages/Logs

Loaded tools
Loaded tools
ToolSearch
mcp__Slack__slack_read_channel
No matching deferred tools found
ToolSearch
mcp__Slack__slack_read_channel
No matching deferred tools found
ToolSearch
mcp__Slack__slack_read_channel
No matching deferred tools found
ToolSearch
slack read channel send message
ToolSearch
slack read channel send message
Show less

After 5 attempts across both queries, the Slack connector tools remain unavailable. I'm unable to post the fallback message to #logs-stake since the tools required to do so are also not accessible.

⚠️ Log Summary could not be generated — Slack connector tools were unavailable at job start. Please re-run manually.

Steps to Reproduce

Steps to Reproduce

  1. Create a scheduled task at claude.ai with the Slack connector attached
  2. Write a prompt that uses ToolSearch to load mcp__Slack__slack_read_channel before proceeding
  3. Click "Run now" or let the scheduled trigger fire
  4. Observe: all ToolSearch calls return No matching deferred tools found — the connector never loads
  5. Open an interactive Claude Code conversation (same account, same Slack connector)
  6. Paste any message — observe: system-reminder immediately shows all Slack tools as available deferred tools
  7. Run the same prompt manually in the conversation — it works

Claude Model

Sonnet (default)

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.92 (Claude Code)

Platform

Other

Operating System

Other

Terminal/Shell

Other

Additional Information

_No response_

View original on GitHub ↗

This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗