{"_id":"@ajhochy/rhythm-mcp-server","_rev":"8-1c671b4aeda88fdcd9c64cca67da04a5","name":"@ajhochy/rhythm-mcp-server","dist-tags":{"latest":"0.6.2"},"versions":{"0.1.0":{"name":"@ajhochy/rhythm-mcp-server","version":"0.1.0","_id":"@ajhochy/rhythm-mcp-server@0.1.0","maintainers":[{"name":"ajhochy1","email":"ajhochy@gmail.com"}],"bin":{"rhythm-mcp":"dist/index.js"},"dist":{"shasum":"aac120fdd3af32004134c51a1a693f8bee913f74","tarball":"https://registry.npmjs.org/@ajhochy/rhythm-mcp-server/-/rhythm-mcp-server-0.1.0.tgz","fileCount":12,"integrity":"sha512-WaFeUnZpx+BELTBgoz82SFqCAiGi9qhk0vyNf+xYEx5Dd6OYPD86TJAIQ4LDwyG6qZAZHB5IPE2QJq8wou0MqQ==","signatures":[{"sig":"MEYCIQCYVQjYJsCLx6h8c6/h/OApws3sqCF46D4f+BkyFJNUVQIhAImrr+8q3lvw/tWOJkGN/gKEXMHvJiAXFH67YWD8Xf55","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31790},"main":"dist/index.js","type":"commonjs","engines":{"node":">=18"},"gitHead":"bf2544dcad7b057d60435c980af9d335beb1f508","scripts":{"dev":"tsx src/index.ts","build":"tsc -p tsconfig.json","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ajhochy1","email":"ajhochy@gmail.com"},"_npmVersion":"11.11.0","description":"MCP server for Rhythm — manage tasks, projects, and rhythms via Claude","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.22.0","@modelcontextprotocol/sdk":"^1.12.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.16.0","typescript":"^5.5.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/rhythm-mcp-server_0.1.0_1776231035834_0.16255902372900732","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@ajhochy/rhythm-mcp-server","version":"0.2.0","_id":"@ajhochy/rhythm-mcp-server@0.2.0","maintainers":[{"name":"ajhochy1","email":"ajhochy@gmail.com"}],"bin":{"rhythm-mcp":"dist/index.js"},"dist":{"shasum":"b83c784ea5442facedd3f4e8fe20fb689b42e7bd","tarball":"https://registry.npmjs.org/@ajhochy/rhythm-mcp-server/-/rhythm-mcp-server-0.2.0.tgz","fileCount":14,"integrity":"sha512-bgBpQDXpDbImfeqojW9hdVVYKtriL7wRSkEk39uVqzE12/p6N/e1Kok7cJsLWU4DYU95+nXoUMBBrrUGqFepbw==","signatures":[{"sig":"MEYCIQCrC1KAE2oV3deIwtwJxoBT4LNlMjIPli7/O1okcjIhzAIhAN9IwSPyFLyEeHpBX/RnQbbaDVjWt7kB9V8yZdumtxbx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48421},"main":"dist/index.js","type":"commonjs","engines":{"node":">=18"},"gitHead":"c07db0cc54764e0e0382c662860e80efddde9bea","scripts":{"dev":"tsx src/index.ts","test":"vitest run","build":"tsc -p tsconfig.json --noCheck","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"ajhochy1","email":"ajhochy@gmail.com"},"_npmVersion":"10.9.3","description":"MCP server for Rhythm — manage tasks, projects, and rhythms via Claude","directories":{},"_nodeVersion":"22.18.0","dependencies":{"zod":"^3.22.0","@modelcontextprotocol/sdk":"^1.12.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.16.0","vitest":"^2.0.0","typescript":"^5.5.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/rhythm-mcp-server_0.2.0_1778107293929_0.7048433433132206","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@ajhochy/rhythm-mcp-server","version":"0.3.0","_id":"@ajhochy/rhythm-mcp-server@0.3.0","maintainers":[{"name":"ajhochy1","email":"ajhochy@gmail.com"}],"bin":{"rhythm-mcp":"dist/index.js"},"dist":{"shasum":"c5a742e9dece22fed34dcbc0203b069ac39ba9f4","tarball":"https://registry.npmjs.org/@ajhochy/rhythm-mcp-server/-/rhythm-mcp-server-0.3.0.tgz","fileCount":15,"integrity":"sha512-4VJI3AkY+RMs2lO2z83YUiizVYqyJimx3vMqxGQ2GS16rJBE6pDtWavssuAJ9ow2Ey1ecxXwnoOAEKBSS1o0rQ==","signatures":[{"sig":"MEUCIQDLIY2KBvWGIZlCVp2V1Qxis1AHfbbrmBFF6yLIHxcwYAIgL6ws4KfNrDbqGwisp52eU8XQG/bUPcQZD1/Lzh4nmdo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":65990},"main":"dist/index.js","type":"commonjs","engines":{"node":">=18"},"scripts":{"dev":"tsx src/index.ts","test":"vitest run","build":"tsc -p tsconfig.json --noCheck","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"ajhochy1","email":"ajhochy@gmail.com"},"_npmVersion":"10.9.3","description":"MCP server for Rhythm — manage tasks, projects, and rhythms via Claude","directories":{},"_nodeVersion":"22.18.0","dependencies":{"zod":"^3.22.0","@modelcontextprotocol/sdk":"^1.12.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.16.0","vitest":"^2.0.0","typescript":"^5.5.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/rhythm-mcp-server_0.3.0_1778175735853_0.556637689657135","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@ajhochy/rhythm-mcp-server","version":"0.4.0","_id":"@ajhochy/rhythm-mcp-server@0.4.0","maintainers":[{"name":"ajhochy1","email":"ajhochy@gmail.com"}],"bin":{"rhythm-mcp":"dist/index.js"},"dist":{"shasum":"ebc690278384dd868648b9ac0ba92ef8fc8f26bd","tarball":"https://registry.npmjs.org/@ajhochy/rhythm-mcp-server/-/rhythm-mcp-server-0.4.0.tgz","fileCount":16,"integrity":"sha512-NIPHdT22ReMbLOsruBmu9ulSilyAgtuqt5in0hG/5zRxdylHdqnbQOgkJOBkqeC1ujXQgPxYuUI4fc4MbKrB8Q==","signatures":[{"sig":"MEUCIHH6jaumKxvPQpJJSJfxPH8G8aGbtrEVa5HxTbCojv0HAiEAjMYX1mK8QlhYYBEYeR6Ga+zcoFd1nbA1vGCeesvRYSI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72921},"main":"dist/index.js","type":"commonjs","engines":{"node":">=18"},"gitHead":"4f51ab3d94d19abbf9ac5652fc64e84115cf90d1","scripts":{"dev":"tsx src/index.ts","test":"vitest run","build":"tsc -p tsconfig.json --noCheck","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"ajhochy1","email":"ajhochy@gmail.com"},"_npmVersion":"10.9.3","description":"MCP server for Rhythm — manage tasks, projects, and rhythms via Claude","directories":{},"_nodeVersion":"22.18.0","dependencies":{"zod":"^3.22.0","@modelcontextprotocol/sdk":"^1.12.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.16.0","vitest":"^2.0.0","typescript":"^5.5.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/rhythm-mcp-server_0.4.0_1778191956942_0.6790906829326877","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@ajhochy/rhythm-mcp-server","version":"0.5.0","_id":"@ajhochy/rhythm-mcp-server@0.5.0","maintainers":[{"name":"ajhochy1","email":"ajhochy@gmail.com"}],"bin":{"rhythm-mcp":"dist/index.js"},"dist":{"shasum":"b8146faf9d9cf94ca460ae3a806f15024e1b3ec6","tarball":"https://registry.npmjs.org/@ajhochy/rhythm-mcp-server/-/rhythm-mcp-server-0.5.0.tgz","fileCount":19,"integrity":"sha512-l1RWMZQN7ImRBkpbq9qarWEtBhSsNABAkcW6ns2ZrtzRzNAvom0Jse5FDUczwP2cMPt13U3MjdJG+rUMg4/8kg==","signatures":[{"sig":"MEUCIHuJUB/4IPpjTprJ8F0f4OI3EgSFqy+3fSbSABKJER/7AiEA1h85iaOnAluTRBd0yMn0MR8nCOTGVaCXNJxFBiL2sjA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":94991},"main":"dist/index.js","type":"commonjs","engines":{"node":">=18"},"gitHead":"59f5fec6e2778ef833451ff1cecfd3b03417a394","scripts":{"dev":"tsx src/index.ts","test":"vitest run","build":"tsc -p tsconfig.json --noCheck","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"ajhochy1","email":"ajhochy@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for Rhythm — manage tasks, projects, and rhythms via Claude","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^3.22.0","@modelcontextprotocol/sdk":"^1.12.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.16.0","vitest":"^2.0.0","typescript":"^5.5.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/rhythm-mcp-server_0.5.0_1778557327202_0.07851504518043839","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@ajhochy/rhythm-mcp-server","version":"0.6.0","_id":"@ajhochy/rhythm-mcp-server@0.6.0","maintainers":[{"name":"ajhochy1","email":"ajhochy@gmail.com"}],"bin":{"rhythm-mcp":"dist/index.js"},"dist":{"shasum":"dd87fab0176e1a24aeb9501b8c5a21f5f0bbcbc2","tarball":"https://registry.npmjs.org/@ajhochy/rhythm-mcp-server/-/rhythm-mcp-server-0.6.0.tgz","fileCount":21,"integrity":"sha512-EjZF0G+Jv4Sh6QJHyBZ3j/n7Oi5cHF5pSFwzL70zuyW+EkXZfY/Wg9vHJaGtcTpC2QqTJuik21lpFa1Gns45CA==","signatures":[{"sig":"MEYCIQDRERJh2aaRENMK7yNt2b3yCLmi+2EdISpp0e8nnj9dmgIhAIk8L165wYwNCguDLOC0tJ30NjDQf6qrp6HnritConWC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":106934},"main":"dist/index.js","type":"commonjs","engines":{"node":">=18"},"gitHead":"39eff4391ba055f7176662769ad82b428d5b620f","scripts":{"dev":"tsx src/index.ts","test":"vitest run","build":"tsc -p tsconfig.json --noCheck","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"ajhochy1","email":"ajhochy@gmail.com"},"_npmVersion":"10.9.3","description":"MCP server for Rhythm — manage tasks, projects, and rhythms via Claude","directories":{},"_nodeVersion":"22.18.0","dependencies":{"zod":"^3.22.0","@modelcontextprotocol/sdk":"^1.12.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.16.0","vitest":"^2.0.0","typescript":"^5.5.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/rhythm-mcp-server_0.6.0_1781557192685_0.7900598437311903","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@ajhochy/rhythm-mcp-server","version":"0.6.1","_id":"@ajhochy/rhythm-mcp-server@0.6.1","maintainers":[{"name":"ajhochy1","email":"ajhochy@gmail.com"}],"bin":{"rhythm-mcp":"dist/index.js"},"dist":{"shasum":"c4568e4c360a42508db78f16a4fd73b7544de5b2","tarball":"https://registry.npmjs.org/@ajhochy/rhythm-mcp-server/-/rhythm-mcp-server-0.6.1.tgz","fileCount":23,"integrity":"sha512-bYepJzWjiWtCucnj9hEMxAp0pYEDCqcwrDzapS6v5gWWBGVeA+KrHwsICJIg1CzYi9DjEA2MD06AByk7Hp4hvQ==","signatures":[{"sig":"MEUCIQCMXxiZS4nuURoJwObe6LHvABzcPPU5Po6/wl27hLDEVAIgclozRgN/kzGUUUtJpVRQn872oJk1YO7takjCXf/jbPA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":94539},"main":"dist/index.js","type":"commonjs","engines":{"node":">=18"},"gitHead":"1cef1514fba42349ba1822d76f3b1be95dadb178","scripts":{"dev":"tsx src/index.ts","test":"vitest run","build":"tsc -p tsconfig.json --noCheck","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"ajhochy1","email":"ajhochy@gmail.com"},"_npmVersion":"10.8.2","description":"MCP server for Rhythm — manage tasks, projects, and rhythms via Claude","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^3.22.0","@modelcontextprotocol/sdk":"^1.12.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.16.0","vitest":"^2.0.0","typescript":"^5.5.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/rhythm-mcp-server_0.6.1_1782702434804_0.78031220362283","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"@ajhochy/rhythm-mcp-server","version":"0.6.2","description":"MCP server for Rhythm — manage tasks, projects, and rhythms via Claude","repository":{"type":"git","url":"git+https://github.com/ajhochy/Rhythm.git","directory":"apps/mcp_server"},"type":"commonjs","main":"dist/index.js","bin":{"rhythm-mcp":"dist/index.js"},"scripts":{"build":"tsc -p tsconfig.json --noCheck","typecheck":"tsc --noEmit","dev":"tsx src/index.ts","start":"node dist/index.js","test":"vitest run","test:watch":"vitest","prepare":"npm run build"},"publishConfig":{"access":"public"},"engines":{"node":">=22.19.0"},"dependencies":{"@modelcontextprotocol/sdk":"^1.12.0","undici":"^8.7.0","zod":"^3.22.0"},"devDependencies":{"@types/node":"^20.0.0","tsx":"^4.16.0","typescript":"^5.5.0","vitest":"^2.0.0"},"gitHead":"a3b1633ae1f36b82b3b7e19bab1c303a21bc8b82","_id":"@ajhochy/rhythm-mcp-server@0.6.2","bugs":{"url":"https://github.com/ajhochy/Rhythm/issues"},"homepage":"https://github.com/ajhochy/Rhythm#readme","_nodeVersion":"22.23.2","_npmVersion":"11.19.0","dist":{"integrity":"sha512-SHNAyDwTDJcPxiKM6d9u3jnT6h1ujn4NJWdnZdG98t55O0Pa/F06GO09UKzjZJurVaKGarc2sN+buUw+mI2ptw==","shasum":"22a27a902ad2a19afc4536a4f0d02c0b7c2e1a9a","tarball":"https://registry.npmjs.org/@ajhochy/rhythm-mcp-server/-/rhythm-mcp-server-0.6.2.tgz","fileCount":34,"unpackedSize":252174,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ajhochy%2frhythm-mcp-server@0.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIEE59nOrCE5WSIDkO2QaLO2LbCZWrfrHd3u/i22YV2vnAiEAu84BTC9gli7Cv1lZYFt2bsqK7GHAZEVQQfknK6On7+I="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fc4931c4-99bb-45a3-bb53-c2171de7e72d"}},"directories":{},"maintainers":[{"name":"ajhochy1","email":"ajhochy@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/rhythm-mcp-server_0.6.2_1787006075344_0.01859504660980016"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-15T05:30:35.740Z","modified":"2026-08-17T22:34:35.819Z","0.1.0":"2026-04-15T05:30:35.972Z","0.2.0":"2026-05-06T22:41:34.072Z","0.3.0":"2026-05-07T17:42:15.998Z","0.4.0":"2026-05-07T22:12:37.083Z","0.5.0":"2026-05-12T03:42:07.366Z","0.6.0":"2026-06-15T20:59:52.836Z","0.6.1":"2026-06-29T03:07:14.950Z","0.6.2":"2026-08-17T22:34:35.488Z"},"description":"MCP server for Rhythm — manage tasks, projects, and rhythms via Claude","maintainers":[{"name":"ajhochy1","email":"ajhochy@gmail.com"}],"readme":"# Rhythm MCP Server\n\nRhythm MCP Server lets you manage tasks, projects, rhythms, messages, and facilities in Rhythm directly from Claude.\n\n## Prerequisites\n\n- Node.js 18 or later\n- A Rhythm account at [api.vcrcapps.com](https://api.vcrcapps.com)\n- Claude Desktop, Claude Code, or any MCP-compatible client\n\n## Get your API token\n\nOpen Rhythm → **Settings → Claude Integration** and copy your session token.\n\nAlternatively, obtain one via the API:\n\n```bash\ncurl -X POST https://api.vcrcapps.com/auth/login \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"email\": \"you@example.com\", \"password\": \"yourpassword\"}'\n# Response: { \"sessionToken\": \"abc123...\", \"user\": { ... } }\n```\n\nCopy the `sessionToken` value.\n\n## Claude Desktop setup\n\nEdit `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS):\n\n```json\n{\n  \"mcpServers\": {\n    \"rhythm\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@ajhochy/rhythm-mcp-server\"],\n      \"env\": {\n        \"RHYTHM_API_URL\": \"https://api.vcrcapps.com\",\n        \"RHYTHM_API_TOKEN\": \"paste-your-session-token-here\"\n      }\n    }\n  }\n}\n```\n\nRestart Claude Desktop after saving.\n\n## Claude Code setup\n\nAdd to `~/.claude/settings.json` (global) or `.claude/settings.json` (per-project):\n\n```json\n{\n  \"mcpServers\": {\n    \"rhythm\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@ajhochy/rhythm-mcp-server\"],\n      \"env\": {\n        \"RHYTHM_API_URL\": \"https://api.vcrcapps.com\",\n        \"RHYTHM_API_TOKEN\": \"paste-your-session-token-here\"\n      }\n    }\n  }\n}\n```\n\n## Verify it's working\n\nIn Claude, ask: *\"Call rhythm_ping to check the connection.\"*\n\nExpected response: Rhythm API status and the email address your token authenticates as.\n\n## Available tools (83 total)\n\nRhythm exposes 83 tools; this table lists the core and creative-platform tools.\n\n| Tool | Description |\n|------|-------------|\n| `rhythm_ping` | Verify connectivity and confirm your token is valid |\n| `rhythm_get_dashboard` | Summary snapshot of tasks, projects, rhythms, and threads — start here |\n| `rhythm_list_tasks` | List tasks with optional status/date/search filters |\n| `rhythm_create_task` | Create a task |\n| `rhythm_update_task` | Update task fields (title, notes, due date, status) |\n| `rhythm_complete_task` | Mark a task as done |\n| `rhythm_delete_task` | Permanently delete a task |\n| `rhythm_list_rhythms` | List recurring rules |\n| `rhythm_create_rhythm` | Create a recurring rule |\n| `rhythm_update_rhythm` | Update or enable/disable a rhythm |\n| `rhythm_delete_rhythm` | Delete a rhythm |\n| `rhythm_add_rhythm_step` | Add a step to an existing rhythm (v0.4.0+: uses dedicated `POST /:id/steps`) |\n| `rhythm_delete_rhythm_step` | Remove a step from a rhythm |\n| `rhythm_list_project_templates` | List project templates |\n| `rhythm_create_project_template` | Create a project template |\n| `rhythm_add_project_step` | Add a step to a template |\n| `rhythm_create_project_instance` | Instantiate a template as an active project |\n| `rhythm_list_project_instances` | List active projects with step progress |\n| `rhythm_update_project_step` | Mark a project step done or add notes |\n| `rhythm_list_message_threads` | List message threads |\n| `rhythm_create_message_thread` | Create a message thread |\n| `rhythm_send_message` | Send a message to a thread |\n| `rhythm_list_facilities` | List facilities |\n| `rhythm_create_reservation` | Reserve a facility for a time window |\n| `rhythm_list_automations` | List automation rules (optionally filter to enabled) |\n| `rhythm_get_automation` | Fetch a single automation rule by ID |\n| `rhythm_create_automation` | Create an automation rule (use catalog tools first) |\n| `rhythm_update_automation` | Update fields on an automation rule |\n| `rhythm_delete_automation` | Permanently delete an automation rule |\n| `rhythm_preview_automation` | Inspect last evaluation results / matched signal sample |\n| `rhythm_resync_automation` | Manually re-evaluate a rule against fresh signals |\n| `rhythm_list_automation_triggers` | Catalog: trigger types + configSchema for connected sources |\n| `rhythm_list_automation_actions` | Catalog: action types + configSchema |\n| `rhythm_list_automation_providers` | Catalog: provider sources connected for the user |\n| `rhythm_list_creative_capabilities` | List local creative capability install and health status |\n| `rhythm_install_creative_capability` | Start an approval-gated local creative capability install |\n| `rhythm_creative_capability_status` | Get one local creative capability's status |\n| `rhythm_verify_creative_capability` | Re-check a creative capability after install or startup |\n| `rhythm_record_design` | Record a local artifact or Canva design in Rhythm Gallery |\n| `rhythm_get_setup_readiness` | Read the informational local setup readiness summary |\n| `rhythm_verify_memory` | Record a machine verification or non-destructive deprecation |\n| `rhythm_run_external_discovery` | Run the bounded, approval-gated external discovery pass |\n\n### Automations\n\nTo create or update an automation rule, call the catalog tools first to discover\nvalid identifiers and required config shapes:\n\n1. `rhythm_list_automation_providers` — see which sources you can use (e.g. `planning_center`, `google_calendar`, `gmail`, plus `rhythm` built-ins).\n2. `rhythm_list_automation_triggers` — find a `triggerKey` matching your chosen source, and read its `configSchema` for required `triggerConfig` fields.\n3. `rhythm_list_automation_actions` — pick an `actionType` and read its `configSchema` for required `actionConfig` fields.\n\nThen call `rhythm_create_automation` with the discovered keys and configs. Use\n`rhythm_preview_automation` to inspect the last matched signal sample, and\n`rhythm_resync_automation` to manually re-evaluate against fresh signals.\n\n## Troubleshooting\n\n**`RHYTHM_API_TOKEN environment variable is not set`** — The token is missing from your MCP config. Double-check the `env` block in your settings file.\n\n**401 errors** — Token expired or invalid. Re-fetch a token from Rhythm Settings or re-run the login curl command.\n\n**Can't reach API** — Confirm `RHYTHM_API_URL` is set to `https://api.vcrcapps.com`.\n\n**`npx` fails** — Ensure Node.js 18+ is installed: `node --version`.\n","readmeFilename":"README.md","homepage":"https://github.com/ajhochy/Rhythm#readme","repository":{"type":"git","url":"git+https://github.com/ajhochy/Rhythm.git","directory":"apps/mcp_server"},"bugs":{"url":"https://github.com/ajhochy/Rhythm/issues"}}