Routine
Official# Routine Model Context Protocol (MCP) Server
This is the Routine [Model Context Protocol (MCP)](https://modelcontextprotocol.io) server.
## Usage
1. Run the [Routine](https://routine.co/download) application for the MCP server to work.
2. Run this MCP server with `npx routine-mcp-server` or configure it in your favorite MCP client.
### Claude Desktop
For Claude Desktop, refer to https://modelcontextprotocol.io/quickstart/user
In particular, your file `claude_desktop_config.json` should look something like that:
```json
{
"mcpServers": {
"routine": {
"command": "npx",
"args": ["routine-mcp-server"]
}
}
}
```
## Development
```bash
# Install dependencies
yarn
# Build the project
yarn build
```
Then install the MCP server:
- Command: full path to `node` executable
- Arguments: full path to `./dist/index.js`
### Claude Desktop
For Claude Desktop, refer to https://modelcontextprotocol.io/quickstart/user
In particular, your file `claude_desktop_config.json` should look something like that:
```json
{
"mcpServers": {
"routine": {
"command": "/absolute/path/to/bin/node",
"args": ["/absolute/path/to/mcp-server/dist/index.js"]
}
}
}
```
### Running the MCP Server (development)
```bash
# Start the server
yarn start
```
The server communicates via stdin/stdout, following the MCP protocol. You can interact with it by sending JSON requests to its stdin and reading responses from stdout.
TDQS
Scored across 18 tools
Most tools have clearly distinct purposes, but there is some overlap between eventDay and eventTimeline (both provide daily event views) and between taskDay, taskUnplanned, and taskUpcoming (all list tasks with different filters). The descriptions help differentiate them, but an agent might occasionally misselect between these similar tools.
The naming is mostly consistent with a verb_noun pattern (e.g., calendarGet, eventGet, taskCreateSimple), but there are minor deviations like authProfile (noun_noun), calendarAll (noun_adjective), and peopleByEmail (noun_preposition_noun). These deviations are readable but break the overall pattern slightly.
With 18 tools, the count is slightly high but reasonable for a productivity/calendar domain covering calendars, events, pages, people, and tasks. It feels comprehensive rather than bloated, though it borders on being heavy for an MCP server.
The tool set provides complete CRUD/lifecycle coverage for its domains: calendars (list, get), events (list by day, get, timeline), pages (list, get), people (get by email/id), and tasks (create, get, update, complete/uncomplete, list by various filters). There are no obvious gaps, and agents can handle typical workflows without dead ends.