{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"awesome-routine","slug":"routine","name":"Routine","type":"mcp","url":"https://github.com/routineco/mcp-server","page_url":"https://unfragile.ai/routine","categories":["mcp-servers"],"tags":[],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"awesome-routine__cap_0","uri":"capability://tool.use.integration.calendar.event.crud.via.mcp","name":"calendar-event-crud-via-mcp","description":"Exposes Routine's calendar system through MCP protocol, enabling LLM agents and tools to create, read, update, and delete calendar events programmatically. Implements MCP resource and tool handlers that translate natural language or structured requests into Routine API calls, with support for event metadata (title, time, attendees, description). The server acts as a bridge between MCP clients and Routine's backend, handling authentication and request serialization.","intents":["I want my AI agent to automatically schedule meetings based on natural language requests","I need to sync calendar events from an LLM-driven workflow into my calendar system","I want to query upcoming events and let an agent decide what to reschedule based on priorities"],"best_for":["developers building LLM agents that need calendar integration","teams automating scheduling workflows with Claude or other MCP-compatible LLMs","builders creating AI assistants that manage personal or team calendars"],"limitations":["Requires active Routine account with API credentials","No built-in conflict detection or smart scheduling — delegates to Routine backend","MCP protocol overhead adds latency compared to direct REST API calls","Limited to Routine's calendar feature set — cannot extend with custom fields without Routine support"],"requires":["Routine account with API access enabled","MCP client compatible with Routine server (Claude Desktop, custom MCP runners)","Node.js runtime for MCP server execution","Valid Routine API credentials (token or OAuth)"],"input_types":["structured JSON (event objects with title, start, end, attendees)","natural language requests (via LLM interpretation)","event IDs for updates/deletions"],"output_types":["structured JSON (created/updated event objects)","event lists with metadata","confirmation messages"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-routine__cap_1","uri":"capability://tool.use.integration.task.management.via.mcp","name":"task-management-via-mcp","description":"Exposes Routine's task/todo system through MCP tools and resources, allowing agents to create, list, update, and complete tasks with properties like priority, due dates, and descriptions. Implements MCP tool handlers that translate task operations into Routine API calls, supporting task state transitions (open, in-progress, completed) and metadata queries. Agents can query task lists, filter by status or due date, and update task progress.","intents":["I want my AI agent to create tasks from meeting notes or email summaries","I need to query my task list and have an agent prioritize or reassign work","I want to mark tasks complete via natural language commands through an LLM"],"best_for":["developers building productivity-focused AI agents","teams automating task creation from documents or conversations","solo developers integrating task management into LLM-driven workflows"],"limitations":["Task operations are limited to Routine's data model — no custom fields or extensions","No built-in task dependency or critical path analysis","Batch operations require sequential MCP calls, adding latency for bulk updates","Task filtering is constrained to Routine's supported query parameters"],"requires":["Routine account with task management enabled","MCP client with task tool support","Valid Routine API credentials","Node.js runtime for server"],"input_types":["structured JSON (task objects with title, priority, due date, description)","natural language task descriptions","task IDs for updates/completion"],"output_types":["structured JSON (task objects with metadata)","task lists filtered by status/date","completion confirmations"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-routine__cap_2","uri":"capability://memory.knowledge.notes.storage.and.retrieval.via.mcp","name":"notes-storage-and-retrieval-via-mcp","description":"Exposes Routine's notes system through MCP resources and tools, enabling agents to create, read, update, and search notes with support for text content, metadata (tags, timestamps), and organization. Implements MCP resource handlers that map note IDs to content and tool handlers for note operations. Agents can store context, retrieve previous notes for reference, and organize notes with tags for later retrieval.","intents":["I want my agent to store conversation summaries or meeting notes for later reference","I need to retrieve previous notes to provide context to an LLM agent","I want to tag and organize notes so an agent can search and filter them"],"best_for":["developers building knowledge-augmented AI agents","teams using agents for documentation and note-taking workflows","builders creating AI assistants that need persistent context storage"],"limitations":["Notes are stored in Routine backend — no local caching or offline access","Search is limited to Routine's indexing capabilities — no full-text semantic search without external RAG","No version history or collaborative editing features exposed via MCP","Note size limits depend on Routine's backend constraints"],"requires":["Routine account with notes feature enabled","MCP client supporting resource and tool handlers","Valid Routine API credentials","Node.js runtime"],"input_types":["plain text (note content)","structured JSON (note metadata with tags, title)","note IDs for retrieval/updates"],"output_types":["plain text (note content)","structured JSON (note objects with metadata)","note lists with search results"],"categories":["memory-knowledge","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-routine__cap_3","uri":"capability://tool.use.integration.mcp.server.protocol.implementation","name":"mcp-server-protocol-implementation","description":"Implements the Model Context Protocol (MCP) server specification, exposing Routine capabilities as standardized MCP resources, tools, and prompts. The server handles MCP client connections, serializes requests/responses in JSON-RPC format, and manages authentication with Routine's backend. Implements MCP tool definitions with JSON schemas for calendar, task, and note operations, enabling any MCP-compatible client (Claude Desktop, custom runners) to discover and invoke Routine features.","intents":["I want to use Routine with Claude or other MCP-compatible LLMs without custom integration code","I need a standardized interface to Routine that works across multiple AI tools and agents","I want to build custom MCP clients that can interact with Routine"],"best_for":["developers integrating Routine into MCP-compatible AI platforms","teams standardizing on MCP for multi-tool AI workflows","builders creating custom MCP clients or runners"],"limitations":["MCP protocol overhead adds ~50-200ms per request compared to direct API calls","Server must be running to serve MCP clients — no serverless deployment model","MCP client compatibility varies — not all AI tools support MCP yet","Tool schema definitions are static — dynamic schema generation not supported"],"requires":["Node.js 16+ runtime","MCP client implementation (Claude Desktop, custom runner, etc.)","Routine API credentials","Network connectivity between MCP server and client"],"input_types":["JSON-RPC requests (MCP protocol format)","tool invocation payloads with parameters","resource requests with IDs"],"output_types":["JSON-RPC responses","tool results (structured JSON)","resource content (text or JSON)"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-routine__cap_4","uri":"capability://safety.moderation.routine.api.authentication.and.credential.management","name":"routine-api-authentication-and-credential-management","description":"Handles authentication with Routine's backend API, managing credentials (tokens, OAuth) and maintaining authenticated sessions for MCP tool invocations. The server stores and refreshes credentials, implements error handling for auth failures, and ensures all downstream Routine API calls are properly authenticated. Supports credential configuration via environment variables or configuration files.","intents":["I want to securely authenticate my MCP server with Routine without hardcoding credentials","I need my agent to maintain valid authentication across multiple Routine API calls","I want to handle token refresh automatically so my agent doesn't fail mid-workflow"],"best_for":["developers deploying MCP servers in production environments","teams managing multiple Routine accounts or credentials","builders securing agent-to-API communication"],"limitations":["Credentials must be provided at server startup — no runtime credential injection","No built-in credential rotation or expiration management beyond token refresh","Credentials stored in memory — no persistent encryption or vault integration","Single credential set per server instance — no multi-tenant support"],"requires":["Routine API credentials (token or OAuth client ID/secret)","Environment variable or config file for credential storage","Node.js runtime with access to environment"],"input_types":["API tokens or OAuth credentials","configuration files or environment variables"],"output_types":["authenticated HTTP headers for Routine API calls","auth error messages and retry signals"],"categories":["safety-moderation","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-routine__cap_5","uri":"capability://tool.use.integration.mcp.tool.schema.definition.and.discovery","name":"mcp-tool-schema-definition-and-discovery","description":"Defines JSON schemas for all Routine operations (calendar, task, notes) exposed as MCP tools, enabling clients to discover available operations, required parameters, and expected outputs at runtime. The server implements MCP's tools/list and tools/call handlers, providing schema introspection so clients can generate appropriate prompts and validate inputs before invocation. Schemas include descriptions, parameter types, and constraints.","intents":["I want my LLM agent to discover what Routine operations are available without reading documentation","I need to validate task or calendar parameters before sending them to Routine","I want to generate dynamic prompts that describe available Routine operations to the agent"],"best_for":["developers building self-documenting AI agents","teams using schema-driven tool invocation patterns","builders creating generic MCP clients that work with multiple servers"],"limitations":["Schemas are static — cannot reflect dynamic Routine features or custom fields","Schema validation is client-side responsibility — server does not enforce schema compliance","Complex nested schemas may be difficult for some LLM agents to parse","Schema updates require server restart — no hot-reload of tool definitions"],"requires":["MCP client that supports tools/list and tools/call","JSON schema validation library (optional, for client-side validation)","Node.js runtime for server"],"input_types":["MCP tools/list requests","MCP tools/call requests with parameters matching schema"],"output_types":["JSON schema definitions for each tool","tool invocation results"],"categories":["tool-use-integration","planning-reasoning"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":25,"verified":false,"data_access_risk":"high","permissions":["Routine account with API access enabled","MCP client compatible with Routine server (Claude Desktop, custom MCP runners)","Node.js runtime for MCP server execution","Valid Routine API credentials (token or OAuth)","Routine account with task management enabled","MCP client with task tool support","Valid Routine API credentials","Node.js runtime for server","Routine account with notes feature enabled","MCP client supporting resource and tool handlers"],"failure_modes":["Requires active Routine account with API credentials","No built-in conflict detection or smart scheduling — delegates to Routine backend","MCP protocol overhead adds latency compared to direct REST API calls","Limited to Routine's calendar feature set — cannot extend with custom fields without Routine support","Task operations are limited to Routine's data model — no custom fields or extensions","No built-in task dependency or critical path analysis","Batch operations require sequential MCP calls, adding latency for bulk updates","Task filtering is constrained to Routine's supported query parameters","Notes are stored in Routine backend — no local caching or offline access","Search is limited to Routine's indexing capabilities — no full-text semantic search without external RAG","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.05,"quality":0.22,"ecosystem":0.39999999999999997,"match_graph":0.25,"freshness":0.52,"weights":{"adoption":0.25,"quality":0.25,"ecosystem":0.15,"match_graph":0.23,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-06-17T09:51:04.048Z","last_scraped_at":"2026-05-03T14:00:15.503Z","last_commit":null},"community":{"stars":null,"forks":null,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=routine","compare_url":"https://unfragile.ai/compare?artifact=routine"}},"signature":"nMjRW7iiA/TVTF70FrZAMkD+0bXmUhmJw6muP0ctqcxpeKdSc6vLAEUOxC7ZkM9nTn38UsnMHZK2GRItucmBDw==","signedAt":"2026-06-22T19:02:52.514Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/routine","artifact":"https://unfragile.ai/routine","verify":"https://unfragile.ai/api/v1/verify?slug=routine","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}