{"_id":"@elvatis_com/elvatis-mcp","_rev":"33-3308f4148a16ea0acc19336f407a8d81","name":"@elvatis_com/elvatis-mcp","dist-tags":{"latest":"1.3.0"},"versions":{"0.2.0":{"name":"@elvatis_com/elvatis-mcp","version":"0.2.0","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@0.2.0","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"8e9f7b89895175c3c9d78dd02cbae3c375d4e91d","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-0.2.0.tgz","fileCount":60,"integrity":"sha512-ivLjL4oWL53EzUPgFnyrKCh+3iZDjxsbkUg1385gE4XhsVJ12dQqpqHnyhNLDd5mJEc3fhQRQMhBw3X8h5Vkvg==","signatures":[{"sig":"MEUCIDIlvjbfgq3QKdVbqGGaybx5ngaas94nAjhYpqyuJ0ybAiEArQ8/Y3oCj2GT1z89Uaf5kmODeOngdRAySZ2AYwFFKic=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":189387},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"5b0cd5e9f829c65d87af465869b96b7697672938","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"18.20.8","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_0.2.0_1774969386898_0.8034101518622703","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@elvatis_com/elvatis-mcp","version":"0.3.0","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@0.3.0","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"ee81167aa7b500ee2804674f462207fb9ffe63c9","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-0.3.0.tgz","fileCount":80,"integrity":"sha512-7/mANHhK9T/1aOCcoInfwxNi8e0TKKe6//0OKvumYAjY2tl0UP0DGvAIgB72oU7V8qzdvIFfnsvfMzSWgDTHZw==","signatures":[{"sig":"MEUCIAwqOQnMExg2sO09IQ9BRB95ZSv9h9ZAaw+p37AfF2bkAiEA/JrpETT99naLrpLzGJXdFulso1+grQyvi56FaqRBOuM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":238879},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"c01672cd6263cae5f57f62abe28bc797f47d6298","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"18.20.8","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_0.3.0_1774970331877_0.07776387636109705","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@elvatis_com/elvatis-mcp","version":"0.4.0","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@0.4.0","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"04c3428fb0de2235aee921ab90ce17d768fb28a5","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-0.4.0.tgz","fileCount":88,"integrity":"sha512-coSufJS2b7AxKcxLvaOVqeJFUpRmVivyxPJLRSEVV5qEP3oP2V1rz8YSuOoqDtfOKK5477UKG86qK5gxXeTb1w==","signatures":[{"sig":"MEQCICI27Am0O/ylxypDCy7BY8QEohnUKHfJN0/mi+SKkqJ1AiA7hKS0OXCBRKEk1YaUJJT3T3y1E99qRJDyf8ddMc0kag==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":270655},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"a1902ec2211cc3c3bcaaf9c11c52c7de8b16539c","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"18.20.8","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_0.4.0_1774970971709_0.30409416003766476","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@elvatis_com/elvatis-mcp","version":"0.4.1","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@0.4.1","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"2f66bd86cfd828e65600ac790ab9df33b3dcd081","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-0.4.1.tgz","fileCount":88,"integrity":"sha512-PeMGs73N9c2D0KtUKpyuBhlXou/65ZbWS8Y82/3EjDDlKI2HIEpbwycEhTFeawQ9j9cTMBYrb1x6uogPjxL9Zg==","signatures":[{"sig":"MEYCIQCXZQwN4MbfK0Lt0uLKzF1NAHpXEpMqRIh3j0Q6THbxuAIhAOGyRf2YGTBU2rInyuzZk+c3E1ttnsFSls+7Gv2OIVFZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":270818},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"5c0433ac1e492831acae7811088bb9f55cc08929","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_0.4.1_1774971306222_0.2547729880176104","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@elvatis_com/elvatis-mcp","version":"0.5.0","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@0.5.0","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"77dbd608210dff511edd0cfed9ccd03eef205399","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-0.5.0.tgz","fileCount":96,"integrity":"sha512-WDcLWTNmOutt3SL+yM7/MQyi8cFLfthd5b5iDKHqDIYnqAc0Uj4OaG9I3Td0E3tyY5yqUxhpEKhipFUf5dAmDw==","signatures":[{"sig":"MEUCIQDCluZehcif9472czNmBiUVQX503eeL2F8b8MhB0ly4iQIgRxKzpxZsehPnVS9efLwyLsE85/rsEqf2iSuqfrQDs2I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":301661},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"5614d91d3222b73398051020d07f947cc4f03373","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_0.5.0_1774971891711_0.5458171192477024","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@elvatis_com/elvatis-mcp","version":"0.5.1","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@0.5.1","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"b340cfc2d9cb1fd958c87b03ed33c24ae81cb721","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-0.5.1.tgz","fileCount":96,"integrity":"sha512-SQZNbjrKq06h+8uMZy84kulgxg3JnFBSbymwxQVRbmZjIkExiRInKdNqw1Gd2eBu9l+FNzJoqSfT7p0+owTFFA==","signatures":[{"sig":"MEUCIQDdi8uEG3YIY8Jx0ujONKsZp4gpCxrqWDYP0CCDtRCdigIgO/v+A5affQkJmkJHLtq9Fv8HxtEbJsnFrzkQ2cOOiWI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":301661},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"5653323b5b9345d778ceb549ab1797852fe42dec","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_0.5.1_1774972342336_0.19730483137957577","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@elvatis_com/elvatis-mcp","version":"0.6.0","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@0.6.0","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"3f4e9d905fe6bf2db762859768760a4441a3fce1","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-0.6.0.tgz","fileCount":100,"integrity":"sha512-dQl9E+nNmyDYV3FYTjcaqf1WstK3JVvbgTwaR6hXTdLutkPp8Q9eaT428PbkJils2Gu688pbutKssMOkgv0EYg==","signatures":[{"sig":"MEUCIBivBccIA2deu5yZEdRAvB5tkGB4wnfOD6TtqqhmxEpeAiEAhM7GXt0Afzc0eJZVY1kMm/ScuIxp9HbuwLRkzQWa4+s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":313108},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"b7a2ab4cdb839dfd2e117fc359222a693e4f6413","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_0.6.0_1774974431947_0.11633418602645196","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@elvatis_com/elvatis-mcp","version":"0.6.1","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@0.6.1","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"bcca0cb379185dc939bfba531ff93f60e6dd61bf","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-0.6.1.tgz","fileCount":100,"integrity":"sha512-SJU7yXAdmkxiQv56/08ryvMtAkgfafjdVVhQr3EjE4wF9MNCVe5Nm0D+pAA4azfN0Dv6g9QgDHwZIJ+8bT5caA==","signatures":[{"sig":"MEYCIQC4P4jHhKahDD9Pdh9GJbz//oTmgtpe1yMhpNdw5qw1dQIhAI0pV4OUufP75fYQlrK7rS8pe3eyJYkVN3tTRZzsJ3bt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":313761},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"e1af88a19a897549e38d328052f9af87bd78c9ad","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_0.6.1_1774975009498_0.12654141133970698","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"@elvatis_com/elvatis-mcp","version":"0.6.2","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@0.6.2","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"5e5130880bb2466075df89ca875908a3765c14fc","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-0.6.2.tgz","fileCount":100,"integrity":"sha512-ke7+l9wrMJCNzSnvQX0Y5ksaypyqBFR/r2fQpVrSXpZin/g5fe6qJvxbPLlYLNjisUwgcMTJgiqtwnkvSu4HDw==","signatures":[{"sig":"MEYCIQDnp/JIHz0gNV4MR4XjrvpnS4Gep1RUpBsg/MgIzlNmnQIhANPo364kQptI9Xxrj47wdCJ3MdUsoT577NhVleiDhSKW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":316735},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"6799ae17a614c6257caf27bc2e1947550805036b","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_0.6.2_1774977848487_0.06774775999624705","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@elvatis_com/elvatis-mcp","version":"0.7.0","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@0.7.0","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"8a734fa4eb69f1ef4f06815a2a7cebe5a3d5d35d","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-0.7.0.tgz","fileCount":100,"integrity":"sha512-3itV7QnZ+oLXimBilB9ZPcZHFsArJPVEz9PWnfa/GyCTK6n+qrqNNZEKL+Bj/c38bTOBSUThGErjQcddzPIR9A==","signatures":[{"sig":"MEUCIQCHtYs/Adf/An31FklNMgjFbpLjHcmc177N6zkwcAkZLgIgaoZcAic62N+LTJmAtVo0/T0/sZhpkVAwE72xqEd7WzI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":315835},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"6da5e1c7f3d9a71ae49f6b417e6937ecc7572a32","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_0.7.0_1774984415703_0.5256270179326021","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"@elvatis_com/elvatis-mcp","version":"0.7.1","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@0.7.1","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"bc67f8d4a0e6a163c8da042da3f0024a7731b6b2","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-0.7.1.tgz","fileCount":100,"integrity":"sha512-g14+3HGtIxLFf2Mx2TglOvbGVGfwxOCuTJhk30K/KhIgU9+n65UVSHiPcARIxXKT4WX0F0FwoDsLgUoohQaWbg==","signatures":[{"sig":"MEUCIAN2+Zp2lB2V4eXeZu/n4eq8byKOuAIEHKRiXZIvlcr9AiEA14M3iEH03vuXNCOsozEB1iN5OqBA27ZMBVvQmPi7liY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":321414},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"6a3e4e0336facab53e6b192a121aa54bb590d8ff","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_0.7.1_1774986728626_0.549247491729689","host":"s3://npm-registry-packages-npm-production"}},"0.7.2":{"name":"@elvatis_com/elvatis-mcp","version":"0.7.2","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@0.7.2","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"8bd0a9093b7fac30657d2d2a1b64f1ab40862e85","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-0.7.2.tgz","fileCount":100,"integrity":"sha512-/TKWh8YuW6VAPpVPjcTNdDqUEDYar3rqeqiSuYstJfyR3zEc6hrCS16B3KhhrAj+cMmxEn4Thz/+zDX771+5hg==","signatures":[{"sig":"MEYCIQC3B2mBXPNbYyMXvQQrIQRmRVsP9M7QzN6eV2n70LzYwQIhAKAVaiCTwmhLrYvRi3wCmJwOpa2GugZNRBxyXm5VAQ5Q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":321401},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"16fbd0e7d548eb40cd2bad17ec68dc6c67d8d852","scripts":{"dev":"tsc --watch","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_0.7.2_1774987852015_0.9894300698395073","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@elvatis_com/elvatis-mcp","version":"0.8.0","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@0.8.0","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"444b9697c5e631e1da274d47e21392fe1e9b2c8c","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-0.8.0.tgz","fileCount":100,"integrity":"sha512-Vqcnk4hpI9VZBOPMIF2A1PJFlQf4zn6Q60V6txNvr9eStH3Yq7dj7jPJ5m3u3wz558x5/AOxmi6kj0x+wT7iMw==","signatures":[{"sig":"MEUCIQCSnIEjXrf71nOY/8fT0VVuYKI06afbM1uX2rWQkCBl7AIgd7bz946MQuGe8z8oyD8OV2eW6Bdazm9Xews2duPFhnA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":327870},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"775299cf5524a6394339183a2f1b60e7e7691f71","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_0.8.0_1774989764471_0.7646099907089583","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@elvatis_com/elvatis-mcp","version":"0.9.0","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@0.9.0","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"9089425002d5b586f1fac8cd5ab4e8999cdb10ab","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-0.9.0.tgz","fileCount":100,"integrity":"sha512-zodSJE5fagi1DZaaQaDtrd3UaWWJNRLLJap1KG/OpcJRy2qnRi1M1m0MuIwk/sh2jfHYupWHs5RGAfAHlmX+lQ==","signatures":[{"sig":"MEUCIEuO2XcqcYxeT9ymytuwxV0w22QCfHZ1aS89cBGy+m5RAiEA5PUEzI3j4AH5JlrSuVPRXJIoOvmpMdggIe/lSSYO1hk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335699},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"d0d29008d9479999324a1e9dc60a844cf42c263b","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_0.9.0_1774994182363_0.14765194430088258","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@elvatis_com/elvatis-mcp","version":"1.0.0","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.0.0","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"0c849fbd394f57a7d839e74dee43e6ff862fbc14","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.0.0.tgz","fileCount":108,"integrity":"sha512-PbVbeZX5vjaSEaYO0Eb3vpDNBg7ey3Inpn54NnfYP4ZprGRSBJ3p8bZhXsmDj9OwemwY+/ndT1gHjgWTVUzrKg==","signatures":[{"sig":"MEYCIQCOn6Pw3bm2ZSNRCfpGH0TRLVkz1VMqb11YLk6zDDKTgAIhAOfYEjNBjXj8g+EuryiGDAXltLTDlo+B+UeMKERhae+T","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":383905},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"58962f0cdaa5624d86c100e504f508a10ec0ad94","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.0.0_1774995049694_0.33645593647185645","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@elvatis_com/elvatis-mcp","version":"1.0.1","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.0.1","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"dffc4f323e21dd8cc2486eb67d7a1b66a8b1bc28","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.0.1.tgz","fileCount":108,"integrity":"sha512-hLHMgc+w5WbEu5OaoRRiKKdv9T81CQF3j07NNfPUVrkP/BQvVonV9Gh7zVXmN+qvc/+Efg5B2s1pb5/4SdNepg==","signatures":[{"sig":"MEUCIFFBc4L362Exyxj/gREyuoqF4qkRpW5Bq2OfDDmLxixjAiEA0i6liPP/mKaJ4IlcJnLBl+P5RfUgjEzpK5BgbIdwSGY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":385472},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"a1c974291e1c8b26a8f08ebfcb09b68d03bbaee2","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.0.1_1775028996632_0.6601806528322123","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@elvatis_com/elvatis-mcp","version":"1.0.2","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.0.2","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"2a017e4ded361c5c1c0226ba988600477bdc2aa8","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.0.2.tgz","fileCount":108,"integrity":"sha512-qyVDpETrED9D3BKqJIvLrDBl/aBlv0pA8Iie7lajCqlT54HAsxVLkiEqtGxaRmHKG0AHyxmEvnBY57/o2gLLPw==","signatures":[{"sig":"MEQCIH+UrL3HhNlISmkrOHGQWobQRGeoHti28QR8F5lDmW52AiAej2F912z8Ex0n31IJLuMPGlH5Xb6YDgGd2sZjG54vhQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":385861},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"765a02f89194c613c4a6c02a7009bd6f23651c93","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.0.2_1775029218261_0.9845220635536112","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@elvatis_com/elvatis-mcp","version":"1.0.3","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.0.3","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"935de3bfbbcccffa615d116a7604237591eac290","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.0.3.tgz","fileCount":108,"integrity":"sha512-S+cNrme1KNXKVtDKz4UIOT6bSHEtqCcZtPx7ATregEBGbrZ9NjqkXfKQc8KzNOBFXojw4g5w3bOF8OWlOYricA==","signatures":[{"sig":"MEQCIDlNKuZ3+ihGQR3YDpVXYIRlLTBsOGEAqBNKIDoNDQMAAiAykL7fbRrgBppeYE/D2iSfasSk+ybHGuzz4565YqLvCQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":386759},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"08f12abf3bfd91fecd2b4c4a1a412df1ddd7b057","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.0.3_1775029864163_0.5867483716297472","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@elvatis_com/elvatis-mcp","version":"1.0.4","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.0.4","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"ff46cc5bf6f7e3fd8c4bc72f6c36985033255515","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.0.4.tgz","fileCount":108,"integrity":"sha512-8xUxtqL96yQFX0QgBJZ2HPidhRqqDt5HPq/DJD/FoBFz514hLoJb/NDAAZgC6C82Bm8ezjPa5/tfRd4vg5BZdw==","signatures":[{"sig":"MEQCIHGFK1pCIp8f2xwfg0hA/paEspOuVFczRjzkAWCXMzaKAiBsGn1b5gleBH/M86pkVLov/rEbSW3yaLJTBAe7/LyfJQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":387582},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"85b5e189b1f672aaac3ddb0b5eb63c293908ad32","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.0.4_1775030313042_0.9247567457428651","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@elvatis_com/elvatis-mcp","version":"1.0.5","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.0.5","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"f560040a347e1071f7dbf046784f9d0a110be0ee","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.0.5.tgz","fileCount":108,"integrity":"sha512-oj4+kJpCB1EyGx6lTOZ3OGYCy4k0wNt9msQSlarGut1MvJ+gNjanTzrr4yW+V250RNCX+VBdPjUMXlK0EDt03g==","signatures":[{"sig":"MEUCIALFGTcgRBVNmG2Dvdh1AABMVoTzjv6+9UFIpindLbMUAiEAzmHJ+7a+44RnGIGgA6pyUNG7p50VVk9mbV0ERpdTDY8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":387550},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"986d2f11d60c7097bc731a9bdcc3d2bb05894b62","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.0.5_1775031129238_0.1692667738523661","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@elvatis_com/elvatis-mcp","version":"1.0.6","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.0.6","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"9d6b564496160829acc05c4082ce3c393a1e22e8","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.0.6.tgz","fileCount":109,"integrity":"sha512-FRYKsmkPrYUcKrhdL4SyjiN/drI7TMVJSY+T0+DcpUqUFPDH4waxp+aOQMU9VO57HB8ZAfATd6ahl5K5Yp5lmw==","signatures":[{"sig":"MEUCIDgf93IruJj0z0i2Xu+xPavA/PIXESIXwsA96qYI1gUVAiEAq+fW3nL2F+h/XndDCmNOUji8x0hIg5n/sqKKwX/KDKw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":387993},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"84b7ddccd7666bd5fe6db34b0d4fabe45489fe7b","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.0.6_1775032069744_0.8548369101435933","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"@elvatis_com/elvatis-mcp","version":"1.0.7","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.0.7","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"c5e1af285fad2508136b1acf5c52a1fbcde42742","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.0.7.tgz","fileCount":109,"integrity":"sha512-cpvMUiWts18GrA4crgkF9Qbg4/Q5ePY/60flkqnxRhHm4Lfv1IGPYdhzseS3bN4Yu+XO1TTWEUMAOqu/fMHHEA==","signatures":[{"sig":"MEUCIE9VPRCXGXNCizDx/HJWIU6D8I5FikjB4x/vRJpPoBDPAiEAjaV10zS3Dm0dy9tg68vME8xpyVWY/YqY389w5SMDlHg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":388309},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"d90e4dde99bd36d84e8c70a5ee8f8c7f028b7072","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.0.7_1775033875487_0.696462778456945","host":"s3://npm-registry-packages-npm-production"}},"1.0.8":{"name":"@elvatis_com/elvatis-mcp","version":"1.0.8","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.0.8","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"f25505cf53ee827c5f190b513557f4a833629c69","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.0.8.tgz","fileCount":109,"integrity":"sha512-bryM8WE17Q4UvbDkDRMEMIJWTpLS98/7GaVqMrsjq2eeFmuaK8xngpFcs91ypg99dj05XbFcPhXRFg7ExnCynQ==","signatures":[{"sig":"MEUCIGSsLvgYRi6f4r8YtvIV4dwvCPFjLCjOUBUDiiqi9vDsAiEAypjFudsNeK0fl+1LbDq3h+r94Cs5bkjxJvKQint5J+g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":388725},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"3c339a11364046adc1e24a2088d764a9c6109b33","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.0.8_1775060566079_0.695474525752461","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@elvatis_com/elvatis-mcp","version":"1.1.0","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.1.0","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"46db58cf3716d8e26ff13de6e3a4f37f150d45db","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.1.0.tgz","fileCount":113,"integrity":"sha512-w8AtZJQMUNkX0CuMXcM2bXtkRtYGYIX/5AY7Msd8bFpRXJRYHk59z8n+/qNZqSJTw8UrQWqJtQxXYUemqlRa8A==","signatures":[{"sig":"MEYCIQCd+u+7xSU6Zh7azWjgm/gR5knDVOullnJUw4ghMt8AmwIhAKsY4vKzVU90SpEeEOsE12rXDC5jO76DAppC+jMz2zBN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":395629},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"ff13fa812181017c99fa71b249305eb3e804f181","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.1.0_1775069987395_0.3435790524124187","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@elvatis_com/elvatis-mcp","version":"1.1.1","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.1.1","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"357a36aeba5a8621b72e53e6e6b406cfb152511f","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.1.1.tgz","fileCount":121,"integrity":"sha512-R9ACO/bs2Sgdbo9gGsj5NCPMmYeevjfoqRsU30ZPtknO5NQtm77rtx3esh7ozuxnKij639hjSt7PDb65CYrjGg==","signatures":[{"sig":"MEUCIBChtQmElZSS+ZGcraC995vF3MwNh+iHtMYVQvme+CbqAiEA66TgUWEjCfD1tEBrZ9FZKoOVBVrtoYkpmnvnID8JRyA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":408347},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"970c462747138fb39515875ab34aacaa095fbf10","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.1.1_1775070245054_0.5419148599742358","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@elvatis_com/elvatis-mcp","version":"1.1.2","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.1.2","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"bd373010ae14d5fed5a7e1832b02578e5451f62d","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.1.2.tgz","fileCount":125,"integrity":"sha512-ca/JAo7Um0Px4+Ic5mn970QDXIkZHJFTQQR1s/yYpto2PaM819dl3LeJFMqeDzIPeAY8dSBJvkl5QQ/tIl00QA==","signatures":[{"sig":"MEYCIQD6VAit/JWuKE9Ox6hpxVg+vCeQVp0fTYNKaC9LUS25+gIhAKaUbq+PGPf40cBQCoWK/kMbUPT0RUIoQ1oFNOukihHw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":414381},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"f1e3b1972a860ba724c7af36aba7a45b039adca7","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.1.2_1775070464538_0.02311716013076004","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@elvatis_com/elvatis-mcp","version":"1.1.3","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.1.3","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"fa258b3610769e004f14b47ace52c38ce9a64f06","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.1.3.tgz","fileCount":125,"integrity":"sha512-RHzqTFR7dbr+gPSZ2BtAR1MMsVFrPel9ui2IkI+mJe1awC5xUcSfXGqO75YzodF/0nAvig34FbqV22fUfPttFQ==","signatures":[{"sig":"MEQCIBnBHQyTM85Z1FmSitQ0O0Hh3cPoTMLZBejR6IVUoJNRAiBJ/99BSddQR+e9KzoEyB+oisjfmkLde/xma+g2CgReLw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":416393},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"163c3375257c06f7933b3c97e479dd3a52853498","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.7","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.1.3_1775076479377_0.20675591091389922","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@elvatis_com/elvatis-mcp","version":"1.2.0","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.2.0","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"14a361dbd0e3262882fa6594d750b86c7bac64e6","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.2.0.tgz","fileCount":129,"integrity":"sha512-NAEriooezlGYhpbqdV8H2H9ea3otRYcfMJv74EjyotYONlslGihk4MnwJc7jUak2h7WqhpEYaGKMJMPlBXr1NA==","signatures":[{"sig":"MEUCIQDU7IjtOjDPxrojwq9iys0k5BcWgfUKAOLhLEf0xvcJTwIgK6L+n/yXgdnBQVkAhM2ddYwhWXeo1/d1K1dES+L1nws=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":432815},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"43dd9c1e64e7c5a866f5e45aeb145ae12424fa36","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.7","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.2.0_1776005421721_0.7130536264734122","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@elvatis_com/elvatis-mcp","version":"1.2.1","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.2.1","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"841fc00d0769950bec109a5bc390c02517817e3e","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.2.1.tgz","fileCount":129,"integrity":"sha512-9tId3oAEb9UjsqRbdzQEQ62Ks/xLq0LwY4moIHM6T57K2hB/8NJ/ut66ahMhJ/KK4XF8zbg5rx0M95CtFJTHnw==","signatures":[{"sig":"MEUCIQDbvWC4LYCSygde4yFl6yAUMnrH9wL0k717dw13YGZajgIgCR748vbCSw4ps3K47C9DVhsGO2N+p2aVqGB7fFsAw2A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":433383},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"6c17c60c8fe92ce84bffabcb2982f23aafd0afd8","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.7","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.2.1_1776105849746_0.31711503487235415","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@elvatis_com/elvatis-mcp","version":"1.2.2","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.2.2","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"9b67ec6e490be036ed11dcd03c51a02e18dd8278","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.2.2.tgz","fileCount":129,"integrity":"sha512-ZElZa6wBbifEXLBCiaoYopScvRj3PYI8jVxDR95IfN1C0wSL539EH1Jzhrb6ekL8Nn7gY03K6lZwa3dlzH+IEA==","signatures":[{"sig":"MEUCIChiYT267GdAKayoKihvfsVqAXSdwnBkJ5NhSjJEuFpVAiEAx5I0+5OkNsH77Ozbp6+tb4acAf/6QBFxZM8lI7Qk3zc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":433372},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"7bb12f3c66f85a667f251e9cff4be603c20b2f42","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.7","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.2.2_1776107013856_0.9012410935679531","host":"s3://npm-registry-packages-npm-production"}},"1.2.3":{"name":"@elvatis_com/elvatis-mcp","version":"1.2.3","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.2.3","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"133a6090d9e93b4925cebf65c7469f188a8d1d8e","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.2.3.tgz","fileCount":129,"integrity":"sha512-DtjBf+fr635sx2dTc6ype0uPK6YAGA4/LrQRqvu7P4aiSs8diI1R/M9rWVeN/941HdAijiDceVoO1tVkdDR2FQ==","signatures":[{"sig":"MEUCIFrvbIuOB9uIYPF8c+gBRapt/Lnq3gcpAMK8T1Uk61BQAiEAvAx816AQEULkRKtjCJrhYyHjzpJcNKTGNaaMhc9szIQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":433813},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"a8747371710a0c1eb5ec6f0fc6e609fdecdcb7ef","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.7","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.2.3_1776110358322_0.9714795219280576","host":"s3://npm-registry-packages-npm-production"}},"1.2.4":{"name":"@elvatis_com/elvatis-mcp","version":"1.2.4","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","_id":"@elvatis_com/elvatis-mcp@1.2.4","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"homepage":"https://github.com/elvatis/elvatis-mcp#readme","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"bin":{"elvatis-mcp":"dist/index.js"},"dist":{"shasum":"19cf98f052fd7d26369062376fee847311e2e1d0","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.2.4.tgz","fileCount":129,"integrity":"sha512-0IdxX2AD3qKorsFDQ9YjUB6H1sSSlfFiCaWUhbTA4Wn1kH4SwegXclZ571gFtWBNR9KyKV+qUm+Zh6sY9VQJxA==","signatures":[{"sig":"MEYCIQDZakTep/x78bPiRhKWe95YzHcwwCnteoEJyiNWpsAn2AIhAOGKaCiY/660Q2zyhH05lidiM1gODQOh7ztjSy1JpvyN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":435939},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18"},"gitHead":"33fe7ab943e6debb3bd207cee0e92324d326db31","scripts":{"dev":"tsc --watch","test":"npm run build && npx tsx --test tests/unit.test.ts","build":"tsc","start":"node dist/index.js","prepare":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm run build","test:integration":"npx tsx tests/integration.test.ts"},"_npmUser":{"name":"elvatis_com","email":"emre.kohler@elvatis.com"},"repository":{"url":"git+https://github.com/elvatis/elvatis-mcp.git","type":"git"},"_npmVersion":"10.9.7","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","dotenv":"^16.4.7","@modelcontextprotocol/sdk":"^1.10.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/elvatis-mcp_1.2.4_1776256273416_0.2801297729404102","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@elvatis_com/elvatis-mcp","version":"1.3.0","description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","main":"dist/index.js","types":"dist/index.d.ts","bin":{"elvatis-mcp":"dist/index.js"},"scripts":{"build":"tsc","dev":"tsc --watch","start":"node dist/index.js","test":"npm run build && npx --no-install tsx --test tests/unit.test.ts tests/security/action-pin.test.ts tests/security/publish-guard.test.ts tests/security/version-guard.test.ts tests/security/runtime-support.test.ts","test:integration":"npx --no-install tsx tests/integration.test.ts","version-guard":"node scripts/check-version-unpublished.mjs","typecheck":"tsc --noEmit","prepare":"npm run build","prepublishOnly":"npm run typecheck && npm run build"},"keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","dependencies":{"@modelcontextprotocol/sdk":"^1.10.2","dotenv":"^16.4.7","zod":"^3.24.2"},"devDependencies":{"@elvatis_com/aahp":"3.8.1","@types/node":"^22.0.0","tsx":"4.23.12","typescript":"^5.9.3","yaml":"^2.9.0"},"engines":{"node":">=22"},"repository":{"type":"git","url":"git+https://github.com/elvatis/elvatis-mcp.git"},"publishConfig":{"access":"public"},"gitHead":"c12c6e5812c36845066b15f52a2fd6e2b829d1e0","_id":"@elvatis_com/elvatis-mcp@1.3.0","bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"homepage":"https://github.com/elvatis/elvatis-mcp#readme","_nodeVersion":"24.19.0","_npmVersion":"12.0.2","dist":{"integrity":"sha512-fRQUniax/ABD9FHtOGT7fLIbnRucJA1EfA3sAa/4u9R07F7zlEmfwywiS3Iq4PdPn0F1qHxxcXy2WBjBQbowNg==","shasum":"d40296247070eb745baf0471b51197970e62c15a","tarball":"https://registry.npmjs.org/@elvatis_com/elvatis-mcp/-/elvatis-mcp-1.3.0.tgz","fileCount":134,"unpackedSize":464715,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@elvatis_com%2felvatis-mcp@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIGtQC99xmitQOc5IUdSJTh+EMTTW9LzPKleurg4xw9NmAiAULEeatcHKjRAO7ciUOpPUOegZ5BTrVcCng5mv6lEiZg=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1568f380-d192-44f3-be62-ded3b46f2a83"}},"directories":{},"maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/elvatis-mcp_1.3.0_1787333683589_0.8025300923503156"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-31T15:03:06.750Z","modified":"2026-08-21T17:34:44.097Z","0.2.0":"2026-03-31T15:03:07.049Z","0.3.0":"2026-03-31T15:18:52.047Z","0.4.0":"2026-03-31T15:29:31.852Z","0.4.1":"2026-03-31T15:35:06.354Z","0.5.0":"2026-03-31T15:44:51.852Z","0.5.1":"2026-03-31T15:52:22.520Z","0.6.0":"2026-03-31T16:27:12.129Z","0.6.1":"2026-03-31T16:36:49.639Z","0.6.2":"2026-03-31T17:24:08.675Z","0.7.0":"2026-03-31T19:13:35.868Z","0.7.1":"2026-03-31T19:52:08.795Z","0.7.2":"2026-03-31T20:10:52.168Z","0.8.0":"2026-03-31T20:42:44.661Z","0.9.0":"2026-03-31T21:56:22.520Z","1.0.0":"2026-03-31T22:10:49.914Z","1.0.1":"2026-04-01T07:36:36.778Z","1.0.2":"2026-04-01T07:40:18.409Z","1.0.3":"2026-04-01T07:51:04.329Z","1.0.4":"2026-04-01T07:58:33.212Z","1.0.5":"2026-04-01T08:12:09.387Z","1.0.6":"2026-04-01T08:27:49.919Z","1.0.7":"2026-04-01T08:57:55.697Z","1.0.8":"2026-04-01T16:22:46.242Z","1.1.0":"2026-04-01T18:59:47.547Z","1.1.1":"2026-04-01T19:04:05.190Z","1.1.2":"2026-04-01T19:07:44.749Z","1.1.3":"2026-04-01T20:47:59.519Z","1.2.0":"2026-04-12T14:50:21.882Z","1.2.1":"2026-04-13T18:44:09.911Z","1.2.2":"2026-04-13T19:03:33.998Z","1.2.3":"2026-04-13T19:59:18.509Z","1.2.4":"2026-04-15T12:31:13.673Z","1.3.0":"2026-08-21T17:34:43.741Z"},"bugs":{"url":"https://github.com/elvatis/elvatis-mcp/issues"},"author":{"name":"Elvatis","email":"emre.kohler@elvatis.com"},"license":"Apache-2.0","homepage":"https://github.com/elvatis/elvatis-mcp#readme","keywords":["mcp","model-context-protocol","openclaw","elvatis","home-assistant","ai","claude"],"repository":{"type":"git","url":"git+https://github.com/elvatis/elvatis-mcp.git"},"description":"MCP server for OpenClaw — expose smart home, memory, cron, and more to Claude Desktop, Cursor, Windsurf, and any MCP client","maintainers":[{"name":"elvatis_com","email":"emre.kohler@elvatis.com"}],"readme":"# elvatis-mcp\n\n**MCP server for OpenClaw** -- expose your smart home, memory, cron automation, and AI sub-agent orchestration to Claude Desktop, Cursor, Windsurf, and any MCP-compatible AI client.\n\n[![npm](https://img.shields.io/npm/v/@elvatis_com/elvatis-mcp)](https://www.npmjs.com/package/@elvatis_com/elvatis-mcp)\n[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)\n[![Tests](https://img.shields.io/badge/unit%20tests-53%2F53%20passed-brightgreen)](#test-results)\n[![AAHP Verify](https://github.com/elvatis/elvatis-mcp/actions/workflows/aahp-verify.yml/badge.svg)](https://github.com/elvatis/elvatis-mcp/actions/workflows/aahp-verify.yml)\n\n## What is this?\n\nelvatis-mcp connects Claude (or any MCP client) to your infrastructure:\n\n- **Smart home** control via Home Assistant (lights, thermostats, vacuum, sensors)\n- **Memory** system with daily logs stored on your OpenClaw server\n- **Cron** job management and triggering\n- **Multi-LLM orchestration** through 5 AI backends: Claude, OpenClaw, Google Gemini, OpenAI Codex, and local LLMs\n- **Smart prompt splitting** that analyzes complex requests, routes sub-tasks to the right AI, and executes the plan with rate limiting\n\nThe key idea: Claude is the orchestrator, but it can delegate specialized work to other AI models. Coding tasks go to Codex. Research goes to Gemini. Simple formatting goes to your local LLM (free, private). Trading and automation go to OpenClaw. `prompt_split` figures out the routing automatically, and `prompt_split_execute` runs the plan with rate limiting on cloud agents.\n\n## What is MCP?\n\n[Model Context Protocol](https://modelcontextprotocol.io) is an open standard by Anthropic that lets AI clients connect to external tool servers. Once configured, Claude can directly call your tools without copy-pasting.\n\n---\n\n## Multi-LLM Architecture\n\n```\n                         You (Claude Desktop / Code / Cursor)\n                                      |\n                              MCP Protocol (stdio/HTTP)\n                                      |\n                              elvatis-mcp server\n                                      |\n              +--------+--------+--------+--------+--------+--------+\n              |        |        |        |        |        |        |\n          Claude  OpenClaw  Gemini   Codex   Local   llama   Home\n          (CLI)   (SSH)     (CLI)    (CLI)   LLM    .cpp    Asst.\n              |        |        |        |    (HTTP)  (proc)  (REST)\n          Reason  Plugins  1M ctx  Coding    |        |        |\n          Write   Trading  Multi-  Files   LM Stu  Turbo-  Lights\n          Review  Auto.    modal   Debug   Ollama  Quant   Climate\n                  Notify   Rsch    Shell   (free!) cache   Vacuum\n```\n\n### Sub-Agent Comparison\n\n| Tool | Backend | Transport | Auth | Best for | Cost |\n|---|---|---|---|---|---|\n| `claude_run` | Claude (Anthropic) | Local CLI | Claude Code login | Complex reasoning, writing, code review. For non-Claude MCP clients. | API usage |\n| `openclaw_run` | OpenClaw (plugins) | SSH | SSH key | Trading, automations, multi-step workflows | Self-hosted |\n| `gemini_run` | Google Gemini | Local CLI | Google login | Long context (1M tokens), multimodal, research | API usage |\n| `codex_run` | OpenAI Codex | Local CLI | OpenAI login | Coding, debugging, file editing, shell scripts | API usage |\n| `local_llm_run` | LM Studio / Ollama / llama.cpp | HTTP | None | Classification, formatting, extraction, rewriting | **Free** |\n\n### Session Resume\n\n`claude_run`, `gemini_run`, and `codex_run` use **CLI session resume** to eliminate cold-start overhead. On the first call a new session is created; subsequent calls resume it so the model receives only the new message instead of re-processing the full conversation history.\n\n| Metric | Without session resume | With session resume |\n|--------|----------------------|---------------------|\n| Prompt size per request | 18-25 KB | <1 KB (new message only) |\n| Claude Sonnet response time | 80-120s (50% hang rate) | 5-10s |\n| Silent hang rate | ~50% | Near 0% |\n\nSessions are persisted to `~/.openclaw/cli-bridge/cli-sessions.json` and expire after 2 hours of inactivity or 50 requests. The `session_id` is returned in every response so you can inspect which session was used.\n\n### Smart Prompt Splitting\n\nThe `prompt_split` tool analyzes complex prompts and breaks them into sub-tasks:\n\n```\nUser: \"Search my memory for TurboQuant notes, summarize with Gemini,\n       reformat as JSON locally, then save a summary to memory\"\n\nprompt_split returns:\n  t1: openclaw_memory_search  -- \"Search memory for TurboQuant\"        (parallel)\n  t3: local_llm_run           -- \"Reformat raw notes as clean JSON\"    (parallel)\n  t2: gemini_run              -- \"Summarize the key findings\"          (after t1)\n  t4: openclaw_memory_write   -- \"Save summary to today's log\"        (after t2, t3)\n```\n\nUse `prompt_split_execute` to run the plan automatically, or let Claude execute it step by step. Tasks run in dependency order with parallel groups executed concurrently. Three analysis strategies:\n\n| Strategy | Speed | Quality | Uses |\n|---|---|---|---|\n| `heuristic` | Instant | Good for clear prompts | Keyword matching, no LLM call |\n| `local` | 5-30s | Better reasoning | Your local LLM analyzes the prompt |\n| `gemini` | 5-15s | Best quality | Gemini-flash analyzes the prompt |\n| `auto` (default) | Varies | Best available | Short-circuits simple prompts, then tries gemini -> local -> heuristic |\n\n---\n\n## Available Tools (34 total)\n\n### Home Assistant (7 tools)\n| Tool | Description |\n|---|---|\n| `home_get_state` | Read any Home Assistant entity state |\n| `home_light` | Control lights: on/off/toggle, brightness, color temperature, RGB |\n| `home_climate` | Control Tado thermostats: temperature, HVAC mode |\n| `home_scene` | Activate Hue scenes by room |\n| `home_vacuum` | Control Roborock vacuum: start, stop, dock, status |\n| `home_sensors` | Read all temperature, humidity, and CO2 sensors |\n| `home_automation` | List, trigger, enable, or disable HA automations |\n\n### Memory (3 tools)\n| Tool | Description |\n|---|---|\n| `openclaw_memory_write` | Write a note to today's daily log |\n| `openclaw_memory_read_today` | Read today's memory log |\n| `openclaw_memory_search` | Search memory files across the last N days |\n\n### Cron Automation (7 tools)\n| Tool | Description |\n|---|---|\n| `openclaw_cron_list` | List all scheduled OpenClaw cron jobs |\n| `openclaw_cron_run` | Trigger a cron job immediately by ID |\n| `openclaw_cron_status` | Get scheduler status and recent run history |\n| `openclaw_cron_create` | Create a new cron job (cron expression, interval, or one-shot) |\n| `openclaw_cron_edit` | Edit an existing cron job (name, message, schedule, model) |\n| `openclaw_cron_delete` | Delete a cron job by ID |\n| `openclaw_cron_history` | Show recent execution history for a cron job |\n\n### OpenClaw Agent (4 tools)\n| Tool | Description |\n|---|---|\n| `openclaw_run` | Send a prompt to the OpenClaw AI agent (all plugins available) |\n| `openclaw_status` | Check if the OpenClaw daemon is running |\n| `openclaw_plugins` | List all installed plugins |\n| `openclaw_notify` | Send a notification via WhatsApp, Telegram, or last-used channel |\n\n### AI Sub-Agents (5 tools)\n| Tool | Description |\n|---|---|\n| `claude_run` | Send a prompt to Claude via the local CLI. For non-Claude MCP clients (Cursor, Windsurf). |\n| `gemini_run` | Send a prompt to Google Gemini via the local CLI. 1M token context. |\n| `codex_run` | Send a coding task to OpenAI Codex via the local CLI. |\n| `local_llm_run` | Send a prompt to a local LLM (LM Studio, Ollama, llama.cpp). Free, private. Supports streaming. |\n| `llama_server` | Start/stop/configure a llama.cpp server with TurboQuant cache support. |\n\n### System Management (4 tools)\n| Tool | Description |\n|---|---|\n| `system_status` | Health check all services at once with latency (HA, SSH, LLM, CLIs) |\n| `local_llm_models` | List, load, or unload models on LM Studio / Ollama |\n| `openclaw_logs` | View gateway, agent, or system logs from the OpenClaw server |\n| `file_transfer` | Upload, download, or list files on the OpenClaw server via SSH |\n\n### Routing and Orchestration (3 tools)\n| Tool | Description |\n|---|---|\n| `mcp_help` | Show routing guide. Pass a task to get a specific tool recommendation. |\n| `prompt_split` | Analyze a complex prompt, split into sub-tasks with agent assignments. |\n| `prompt_split_execute` | Execute a split plan: dispatch subtasks to agents in dependency order with rate limiting. |\n\n### Dashboard\n| Endpoint | Description |\n|---|---|\n| `http://localhost:3334/status` | Auto-refreshing HTML dashboard (service health, loaded models) |\n| `http://localhost:3334/api/status` | JSON API for programmatic status checks |\n\n---\n\n## Test Results\n\nAll tests run against live services (LM Studio with Deepseek R1 Qwen3 8B, OpenClaw server via SSH).\n\n```\n  elvatis-mcp integration tests\n\n  Local LLM (local_llm_run)\n\n        Model: deepseek/deepseek-r1-0528-qwen3-8b\n        Response: \"negative\"\n        Tokens: 401 (prompt: 39, completion: 362)\n  PASS  local_llm_run: simple classification (21000ms)\n        Extracted: {\"name\":\"John Smith\",\"age\":34}\n  PASS  local_llm_run: JSON extraction (24879ms)\n        Error: Could not connect to local LLM at http://localhost:19999/v1/chat/completions\n  PASS  local_llm_run: connection error handling (4ms)\n\n  Prompt Splitter (prompt_split)\n\n        Strategy: heuristic\n        Agent: codex_run\n        Summary: Fix the authentication bug in the login handler\n  PASS  prompt_split: single-domain coding prompt routes to codex (1ms)\n        Strategy: heuristic\n        Subtasks: 3\n          t1: codex_run -- \"Refactor the auth module\"\n          t2: openclaw_run -- \"check my portfolio performance and\"\n          t3: home_light -- \"turn on the living room lights\"\n        Parallel groups: [[\"t1\",\"t3\"],[\"t2\"]]\n        Estimated time: 90s\n  PASS  prompt_split: heuristic multi-agent splitting (0ms)\n        Subtasks: 4, Agents: openclaw_memory_write, gemini_run, local_llm_run\n        Parallel groups: [[\"t1\",\"t3\",\"t4\"],[\"t2\"]]\n  PASS  prompt_split: cross-domain with dependencies (1ms)\n        Strategy: local->heuristic (fallback)\n        Subtasks: 1\n  PASS  prompt_split: local LLM strategy (with fallback) (60007ms)\n\n  Routing Guide (mcp_help)\n\n        Guide length: 2418 chars\n  PASS  mcp_help: returns guide without task (0ms)\n        Recommendation: local_llm_run (formatting task)\n  PASS  mcp_help: routes formatting task to local_llm_run (0ms)\n        Recommendation: codex_run (coding task)\n  PASS  mcp_help: routes coding task to codex_run (0ms)\n\n  Memory Search via SSH (openclaw_memory_search)\n\n        Query: \"trading\", Results: 5\n  PASS  openclaw_memory_search: finds existing notes (208ms)\n\n  -----------------------------------------------------------\n  11 passed, 0 failed, 0 skipped\n  -----------------------------------------------------------\n```\n\nRun the tests yourself:\n```bash\nnpx tsx tests/integration.test.ts\n```\n\nPrerequisites: `.env` configured, local LLM server running, OpenClaw server reachable via SSH.\n\n---\n\n## Benchmarks\n\nSee [BENCHMARKS.md](BENCHMARKS.md) for the full benchmark suite, methodology, and community contribution guide.\n\n### Reference Hardware\n\n| Component | Spec |\n|---|---|\n| CPU | AMD Threadripper 3960X (24 cores / 48 threads) |\n| GPU | AMD Radeon RX 9070 XT Elite (16 GB GDDR6) |\n| RAM | 128 GB DDR4 |\n| OS | Windows 11 Pro |\n| Runtime | LM Studio + Vulkan (`llama.cpp-win-x86_64-vulkan-avx2@2.8.0`) |\n\n### Local LLM Inference (LM Studio, Vulkan GPU, `--gpu max`)\n\nMedian of 3 runs, `max_tokens=512`. Tasks: classify (1-word sentiment), extract (JSON), reason (arithmetic), code (Python function). Vulkan is the recommended runtime for AMD RX 9070 XT (wins 4 of 5 models over ROCm).\n\n| Model | Params | classify | extract | reason | code | avg tok/s |\n|-------|--------|----------|---------|--------|------|-----------|\n| Phi 4 Mini Reasoning | 3B | 2.6s | 1.9s | 4.7s | 4.8s | **106** |\n| Deepseek R1 0528 Qwen3 | 8B | 3.0s | 6.5s | 7.2s | 7.4s | 70 |\n| Qwen 3.5 9B | 9B | 6.2s | 4.0s | 8.4s | 7.2s | 48 |\n| Phi 4 Reasoning Plus | 15B | 0.4s | 9.7s | 3.5s | 9.9s | 40 |\n| **GPT-OSS 20B** | **20B** | **0.6s** | **0.6s** | **0.6s** | **1.9s** | 63 |\n\n**GPU speedup vs CPU (Deepseek R1 8B, Vulkan):** classify 7.2x faster, extract 3.8x faster.\n\n### Sub-Agent Comparison (same task, different backends)\n\n| Agent | Backend | Avg Latency | Cost | Notes |\n|-------|---------|-------------|------|-------|\n| **local_llm_run** | GPT-OSS 20B (Vulkan GPU) | **1.0s** | Free | 4x faster than Codex, 6x faster than Claude |\n| codex_run | OpenAI Codex CLI | 4.1s | Pay-per-use | Best for coding tasks |\n| claude_run | Claude Sonnet 4.6 | 6.3s (5-10s with session resume) | Pay-per-use | Best for complex reasoning |\n| gemini_run | Gemini 2.5 Flash | 34.0s | Free tier | CLI startup overhead, best for long context |\n\n### Service Latency (system_status)\n\n| Service | Latency | Notes |\n|---|---|---|\n| Home Assistant (REST API) | 48-84 ms | Local network, direct HTTP |\n| OpenClaw SSH | 273-299 ms | LAN SSH + command execution |\n| Local LLM (model list) | 19-38 ms | LM Studio localhost API |\n| Claude CLI (version check) | 472-478 ms | CLI startup overhead |\n| Codex CLI (version check) | 131-136 ms | CLI startup overhead |\n| Gemini CLI (version check) | 4,700-4,900 ms | CLI startup + auth check |\n\n### prompt_split Accuracy (heuristic strategy)\n\n| Metric | Result |\n|--------|--------|\n| Pass rate | **10/10 (100%)** |\n| Task count accuracy | 10/10 (100%) |\n| Avg agent match | 100% |\n| Latency | <1ms (no LLM call) |\n\nImprovements in v0.8.0+: word boundary regex matching, comma-clause splitting for multi-agent prompts, per-tool routing rules, `openclaw_notify` routing. See [BENCHMARKS.md](BENCHMARKS.md) for the full test corpus.\n\n> Want to contribute benchmarks from your hardware? See [BENCHMARKS.md](BENCHMARKS.md#community-contributions).\n\n---\n\n## Requirements\n\n- Node.js 18 or later\n- OpenSSH client (built-in on Windows 10+, macOS, Linux)\n- A running [OpenClaw](https://openclaw.ai) instance accessible via SSH\n- A [Home Assistant](https://www.home-assistant.io) instance with a long-lived access token\n\n**Optional (for sub-agents):**\n- `claude_run`: `npm install -g @anthropic-ai/claude-code` and run `claude` once to authenticate\n- `gemini_run`: `npm install -g @google/gemini-cli` and `gemini auth login`\n- `codex_run`: `npm install -g @openai/codex` and `codex login`\n- `local_llm_run`: any OpenAI-compatible local server:\n  - [LM Studio](https://lmstudio.ai) (recommended, GUI, default port 1234)\n  - [Ollama](https://ollama.ai) (`ollama serve`, port 11434)\n  - [llama.cpp](https://github.com/ggml-org/llama.cpp) (`llama-server`, any port)\n\n---\n\n## Installation\n\nInstall globally:\n```bash\nnpm install -g @elvatis_com/elvatis-mcp\n```\n\nOr use directly via npx (no install required):\n```bash\nnpx @elvatis_com/elvatis-mcp\n```\n\nEvery release is built and published by GitHub Actions from a pushed `v*` tag,\nout of the exact commit that tag names.\n[SECURITY.md](SECURITY.md#release-integrity) sets out what that path does and\ndoes not guarantee, and how to verify a version you have installed.\n[CHANGELOG.md](CHANGELOG.md) records what each release contains.\n\n---\n\n## Where Can I Use It?\n\nelvatis-mcp works in every MCP-compatible client. Each client uses its own config file.\n\n| Client | Transport | Config file |\n|--------|-----------|-------------|\n| **Claude Desktop / Cowork** (Windows MSIX) | stdio | `%LOCALAPPDATA%\\Packages\\Claude_pzs8sxrjxfjjc\\LocalCache\\Roaming\\Claude\\claude_desktop_config.json` |\n| **Claude Desktop / Cowork** (macOS) | stdio | `~/Library/Application Support/Claude/claude_desktop_config.json` |\n| **Claude Code** (global, all projects) | stdio | `~/.claude.json` |\n| **Claude Code** (this project only) | stdio | `.mcp.json` in repo root (already included) |\n| **Cursor / Windsurf / other** | stdio or HTTP | See app documentation |\n\n> Claude Desktop and Cowork share the same config file. Claude Code is a separate system.\n\n---\n\n## Configuration\n\n### 1. Create your `.env` file\n\n```bash\ncp .env.example .env\n```\n\n```env\n# Required\nHA_URL=http://your-home-assistant:8123\nHA_TOKEN=your_long_lived_ha_token\nSSH_HOST=your-openclaw-server-ip\nSSH_USER=your-ssh-username\nSSH_KEY_PATH=~/.ssh/your_key\n\n# Optional: Local LLM\nLOCAL_LLM_ENDPOINT=http://localhost:1234/v1    # LM Studio default\nLOCAL_LLM_MODEL=deepseek-r1-0528-qwen3-8b     # or omit to use loaded model\n\n# Optional: Sub-agent models\nGEMINI_MODEL=gemini-2.5-flash\nCODEX_MODEL=o3\n```\n\n### 2. Configure your MCP client\n\n#### Claude Desktop (macOS)\nEdit `~/Library/Application Support/Claude/claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"elvatis-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@elvatis_com/elvatis-mcp\"],\n      \"env\": {\n        \"HA_URL\": \"http://your-home-assistant:8123\",\n        \"HA_TOKEN\": \"your_token\",\n        \"SSH_HOST\": \"your-openclaw-server-ip\",\n        \"SSH_USER\": \"your-username\",\n        \"SSH_KEY_PATH\": \"/Users/your-username/.ssh/your_key\"\n      }\n    }\n  }\n}\n```\n\n#### Claude Desktop (Windows MSIX)\nOpen this file (create it if needed):\n```\n%LOCALAPPDATA%\\Packages\\Claude_pzs8sxrjxfjjc\\LocalCache\\Roaming\\Claude\\claude_desktop_config.json\n```\n\n```json\n{\n  \"mcpServers\": {\n    \"elvatis-mcp\": {\n      \"command\": \"C:\\\\Program Files\\\\nodejs\\\\node.exe\",\n      \"args\": [\"C:\\\\path\\\\to\\\\elvatis-mcp\\\\dist\\\\index.js\"],\n      \"env\": {\n        \"HA_URL\": \"http://your-home-assistant:8123\",\n        \"HA_TOKEN\": \"your_token\",\n        \"SSH_HOST\": \"your-openclaw-server-ip\",\n        \"SSH_USER\": \"your-username\",\n        \"SSH_KEY_PATH\": \"C:\\\\Users\\\\your-username\\\\.ssh\\\\your_key\"\n      }\n    }\n  }\n}\n```\n\n> On Windows, always use full absolute paths. The MSIX sandbox does not resolve `~` or relative paths.\n\n#### Claude Code (this project)\nCopy `.mcp.json.example` to `.mcp.json` (gitignored, never committed) and fill in your paths and SSH details. Then copy `.env.example` to `.env` for the remaining config.\n\n#### Claude Code (global)\n```bash\nclaude mcp add --scope user elvatis-mcp -- node /path/to/elvatis-mcp/dist/index.js\n```\n\n#### HTTP Transport (remote clients)\n```bash\nMCP_TRANSPORT=http MCP_HTTP_PORT=3333 npx @elvatis_com/elvatis-mcp\n```\nConnect your client to `http://your-server:3333/mcp`.\n\n---\n\n## Environment Variables\n\n### Required\n| Variable | Description |\n|---|---|\n| `HA_URL` | Home Assistant base URL, e.g. `http://192.168.x.x:8123` |\n| `SSH_HOST` | OpenClaw server hostname or IP |\n\n### Optional\n| Variable | Default | Description |\n|---|---|---|\n| `HA_TOKEN` | -- | Home Assistant long-lived access token |\n| `SSH_PORT` | `22` | SSH port |\n| `SSH_USER` | `chef-linux` | SSH username |\n| `SSH_KEY_PATH` | `~/.ssh/openclaw_tunnel` | Path to SSH private key |\n| `OPENCLAW_GATEWAY_URL` | `http://localhost:18789` | OpenClaw Gateway URL |\n| `OPENCLAW_GATEWAY_TOKEN` | -- | Optional Gateway API token |\n| `OPENCLAW_DEFAULT_AGENT` | -- | Named agent for `openclaw_run` |\n| `GEMINI_MODEL` | `gemini-2.5-flash` | Default model for `gemini_run` |\n| `CODEX_MODEL` | -- | Default model for `codex_run` |\n| `LOCAL_LLM_ENDPOINT` | `http://localhost:1234/v1` | Local LLM server URL (LM Studio default) |\n| `LOCAL_LLM_MODEL` | -- | Default local model (omit to use server's loaded model) |\n| `MCP_TRANSPORT` | `stdio` | Transport mode: `stdio` or `http` |\n| `MCP_HTTP_PORT` | `3333` | HTTP port |\n| `SSH_DEBUG` | -- | Set to `1` for verbose SSH output |\n| `ELVATIS_DATA_DIR` | `~/.elvatis-mcp` | Directory for persistent usage data (rate limiter) |\n| `RATE_LIMITS` | -- | JSON string with per-agent rate limit overrides |\n\n---\n\n## Local LLM Setup\n\nelvatis-mcp works with any OpenAI-compatible local server. Three popular options:\n\n### LM Studio (recommended for desktop)\n1. Download from [lmstudio.ai](https://lmstudio.ai)\n2. Load a model (e.g. Deepseek R1 Qwen3 8B, Phi 4 Mini)\n3. Click \"Local Server\" in the sidebar and enable it\n4. Server runs at `http://localhost:1234/v1` (the default)\n\n### Ollama\n```bash\nollama serve                    # starts server on port 11434\nollama run llama3.2             # downloads and loads model\n```\nSet `LOCAL_LLM_ENDPOINT=http://localhost:11434/v1` in your `.env`.\n\n### llama.cpp\n```bash\nllama-server -m model.gguf --port 8080\n```\nSet `LOCAL_LLM_ENDPOINT=http://localhost:8080/v1` in your `.env`.\n\n### Recommended models by task\n\n| Model | Size | Best for |\n|---|---|---|\n| Phi 4 Mini | 3B | Fast classification, formatting, extraction |\n| Deepseek R1 Qwen3 | 8B | Reasoning, analysis, prompt splitting |\n| Phi 4 Reasoning Plus | 15B | Complex reasoning with quality |\n| GPT-OSS | 20B | General purpose, longer responses |\n\n> Reasoning models (Deepseek R1, Phi 4 Reasoning) wrap their chain-of-thought in `<think>` tags. elvatis-mcp strips these automatically to give you clean responses.\n\n---\n\n## SSH Setup\n\nThe cron, memory, and OpenClaw tools communicate with your server via SSH.\n\n```bash\n# Verify connectivity\nssh -i ~/.ssh/your_key your-username@your-server \"openclaw --version\"\n\n# Optional: SSH tunnel for OpenClaw WebSocket gateway\nssh -i ~/.ssh/your_key -L 18789:127.0.0.1:18789 -N your-username@your-server\n```\n\nOn Windows, elvatis-mcp automatically resolves the SSH binary to `C:\\Windows\\System32\\OpenSSH\\ssh.exe` and retries on transient connection failures. Set `SSH_DEBUG=1` for verbose output.\n\n---\n\n## `/mcp-help` Slash Command\n\nIn Claude Code, the `/mcp-help` slash command shows the full 34-tool routing guide as formatted output:\n\n```\n/mcp-help                           # full guide\n/mcp-help openclaw_status           # help for a specific tool\n/mcp-help analyze this trading strategy for risk  # routing recommendation\n```\n\n---\n\n## Rate Limiting\n\nCloud sub-agents (`claude_run`, `codex_run`, `gemini_run`) are rate-limited to prevent runaway costs. Default limits:\n\n| Agent | /min | /hr | /day | Est. cost/call |\n|-------|------|-----|------|----------------|\n| `claude_run` | 5 | 30 | 200 | $0.03 |\n| `codex_run` | 5 | 30 | 200 | $0.02 |\n| `gemini_run` | 10 | 60 | 500 | $0.01 |\n\nLocal agents (`local_llm_run`, `home_*`, `openclaw_*`) are unlimited.\n\nUsage data persists to `~/.elvatis-mcp/usage.json`. Override limits via the `RATE_LIMITS` env var:\n\n```bash\nRATE_LIMITS='{\"claude_run\":{\"perMinute\":3,\"perDay\":100}}'\n```\n\n---\n\n## Development\n\n```bash\ngit clone https://github.com/elvatis/elvatis-mcp\ncd elvatis-mcp\nnpm install          # builds automatically via prepare script\ncp .env.example .env # fill in your values\nnode dist/index.js   # starts in stdio mode, waits for MCP client\n```\n\nBuild watch mode:\n```bash\nnpm run dev\n```\n\nRun integration tests:\n```bash\nnpx tsx tests/integration.test.ts\n```\n\n### Project layout\n```\nsrc/\n  index.ts              MCP server entry, tool registration, transport, dashboard\n  config.ts             Environment variable configuration\n  dashboard.ts          Status dashboard HTML renderer\n  ssh.ts                SSH exec helper (Windows/macOS/Linux)\n  spawn.ts              Local process spawner for CLI sub-agents (supports stdin piping)\n  session-registry.ts   CLI session registry: persist/resume Claude, Gemini, Codex sessions\n  tools/\n    home.ts             Home Assistant: light, climate, scene, vacuum, sensors\n    home-automation.ts  HA automations: list, trigger, enable, disable\n    memory.ts           Daily memory log: write, read, search (SSH)\n    cron.ts             OpenClaw cron: list, run, status (SSH)\n    cron-manage.ts      OpenClaw cron: create, edit, delete, history (SSH)\n    openclaw.ts         OpenClaw agent orchestration (SSH)\n    openclaw-logs.ts    OpenClaw server log viewer (SSH)\n    notify.ts           WhatsApp/Telegram notifications via OpenClaw\n    claude.ts           Claude sub-agent (local CLI, for non-Claude clients)\n    gemini.ts           Google Gemini sub-agent (local CLI)\n    codex.ts            OpenAI Codex sub-agent (local CLI)\n    local-llm.ts        Local LLM sub-agent (OpenAI-compatible HTTP)\n    local-llm-models.ts LM Studio model management (list/load/unload)\n    llama-server.ts     llama.cpp server manager (start/stop/configure)\n    file-transfer.ts    File upload/download via SSH\n    system-status.ts    Unified health check across all services\n    splitter.ts         Smart prompt splitter (multi-strategy)\n    split-execute.ts    Plan executor with agent dispatch and rate limiting\n    help.ts             Routing guide and task recommender\n    routing-rules.ts    Shared routing rules and keyword matching\n  rate-limiter.ts       Rate limiting + cost tracking for cloud sub-agents\ntests/\n  unit.test.ts          42 unit tests (no external services needed)\n  integration.test.ts   Live integration tests\n```\n\n---\n\n## License\n\nApache-2.0 -- Copyright 2026 [Elvatis](https://elvatis.com)\n","readmeFilename":"README.md"}