Skip to content

Scheduled tasks cannot access HTTP MCP servers — missing user:mcp_servers scope #32000

@PhilipJamesRealty

Description

@PhilipJamesRealty

Description

Claude Desktop scheduled tasks cannot connect to HTTP-type MCP servers configured in ~/.claude/mcp.json. The same MCP tools work perfectly in interactive Claude Code sessions (via cloud connectors).

Setup

  • macOS (Darwin 24.3.0), Claude Desktop with scheduled tasks enabled (ccdScheduledTasksEnabled: true)
  • Custom Zoho MCP server (HTTP type) configured in ~/.claude/mcp.json:
{
  "zoho": {
    "type": "http",
    "url": "https://[redacted].zohomcp.com/mcp/message?key=[redacted]"
  }
}
  • The same Zoho MCP server works perfectly as a cloud connector in interactive Claude Code / Claude Desktop sessions (all 4 services: Zoho Mail, CRM, Books, Cliq)

What happens

  1. Scheduled task sessions launch successfully on their cron schedule
  2. The ~/.claude/mcp.json file IS discovered — the session attempts to connect to the HTTP MCP server
  3. Connection fails with: [claudeai-mcp] Missing user:mcp_servers scope (scopes=user:inference)
  4. After logout/login of Claude Desktop, the MCP tools aren't discovered at all in subsequent scheduled runs
  5. Interactive sessions continue to work fine via cloud connectors

Expected behavior

Scheduled task sessions should have the user:mcp_servers scope so they can connect to HTTP MCP servers configured in ~/.claude/mcp.json, the same way interactive sessions can use cloud connectors.

Impact

This blocks any automated workflow that depends on external MCP tools running on a schedule. In my case, a Zoho Mail/CRM inbox processing system that needs to run every 20 minutes via scheduled tasks.

Steps to reproduce

  1. Configure an HTTP MCP server in ~/.claude/mcp.json
  2. Verify the MCP tools work in an interactive Claude Code session
  3. Create a scheduled task that calls those MCP tools
  4. Observe that the scheduled task fails with the scope error above

Environment

  • macOS 14.x (Darwin 24.3.0)
  • Claude Desktop with ccdScheduledTasksEnabled: true
  • Claude Code (Opus 4.6)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions