RoutineOSBeta
Learn

Claude connectors, and what a routine can do with them.

A Claude connector is a link from your Claude account to another service, such as mail, a calendar or a docs tool. In a scheduled task it is how a run reads from and writes to that service without holding a password. This guide says how that works, which connectors can write, and how RoutineOS puts an approval in front of every write.

docs-statedconnectors and MCP
What a connector is

What are Claude connectors?

A connector is an integration on a person's claude.ai account, built on the Model Context Protocol (MCP). An MCP server is any service that speaks MCP, and a connector is one way of adding one.

You sign in to the service once on claude.ai. After that, no key reaches the run, your repository or the Desk. Connector traffic also goes through Anthropic's servers, not the run's own network, so the run's network allowlist does not block it.

Anthropic keeps a directory of connectors, and you can add a custom one. A custom remote connector must be reachable from the public internet. See Anthropic's help article on connectors and the connectors directory. We do not quote a count, because it changes.

In a scheduled task

Every connector is included by default, and can write

When you create a scheduled task, all of your currently connected connectors are included by default. Anthropic's docs say Claude can use an included connector during a run, including writes. Remove any the task does not need.

What a connector does appears as you. A Slack message or a calendar change goes out from your linked account, not from a bot.

Servers added on your own machine with claude mcp add live on your machine, not your account, so a cloud task cannot see them. Add the server as a connector, or, for a task with one repository, declare it in a committed .mcp.json.

Heads upLeaving every connector on is the common mistake. A routine that only needs to read mail should not also be able to post to Slack.
Writes

How RoutineOS gates every connector write

RoutineOS treats every write connector as a send. Each connector a routine uses is declared with a direction, read or write. Lint refuses a write connector that has no gate. The permission screen lists each connector and you approve the list before anything is created.

A gate holds any send, post or delete until a named person approves. The prompt also forbids sends that are not on the approved list. That is a prompt rule, not a runtime guarantee, because one pilot saw a run use a send tool the approved list did not include. Read more on approvals.

ConnectorWhat we sawHow we know
Email gate transportApproval requests over email worked end to end in a pilot.pilot-verified
Slack sendNeeded the Slack connector's tool policy set to "Ask for approval" on claude.ai before a send tool appeared in the run.pilot-verified
Gmail send approvalAnthropic's help article says send actions need approval by default. A pilot send from an unattended run went through with no policy change. The two do not obviously agree, so test it in your own account.docs-stated and pilot-verified
Custom connector

Add a Claude custom connector: the RoutineOS docs server

The RoutineOS docs and template catalog are a read-only MCP server. No account and no sign in. It is a handy worked example of adding a custom connector.

  1. Open Customize, then ConnectorsOn Claude on the web or Claude Desktop, choose + Add, then Add custom connector.
  2. Name it and paste the addressName it RoutineOS and paste https://docs.routineos.org/api/mcp.
  3. Choose No sign in, then AddTurn it on in a chat from + > Connectors.
  4. Ask it somethingFor example, "search the RoutineOS docs for gates".
claude mcp add --transport http routineos https://docs.routineos.org/api/mcp
By template

Connectors each RoutineOS template uses

Taken from the catalog. Read means it only looks. Write means it can send or publish, so it sits behind a gate. Built-in means web search or fetch, with nothing to connect.

TemplateNeedsOptional
Jobs watch pilotedWeb search, Web fetch (built in)Mail (write)
Watch pilotedWeb fetch (built in)None
Inbox triageMail (read)Mail for approvals, Mail (send), both write
Meeting briefCalendar (read), Web search, Web fetchNone
Invoice exceptionsInvoice mailbox or folder (read)None
Candidate shortlistApplicant tracking system (read, via MCP)None
Content calendarWeb search, Web fetchMail for approvals, Publishing platform (via MCP), both write
Engineering digestCode host (read)None
Support gap digestHelp desk (read, via MCP), Web fetchNone
Weekly marketing reportAnalytics and ad platforms (read, via MCP)Web fetch

Put a gate in front of every write

Install the plugin in Claude Code and start from a template. Free (MIT). Needs a paid Claude plan.