{"_id":"@fiveohhwon/workflows-mcp","_rev":"8-7aa156539209c577513f372337995bf6","name":"@fiveohhwon/workflows-mcp","dist-tags":{"latest":"0.3.3"},"versions":{"0.1.0":{"name":"@fiveohhwon/workflows-mcp","version":"0.1.0","keywords":["mcp","model-context-protocol","workflow","automation","ai","llm"],"author":{"name":"FiveOhhWon"},"license":"MIT","_id":"@fiveohhwon/workflows-mcp@0.1.0","maintainers":[{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"}],"homepage":"https://github.com/FiveOhhWon/workflows-mcp#readme","bugs":{"url":"https://github.com/FiveOhhWon/workflows-mcp/issues"},"bin":{"workflows-mcp":"dist/index.js"},"dist":{"shasum":"f9eeab35bf5423647c4029c7371a6abcee1b9dd8","tarball":"https://registry.npmjs.org/@fiveohhwon/workflows-mcp/-/workflows-mcp-0.1.0.tgz","fileCount":34,"integrity":"sha512-Vsb2NxSxIF/wI713qfjFx7LKdnmUxj0ariC6pxo6osU3R89nfKQsZo0vMEuqGdP+zXQns+foYV2DxVjI/ZpVhw==","signatures":[{"sig":"MEYCIQD1ttUkV0mVQgQ2YWI4z658ZefzUznoKsUrwgKPopuEBwIhAN8LT60v8CyDLpHkKpZxQc5zoMQQCFWjfuq7Y46+8loF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132458},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"e0008cff0cc9cb730d386b5aa88065160808344b","scripts":{"dev":"tsx src/index.ts","test":"jest","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","typecheck":"tsc --noEmit","test:watch":"jest --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"},"repository":{"url":"git+https://github.com/FiveOhhWon/workflows-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"A Model Context Protocol (MCP) implementation for workflow management and automation.","directories":{},"_nodeVersion":"22.16.0","dependencies":{"zod":"^3.25.58","uuid":"^11.1.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","jest":"^29.7.0","ts-jest":"^29.3.4","typescript":"^5.8.3","@types/jest":"^29.5.14","@types/node":"^24.0.0","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/workflows-mcp_0.1.0_1749608591962_0.8233408888504705","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@fiveohhwon/workflows-mcp","version":"0.1.1","keywords":["mcp","model-context-protocol","workflow","automation","ai","llm"],"author":{"name":"FiveOhhWon"},"license":"MIT","_id":"@fiveohhwon/workflows-mcp@0.1.1","maintainers":[{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"}],"homepage":"https://github.com/FiveOhhWon/workflows-mcp#readme","bugs":{"url":"https://github.com/FiveOhhWon/workflows-mcp/issues"},"bin":{"workflows-mcp":"dist/index.js"},"dist":{"shasum":"92b554d6bfa0156aaa2e1310e2862dd665de474c","tarball":"https://registry.npmjs.org/@fiveohhwon/workflows-mcp/-/workflows-mcp-0.1.1.tgz","fileCount":34,"integrity":"sha512-7pQ/G9fqZxLy5GpveU00zVFoQv1K1n7+fJcJtQmK/Wng0IRQMfIClcE0jLgULJmobt4E4uA8VEEP5RPtBLVjIg==","signatures":[{"sig":"MEUCIQDnJsP9uejTO2azb0VvOoa9g/vwe6EIfk++m6heiLSv6wIgacQthG6LlJCPY9ddzznH7hJbvSFbfyn6N/98H1a1gD8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132491},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"212bb62e93da951a81c0e3e176848f778edfc2e1","scripts":{"dev":"tsx src/index.ts","test":"jest","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","typecheck":"tsc --noEmit","test:watch":"jest --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"},"repository":{"url":"git+https://github.com/FiveOhhWon/workflows-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"A Model Context Protocol (MCP) implementation for workflow management and automation.","directories":{},"_nodeVersion":"22.16.0","dependencies":{"zod":"^3.25.58","uuid":"^11.1.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","jest":"^29.7.0","ts-jest":"^29.3.4","typescript":"^5.8.3","@types/jest":"^29.5.14","@types/node":"^24.0.0","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/workflows-mcp_0.1.1_1749609302764_0.33303344645977595","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@fiveohhwon/workflows-mcp","version":"0.1.2","keywords":["mcp","model-context-protocol","workflow","automation","ai","llm"],"author":{"name":"FiveOhhWon"},"license":"MIT","_id":"@fiveohhwon/workflows-mcp@0.1.2","maintainers":[{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"}],"homepage":"https://github.com/FiveOhhWon/workflows-mcp#readme","bugs":{"url":"https://github.com/FiveOhhWon/workflows-mcp/issues"},"bin":{"workflows-mcp":"dist/index.js"},"dist":{"shasum":"3b37993107153f324052a1f69c8fc15d170db657","tarball":"https://registry.npmjs.org/@fiveohhwon/workflows-mcp/-/workflows-mcp-0.1.2.tgz","fileCount":34,"integrity":"sha512-bXdtozkZZeUU0zZtq+Kr8LBCzfN+TCAwc5RUac1tMRCfvkwAZkKTvnEI8CwFgvGpxWmFjUXzbrauVew5C36BVw==","signatures":[{"sig":"MEUCIQDhlDpotTI02TbsiRkAyg2mNqYTJmpCr5W2QJ+ft+kkmQIgSGaMLecv9E05sOFO9j04eccmg0IhQOlQI3ZnCWh+CBY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132497},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"212bb62e93da951a81c0e3e176848f778edfc2e1","scripts":{"dev":"tsx src/index.ts","test":"jest","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","typecheck":"tsc --noEmit","test:watch":"jest --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"},"repository":{"url":"git+https://github.com/FiveOhhWon/workflows-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"A Model Context Protocol (MCP) implementation for workflow management and automation.","directories":{},"_nodeVersion":"22.16.0","dependencies":{"zod":"^3.25.58","uuid":"^11.1.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","jest":"^29.7.0","ts-jest":"^29.3.4","typescript":"^5.8.3","@types/jest":"^29.5.14","@types/node":"^24.0.0","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/workflows-mcp_0.1.2_1749609568953_0.12985471991747666","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@fiveohhwon/workflows-mcp","version":"0.2.1","keywords":["mcp","model-context-protocol","workflow","automation","ai","llm"],"author":{"name":"FiveOhhWon"},"license":"MIT","_id":"@fiveohhwon/workflows-mcp@0.2.1","maintainers":[{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"}],"homepage":"https://github.com/FiveOhhWon/workflows-mcp#readme","bugs":{"url":"https://github.com/FiveOhhWon/workflows-mcp/issues"},"bin":{"workflows-mcp":"dist/index.js"},"dist":{"shasum":"494e0e84bb37875b72cfc86ee51f9f57b47e4792","tarball":"https://registry.npmjs.org/@fiveohhwon/workflows-mcp/-/workflows-mcp-0.2.1.tgz","fileCount":37,"integrity":"sha512-lG167p9pZZZWq0iU9A4rtS6Ng6bE5buaedU5CUtU9s/RLqDTXDSNGZlo87+FojeFNxdBhdLIFTdNOJmgSSBl/Q==","signatures":[{"sig":"MEUCICZs2gHpbNOUV4MSIforJ3E63aDs40tZkRBRG+wGRZtNAiEAnxsGrT8+d3/2C6NUMv9RjZBRUIjAlTRza/wQDIJxnGU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":182108},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"6bba605330963baf02053155ce1131532b978e1b","scripts":{"dev":"tsx src/index.ts","test":"jest","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","typecheck":"tsc --noEmit","test:watch":"jest --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"},"repository":{"url":"git+https://github.com/FiveOhhWon/workflows-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"A Model Context Protocol (MCP) implementation for workflow management and automation.","directories":{},"_nodeVersion":"22.16.0","dependencies":{"zod":"^3.25.58","uuid":"^11.1.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","jest":"^29.7.0","ts-jest":"^29.3.4","typescript":"^5.8.3","@types/jest":"^29.5.14","@types/node":"^24.0.0","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/workflows-mcp_0.2.1_1749616880418_0.5711782653516342","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@fiveohhwon/workflows-mcp","version":"0.3.0","keywords":["mcp","model-context-protocol","workflow","automation","ai","llm"],"author":{"name":"FiveOhhWon"},"license":"MIT","_id":"@fiveohhwon/workflows-mcp@0.3.0","maintainers":[{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"}],"homepage":"https://github.com/FiveOhhWon/workflows-mcp#readme","bugs":{"url":"https://github.com/FiveOhhWon/workflows-mcp/issues"},"bin":{"workflows-mcp":"dist/index.js"},"dist":{"shasum":"fcd053a2287ec3097af1376c36a824bc8baaafcd","tarball":"https://registry.npmjs.org/@fiveohhwon/workflows-mcp/-/workflows-mcp-0.3.0.tgz","fileCount":37,"integrity":"sha512-3n82ckjR9QxXUzQkA7pgxPQQAJCgmsee5am4EzEoIKWqkgHrYN5zYKwH+kIc+m+O7XdZONVkkb4gSlTww21WPA==","signatures":[{"sig":"MEUCIQDYrgG6sgIeFMzhbCOXlLc2v9TuAOjsDKJwWfWztOn7PQIgXeXRg0qRL/3aBhP9lky6ih/reqsc9VlkgXE12Oq/W90=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":194753},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"356b332f8bceb51245b387b39e723a8bbfe452c8","scripts":{"dev":"tsx src/index.ts","test":"jest","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","typecheck":"tsc --noEmit","test:watch":"jest --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"},"repository":{"url":"git+https://github.com/FiveOhhWon/workflows-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"A Model Context Protocol (MCP) implementation for workflow management and automation.","directories":{},"_nodeVersion":"22.16.0","dependencies":{"zod":"^3.25.58","uuid":"^11.1.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","jest":"^29.7.0","ts-jest":"^29.3.4","typescript":"^5.8.3","@types/jest":"^29.5.14","@types/node":"^24.0.0","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/workflows-mcp_0.3.0_1749618236400_0.13075755724402738","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@fiveohhwon/workflows-mcp","version":"0.3.1","keywords":["mcp","model-context-protocol","workflow","automation","ai","llm"],"author":{"name":"FiveOhhWon"},"license":"MIT","_id":"@fiveohhwon/workflows-mcp@0.3.1","maintainers":[{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"}],"homepage":"https://github.com/FiveOhhWon/workflows-mcp#readme","bugs":{"url":"https://github.com/FiveOhhWon/workflows-mcp/issues"},"bin":{"workflows-mcp":"dist/index.js"},"dist":{"shasum":"5079387c7523e206f5b437d55e89a04407eeae72","tarball":"https://registry.npmjs.org/@fiveohhwon/workflows-mcp/-/workflows-mcp-0.3.1.tgz","fileCount":38,"integrity":"sha512-0cP/TRQIcCUj1elDzQpfkB+F02NJm59zaQBQ5HMrfT/aPhMuh3/icxwcyWtE2BNqyvzgoXz//AesEqDpdQtEwA==","signatures":[{"sig":"MEUCIBoYLVUF6T6eOJKpSS3gGIw6KeuxfNxp9mgq9RDSWtkBAiEA4oFhAZOwxxfETgsD78OhIT4KABztWf91sqXPYHk/oTo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":194874},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"a48beedc81edd0825366d255ce7eb93fe17c49fc","scripts":{"dev":"tsx src/index.ts","test":"echo \"No tests yet\"","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"},"repository":{"url":"git+https://github.com/FiveOhhWon/workflows-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"A Model Context Protocol (MCP) implementation for workflow management and automation.","directories":{},"_nodeVersion":"22.16.0","dependencies":{"zod":"^3.25.58","uuid":"^11.1.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","typescript":"^5.8.3","@types/node":"^24.0.0","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/workflows-mcp_0.3.1_1749675600020_0.19992194724504042","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@fiveohhwon/workflows-mcp","version":"0.3.2","keywords":["mcp","model-context-protocol","workflow","automation","ai","llm"],"author":{"name":"FiveOhhWon"},"license":"MIT","_id":"@fiveohhwon/workflows-mcp@0.3.2","maintainers":[{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"}],"homepage":"https://github.com/FiveOhhWon/workflows-mcp#readme","bugs":{"url":"https://github.com/FiveOhhWon/workflows-mcp/issues"},"bin":{"workflows-mcp":"dist/index.js"},"dist":{"shasum":"5ee8d5c6ffb65332cbc320e7c8a8319736393eeb","tarball":"https://registry.npmjs.org/@fiveohhwon/workflows-mcp/-/workflows-mcp-0.3.2.tgz","fileCount":38,"integrity":"sha512-i317g6njxOTMp8fQ15eM4sTUIoHho/XN7gV4Mkow1YZdyXxNExt0jWpmSu1sgfTQbGL00wjbrLyMLNzpNfqC5w==","signatures":[{"sig":"MEUCIQDx9hbd9T2bfaj889EVL4OQg9/hMEk2RquaSmSiZEeq7AIgRXvKF5C2pWHaxa0wi7o+3HrK3Q/JX5VVYQ1mz8xafD0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":195410},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","gitHead":"78acb387f590b45fc64972c3ff04942dedec92d4","scripts":{"dev":"tsx src/index.ts","test":"echo \"No tests yet\"","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"},"repository":{"url":"git+https://github.com/FiveOhhWon/workflows-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"A Model Context Protocol (MCP) implementation for workflow management and automation.","directories":{},"_nodeVersion":"22.16.0","dependencies":{"zod":"^3.25.58","uuid":"^11.1.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","typescript":"^5.8.3","@types/node":"^24.0.0","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/workflows-mcp_0.3.2_1749685092680_0.07027357159951553","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@fiveohhwon/workflows-mcp","version":"0.3.3","description":"A Model Context Protocol (MCP) implementation for workflow management and automation.","type":"module","main":"dist/index.js","types":"dist/index.d.ts","bin":{"workflows-mcp":"dist/index.js"},"scripts":{"build":"tsc","dev":"tsx src/index.ts","start":"node dist/index.js","test":"echo \"No tests yet\"","clean":"rm -rf dist","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/FiveOhhWon/workflows-mcp.git"},"keywords":["mcp","model-context-protocol","workflow","automation","ai","llm"],"author":{"name":"FiveOhhWon"},"license":"MIT","bugs":{"url":"https://github.com/FiveOhhWon/workflows-mcp/issues"},"homepage":"https://github.com/FiveOhhWon/workflows-mcp#readme","publishConfig":{"access":"public"},"devDependencies":{"@types/node":"^24.0.0","@types/uuid":"^10.0.0","tsx":"^4.19.4","typescript":"^5.8.3"},"dependencies":{"@modelcontextprotocol/sdk":"^1.12.1","uuid":"^11.1.0","zod":"^3.25.58"},"_id":"@fiveohhwon/workflows-mcp@0.3.3","gitHead":"8fdc46996de1da58972859af5d51e7d9fbf592b5","_nodeVersion":"22.16.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-mO3RoQXuG69qUkazdzHGt22VvF8UXOVB9gJTWNHBQF1vpcRLHzEYv21o0PIwiah3ulU8azRyWRZB5hbhk1iowg==","shasum":"e6aa45596782819dc19e550ce24dc251b153a79a","tarball":"https://registry.npmjs.org/@fiveohhwon/workflows-mcp/-/workflows-mcp-0.3.3.tgz","fileCount":38,"unpackedSize":222162,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBRDlrKFcSueRqiVMK7zCmBOHyC3zT6XfeAeFmJCUMJIAiAuRkTyTYNp1Z3yUzMTO02nRigMlIHiADccwM9gba79+g=="}]},"_npmUser":{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"},"directories":{},"maintainers":[{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/workflows-mcp_0.3.3_1749699569183_0.05012099583535612"},"_hasShrinkwrap":false}},"time":{"created":"2025-06-11T02:23:11.849Z","modified":"2025-06-12T03:39:29.551Z","0.1.0":"2025-06-11T02:23:12.178Z","0.1.1":"2025-06-11T02:35:03.013Z","0.1.2":"2025-06-11T02:39:29.138Z","0.2.1":"2025-06-11T04:41:20.605Z","0.3.0":"2025-06-11T05:03:56.601Z","0.3.1":"2025-06-11T21:00:00.209Z","0.3.2":"2025-06-11T23:38:12.872Z","0.3.3":"2025-06-12T03:39:29.385Z"},"bugs":{"url":"https://github.com/FiveOhhWon/workflows-mcp/issues"},"author":{"name":"FiveOhhWon"},"license":"MIT","homepage":"https://github.com/FiveOhhWon/workflows-mcp#readme","keywords":["mcp","model-context-protocol","workflow","automation","ai","llm"],"repository":{"type":"git","url":"git+https://github.com/FiveOhhWon/workflows-mcp.git"},"description":"A Model Context Protocol (MCP) implementation for workflow management and automation.","maintainers":[{"name":"fiveohhwon","email":"fiveohhwon@gmail.com"}],"readme":"# workflows-mcp\n\n> 🤖 **Co-authored with [Claude Code](https://claude.ai/referral/uralRLy1tw)** - Building workflows so LLMs can finally follow a recipe without burning the kitchen! 🔥\n\nA powerful Model Context Protocol (MCP) implementation that enables LLMs to execute complex, multi-step workflows with cognitive actions and tool integrations.\n\n## 🌟 Overview\n\nworkflows-mcp transforms how AI assistants handle complex tasks by providing structured, reusable workflows that combine tool usage with cognitive reasoning. Instead of ad-hoc task execution, workflows provide deterministic, reproducible paths through multi-step processes.\n\n## 🚀 Key Features\n\n- **📋 Structured Workflows**: Define clear, step-by-step instructions for LLMs\n- **🧠 Cognitive Actions**: Beyond tool calls - analyze, consider, validate, and reason\n- **🔀 Advanced Control Flow**: Branching, loops, parallel execution\n- **💾 State Management**: Track variables and results across workflow steps\n- **🔍 Comprehensive Validation**: Ensure workflow integrity before execution\n- **📊 Execution Tracking**: Monitor success rates and performance metrics\n- **🛡️ Type-Safe**: Full TypeScript support with Zod validation\n- **🎯 Dependency Management**: Control variable visibility to reduce token usage\n- **⚡ Performance Optimized**: Differential updates and progressive step loading\n\n## 📦 Installation\n\n### Using npx (recommended)\n\n```bash\nnpx @fiveohhwon/workflows-mcp\n```\n\n### From npm\n\n```bash\nnpm install -g @fiveohhwon/workflows-mcp\n```\n\n### From Source\n\n```bash\ngit clone https://github.com/FiveOhhWon/workflows-mcp.git\ncd workflows-mcp\nnpm install\nnpm run build\n```\n\n## 🏃 Configuration\n\n### Claude Desktop\n\nAdd this configuration to your Claude Desktop config file:\n\n**macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`  \n**Windows**: `%APPDATA%\\Claude\\claude_desktop_config.json`\n\n#### Using npx (recommended):\n\n```json\n{\n  \"mcpServers\": {\n    \"workflows\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@fiveohhwon/workflows-mcp\"]\n    }\n  }\n}\n```\n\n#### Using global install:\n\n```json\n{\n  \"mcpServers\": {\n    \"workflows\": {\n      \"command\": \"workflows-mcp\"\n    }\n  }\n}\n```\n\n#### Using local build:\n\n```json\n{\n  \"mcpServers\": {\n    \"workflows\": {\n      \"command\": \"node\",\n      \"args\": [\"/absolute/path/to/workflows-mcp/dist/index.js\"]\n    }\n  }\n}\n```\n\n### Development Mode\n\nFor development with hot reload:\n\n```bash\nnpm run dev\n```\n\n## 📖 Workflow Structure\n\nWorkflows are JSON documents that define a series of steps for an LLM to execute:\n\n```json\n{\n  \"name\": \"Code Review Workflow\",\n  \"description\": \"Automated code review with actionable feedback\",\n  \"goal\": \"Perform comprehensive code review\",\n  \"version\": \"1.0.0\",\n  \"inputs\": {\n    \"file_path\": {\n      \"type\": \"string\",\n      \"description\": \"Path to code file\",\n      \"required\": true\n    }\n  },\n  \"steps\": [\n    {\n      \"id\": 1,\n      \"action\": \"tool_call\",\n      \"tool_name\": \"read_file\",\n      \"parameters\": {\"path\": \"{{file_path}}\"},\n      \"save_result_as\": \"code_content\"\n    },\n    {\n      \"id\": 2,\n      \"action\": \"analyze\",\n      \"description\": \"Analyze code quality\",\n      \"input_from\": [\"code_content\"],\n      \"save_result_as\": \"analysis\"\n    }\n  ]\n}\n```\n\n## 🎯 Action Types\n\n### Tool Actions\n- **tool_call**: Execute a specific tool with parameters\n\n### Cognitive Actions\n- **analyze**: Examine data and identify patterns\n- **consider**: Evaluate options before deciding\n- **research**: Gather information from sources\n- **validate**: Check conditions or data integrity\n- **summarize**: Condense information to key points\n- **decide**: Make choices based on criteria\n- **extract**: Pull specific information from content\n- **compose**: Generate new content\n\n### Control Flow\n- **branch**: Conditional execution paths\n- **loop**: Iterate over items or conditions\n- **parallel**: Execute multiple steps simultaneously\n- **wait_for_input**: Pause for user input\n\n### Utility Actions\n- **transform**: Convert data formats\n- **checkpoint**: Save workflow state\n- **notify**: Send updates\n- **assert**: Ensure conditions are met\n- **retry**: Attempt previous step again\n\n## 🛠️ Available Tools\n\n### Workflow Management\n\n1. **create_workflow** - Create a new workflow\n   ```json\n   {\n     \"workflow\": {\n       \"name\": \"My Workflow\",\n       \"description\": \"What it does\",\n       \"goal\": \"Desired outcome\",\n       \"steps\": [...]\n     }\n   }\n   ```\n\n2. **list_workflows** - List all workflows with filtering\n   ```json\n   {\n     \"filter\": {\n       \"tags\": [\"automation\"],\n       \"name_contains\": \"review\"\n     },\n     \"sort\": {\n       \"field\": \"created_at\",\n       \"order\": \"desc\"\n     }\n   }\n   ```\n\n3. **get_workflow** - Retrieve a specific workflow\n   ```json\n   {\n     \"id\": \"workflow-uuid\"\n   }\n   ```\n\n4. **update_workflow** - Modify existing workflow\n   ```json\n   {\n     \"id\": \"workflow-uuid\",\n     \"updates\": {\n       \"description\": \"Updated description\"\n     },\n     \"increment_version\": true\n   }\n   ```\n\n5. **delete_workflow** - Soft delete (recoverable)\n   ```json\n   {\n     \"id\": \"workflow-uuid\"\n   }\n   ```\n\n6. **start_workflow** - Start a workflow execution session\n   ```json\n   {\n     \"id\": \"workflow-uuid\",\n     \"inputs\": {\n       \"param1\": \"value1\"\n     }\n   }\n   ```\n   Returns execution instructions for the first step and an execution_id.\n\n7. **run_workflow_step** - Execute the next step in the workflow\n   ```json\n   {\n     \"execution_id\": \"execution-uuid\",\n     \"step_result\": \"result from previous step\",\n     \"next_step_needed\": true\n   }\n   ```\n   Call this after completing each step to proceed through the workflow.\n\n8. **get_workflow_versions** - List all available versions of a workflow\n   ```json\n   {\n     \"workflow_id\": \"workflow-uuid\"\n   }\n   ```\n   Returns list of all saved versions for version history tracking.\n\n9. **rollback_workflow** - Rollback a workflow to a previous version\n   ```json\n   {\n     \"workflow_id\": \"workflow-uuid\",\n     \"target_version\": \"1.0.0\",\n     \"reason\": \"Reverting breaking changes\"\n   }\n   ```\n   Restores a previous version as the active workflow.\n\n## 🔄 Step-by-Step Execution\n\nThe workflow system supports interactive, step-by-step execution similar to the sequential thinking tool:\n\n1. **Start a workflow** with `start_workflow` - returns the first step instructions\n2. **Execute the step** following the provided instructions  \n3. **Continue to next step** with `run_workflow_step`, passing:\n   - The `execution_id` from start_workflow\n   - Any `step_result` from the current step\n   - `next_step_needed: true` to continue (or false to end early)\n4. **Repeat** until the workflow completes\n\nEach step provides:\n- Clear instructions for what to do\n- Current variable state\n- Expected output format\n- Next step guidance\n\n### Template Variables\n\nThe workflow system supports template variable substitution using `{{variable}}` syntax:\n\n- **In parameters**: `\"path\": \"output_{{format}}.txt\"` → `\"path\": \"output_csv.txt\"`\n- **In descriptions**: `\"Processing {{count}} records\"` → `\"Processing 100 records\"`\n- **In prompts**: `\"Enter value for {{field}}\"` → `\"Enter value for email\"`\n- **In transformations**: Variables are automatically substituted\n\nTemplate variables are resolved from the current workflow session variables, including:\n- Initial inputs provided to `start_workflow`\n- Results saved from previous steps via `save_result_as`\n- Any variables set during workflow execution\n\n## 🎯 Dependency Management & Performance Optimization\n\nThe workflow system includes advanced features to minimize token usage and improve performance for complex workflows:\n\n### Dependency-Based Variable Filtering\n\nControl which variables are visible to each step to dramatically reduce context size:\n\n```json\n{\n  \"name\": \"Optimized Workflow\",\n  \"strict_dependencies\": true,  // Enable strict mode\n  \"steps\": [\n    {\n      \"id\": 1,\n      \"action\": \"tool_call\",\n      \"tool_name\": \"read_large_file\",\n      \"save_result_as\": \"large_data\"\n    },\n    {\n      \"id\": 2,\n      \"action\": \"analyze\",\n      \"input_from\": [\"large_data\"],\n      \"save_result_as\": \"summary\",\n      \"dependencies\": []  // In strict mode, sees NO previous variables\n    },\n    {\n      \"id\": 3,\n      \"action\": \"compose\",\n      \"dependencies\": [2],  // Only sees 'summary' from step 2\n      \"save_result_as\": \"report\"\n    },\n    {\n      \"id\": 4,\n      \"action\": \"validate\",\n      \"show_all_variables\": true,  // Override to see everything\n      \"save_result_as\": \"validation\"\n    }\n  ]\n}\n```\n\n### Workflow-Level Settings\n\n- **`strict_dependencies`** (boolean, default: false)\n  - `false`: Steps without dependencies see all variables (backward compatible)\n  - `true`: Steps without dependencies see NO variables (must explicitly declare)\n\n### Step-Level Settings\n\n- **`dependencies`** (array of step IDs)\n  - Lists which previous steps' outputs this step needs\n  - Step only sees outputs from listed steps plus workflow inputs\n  - Empty array in strict mode means NO variables visible\n\n- **`show_all_variables`** (boolean)\n  - Override for specific steps that need full visibility\n  - Useful for validation or debugging steps\n\n### Performance Features\n\n1. **Differential State Updates**: Only shows variables that changed\n   - `+ variable_name`: Newly added variables\n   - `~ variable_name`: Modified variables\n   - Unchanged variables are not displayed\n\n2. **Progressive Step Loading**: Only shows next 3 upcoming steps\n   - Reduces context for long workflows\n   - Shows \"... and X more steps\" for remaining\n\n3. **Selective Variable Display**: Based on dependencies\n   - Dramatically reduces tokens for workflows with verbose outputs\n   - Maintains full state internally for branching/retry\n\n### Best Practices for Token Optimization\n\n1. **Use `strict_dependencies: true`** for workflows with large intermediate outputs\n2. **Explicitly declare dependencies** to minimize variable visibility\n3. **Place verbose outputs early** in the workflow and filter them out in later steps\n4. **Use meaningful variable names** to make dependencies clear\n5. **Group related steps** to minimize cross-dependencies\n\n### Example: Data Processing with Filtering\n\n```json\n{\n  \"name\": \"Large Data Processing\",\n  \"strict_dependencies\": true,\n  \"inputs\": {\n    \"file_path\": { \"type\": \"string\", \"required\": true }\n  },\n  \"steps\": [\n    {\n      \"id\": 1,\n      \"action\": \"tool_call\",\n      \"tool_name\": \"read_csv\",\n      \"parameters\": { \"path\": \"{{file_path}}\" },\n      \"save_result_as\": \"raw_data\"\n    },\n    {\n      \"id\": 2,\n      \"action\": \"transform\",\n      \"transformation\": \"Extract key metrics only\",\n      \"dependencies\": [1],  // Only sees raw_data\n      \"save_result_as\": \"metrics\"\n    },\n    {\n      \"id\": 3,\n      \"action\": \"analyze\",\n      \"criteria\": \"Identify trends and anomalies\",\n      \"dependencies\": [2],  // Only sees metrics, not raw_data\n      \"save_result_as\": \"analysis\"\n    },\n    {\n      \"id\": 4,\n      \"action\": \"compose\",\n      \"criteria\": \"Create executive summary\",\n      \"dependencies\": [2, 3],  // Sees metrics and analysis only\n      \"save_result_as\": \"report\"\n    }\n  ]\n}\n```\n\nIn this example:\n- Step 2 processes large raw data but only outputs key metrics\n- Step 3 analyzes metrics without seeing the large raw data\n- Step 4 creates a report from metrics and analysis only\n- Token usage is minimized by filtering out verbose intermediate data\n\n## 📚 Example Workflows\n\n### Code Review Workflow\nAnalyzes code quality, identifies issues, and provides improvement suggestions.\n- Sample data: `/workflows/examples/sample-data/sample-code-for-review.js`\n\n### Data Processing Pipeline\nETL workflow with validation, quality checks, and conditional branching.\n- Sample data: `/workflows/examples/sample-data/sample-data.csv`\n\n### Research Assistant\nGathers information, validates sources, and produces comprehensive reports.\n\n### Simple File Processor\nBasic example showing file operations, branching, and transformations.\n\nSee the `/workflows/examples` directory for complete workflow definitions.\n\n## 📁 Manual Workflow Import\n\nYou can manually add workflows by placing JSON files in the imports directory:\n\n1. Navigate to `~/.workflows-mcp/imports/`\n2. Place your workflow JSON files there (any filename ending in `.json`)\n3. Start or restart the MCP server\n4. The workflows will be automatically imported with:\n   - A new UUID assigned if missing or invalid\n   - Metadata created if not present\n   - Original files moved to `imports/processed/` after successful import\n\nExample workflow file structure:\n```json\n{\n  \"name\": \"My Custom Workflow\",\n  \"description\": \"A manually created workflow\",\n  \"goal\": \"Accomplish something specific\",\n  \"version\": \"1.0.0\",\n  \"steps\": [\n    {\n      \"id\": 1,\n      \"action\": \"tool_call\",\n      \"description\": \"First step\",\n      \"tool_name\": \"example_tool\",\n      \"parameters\": {}\n    }\n  ]\n}\n```\n\n## 🏗️ Architecture\n\n```\nworkflows-mcp/\n├── src/\n│   ├── types/          # TypeScript interfaces and schemas\n│   ├── services/       # Core services (storage, validation)\n│   ├── utils/          # Utility functions\n│   └── index.ts        # MCP server implementation\n├── workflows/\n│   └── examples/       # Example workflows\n│       └── sample-data/  # Sample data files for testing\n└── tests/              # Test suite\n```\n\n## 🧪 Development\n\n```bash\n# Install dependencies\nnpm install\n\n# Run in development mode\nnpm run dev\n\n# Build for production\nnpm run build\n\n# Run tests\nnpm test\n\n# Type checking\nnpm run typecheck\n```\n\n## 📝 Changelog\n\n### v0.3.3 (Latest)\n- ⚡ Added dependency-based variable filtering for token optimization\n- ✨ Added `strict_dependencies` workflow flag for explicit variable control\n- ✨ Added `dependencies` array to steps for selective variable visibility\n- ✨ Added `show_all_variables` step override for full visibility when needed\n- 🎯 Implemented differential state updates (shows only changed variables)\n- 📊 Added progressive step loading (shows only next 3 steps)\n- 🐛 Fixed UUID validation error in update_workflow tool\n- 📝 Added explicit instructions to prevent commentary during workflow execution\n\n### v0.3.0\n- ✨ Added workflow versioning with automatic version history\n- ✨ Added `get_workflow_versions` tool to list all versions\n- ✨ Added `rollback_workflow` tool to restore previous versions\n- 📁 Version history stored in `~/.workflows-mcp/versions/`\n\n### v0.2.1\n- ✨ Added template variable resolution (`{{variable}}` syntax)\n- ✨ Fixed branching logic to properly handle conditional steps\n- ✨ Enhanced create_workflow tool with comprehensive embedded documentation\n- 🐛 Fixed ES module import issues\n- 📁 Improved file organization with sample-data folder\n\n### v0.2.0\n- ✨ Implemented step-by-step workflow execution\n- ✨ Added `start_workflow` and `run_workflow_step` tools\n- ✨ Session management for workflow state\n- 🔄 Replaced `run_workflow` with interactive execution\n\n### v0.1.0\n- 🎉 Initial release\n- ✨ Core workflow engine\n- ✨ 16 action types\n- ✨ Import/export functionality\n- ✨ Example workflows\n\n## 🔮 Roadmap\n\n- [x] Core workflow engine\n- [x] Basic action types\n- [x] Workflow validation\n- [x] Example workflows\n- [x] Step-by-step execution\n- [x] Variable interpolation\n- [x] Branching logic\n- [x] Import/export system\n- [ ] Advanced error handling and retry logic\n- [ ] Loop and parallel execution\n- [ ] Workflow marketplace\n- [ ] Visual workflow builder\n- [ ] Performance optimizations\n- [x] Workflow versioning and rollback\n\n## 🤝 Contributing\n\nWe welcome contributions! Please see our [Contributing Guidelines](CONTRIBUTING.md) for details.\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🙏 Acknowledgments\n\nBuilt on the [Model Context Protocol](https://github.com/anthropics/model-context-protocol) specification by Anthropic.","readmeFilename":"README.md"}