claude-code - 💡(How to fix) Fix Custom MCP connectors not attachable to scheduled routines — no UUID discovery path

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Root Cause

Custom MCP connectors registered at claude.ai/customize/connectors work perfectly in chat sessions but cannot be attached to scheduled routines because:

Fix Action

Fix / Workaround

Either this should be supported (with discoverable UUIDs) or explicitly documented as not-supported with a recommended workaround.

Workaround attempt 1: Use zero-UUID

Workaround attempt 2: Discover UUID

Code Example

POST /v1/code/triggers/{id}
{
  "mcp_connections": [{
    "name": "Inodus-Factory",
    "url": "https://mcp.inodus.nl/mcp"
  }]
}

---

{
  "mcp_connections": [{
    "connector_uuid": "00000000-0000-0000-0000-000000000000",
    "name": "Inodus-Factory",
    "url": "https://mcp.inodus.nl/mcp"
  }]
}
RAW_BUFFERClick to expand / collapse

Anthropic feedback: custom MCP connectors not usable in Claude Code routines

Date: 2026-05-28 Account: Ello van Gelderen ([email protected]) Component: Claude Code routines + custom MCP connectors


TL;DR

Custom MCP connectors registered at claude.ai/customize/connectors work perfectly in chat sessions but cannot be attached to scheduled routines because:

  1. The /v1/code/triggers API requires a connector_uuid for mcp_connections
  2. There is no API or UI surface to discover the UUID of a custom connector
  3. The /schedule skill in Claude Code only lists built-in connectors (Gmail, Drive, Calendar)
  4. Documentation does not address routines × custom-MCP interaction

Either this should be supported (with discoverable UUIDs) or explicitly documented as not-supported with a recommended workaround.


Reproduction

Setup

  1. Deploy a custom MCP server at https://mcp.inodus.nl/mcp (FastMCP 3.x, streamable HTTP, authless)
  2. Add as custom connector at claude.ai/customize/connectors → "Inodus Factory"
  3. Verify chat works: open new Claude.ai chat, invoke a tool from this connector → ✅ works, "Loaded tools, used Inodus Factory integration"
  4. Verify direct MCP works: connect via fastmcp Python client to the same URL → ✅ full protocol works, all 8 tools callable

Failure path

Attach connector to a scheduled routine via API:

POST /v1/code/triggers/{id}
{
  "mcp_connections": [{
    "name": "Inodus-Factory",
    "url": "https://mcp.inodus.nl/mcp"
  }]
}

HTTP 400: "mcp_connections.0.connector_uuid: Field required"

Workaround attempt 1: Use zero-UUID

{
  "mcp_connections": [{
    "connector_uuid": "00000000-0000-0000-0000-000000000000",
    "name": "Inodus-Factory",
    "url": "https://mcp.inodus.nl/mcp"
  }]
}

→ HTTP 200 (API accepts), but runtime: the routine does not connect to the MCP. No POST /mcp requests reach mcp.inodus.nl during the routine run. Same routine in chat-mode works fine — proving the network path is OK.

Workaround attempt 2: Discover UUID

  • /schedule skill returns only 3 built-in connectors (Gmail/Drive/Calendar), even after the custom connector is added
  • claude.ai/customize/connectors UI: connector tile has no visible UUID
  • No documented /v1/connectors or similar API endpoint to enumerate user-attached MCPs

Impact

For our use-case (a daily-incidents-summary cloud routine that reads from our monitoring DB and emails a digest), we cannot use the MCP-connector path even though:

  • The MCP server is built and deployed
  • Connector is registered
  • Chat usage works end-to-end
  • A direct script (FastMCP client) works end-to-end

The only currently-available paths are:

  1. Use chat manually each morning instead of an automatic routine
  2. Build a separate non-MCP cron (e.g. local Mac Mini or separate Railway service) that bypasses the cloud-routine egress-block
  3. Wait for either API support or documentation

Suggested fixes (any one would unblock this use-case)

  1. /v1/connectors enumeration endpoint that lists the calling user's MCPs (built-in + custom) with their connector_uuids
  2. Make connector_uuid optional when url is provided — server-side matches against the user's registered connectors by URL
  3. Allow custom connectors in routines by URL alone (no UUID required), with a documented security boundary (e.g. "only URLs matching one of the user's registered connectors are accepted")
  4. Documentation in https://claude.com/docs/llms-full.txt explicitly stating either "custom connectors are supported in routines via X" or "custom connectors are not yet supported in routines, use built-in connectors only"

Environment

  • Claude Code: latest, plugin mode in CLI
  • claude.ai web: standard, custom connector flow
  • MCP server: FastMCP 3.3.1 / Python 3.13
  • MCP transport: streamable HTTP (mcp.inodus.nl/mcp)
  • MCP auth: authless (custom connectors don't yet support OAuth in our setup)
  • Trigger API: https://api.anthropic.com/v1/code/triggers (via Claude Code RemoteTrigger tool)
  • Trigger ID where this was tested: trig_017VcsBprnZFqney3qxYcowU

How to submit

Pick one:

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING