{"_id":"mcp-http-webhook","_rev":"34-a81ff583c0131867ef91d0e16025b3a6","name":"mcp-http-webhook","dist-tags":{"latest":"1.0.33"},"versions":{"1.0.0":{"name":"mcp-http-webhook","version":"1.0.0","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.0","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"e26802d2828739c089f9abec660f43b7d9640ca3","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.0.tgz","fileCount":80,"integrity":"sha512-/a83QiZHGDTiuRiYLXTpyRczTqCXkngIZ4Zqktbd+Zi5ci3WqUmMlHQejl16ZVKh0MKcX8ENBa6YlMjhRwimeA==","signatures":[{"sig":"MEUCIQD+a1lcGcRpbrgUtH+Jo/BtmLAG3todK0pZKcwGgOU4LAIgCkRBBA5H18Gg3cOT7+l1uz9x2UuOC9CNNHAi4YsMAjc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":412108},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"496b2cb91995872184f65620c6b5657d6a3d199a","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm run build && npm publish --access public","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.0_1760516675870_0.3101830959661529","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"mcp-http-webhook","version":"1.0.1","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.1","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"8864ccab675998e1aa4ab3041dece182d16b0d12","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.1.tgz","fileCount":80,"integrity":"sha512-WrHtXDMXU6SOzNdJmICmjR/FtwejYDhPGMqmZC7kYLx7h0DuSl8kFA+6/yezwkHu2VDGDRVcXYycel5dirBC9Q==","signatures":[{"sig":"MEYCIQDfScXnD8D22raC9u4tmquwZk3tpbQn3Qcjv6ypmUFfsQIhAOxeoM/UuUPfo8Bj0L2140VhsWRLJCxUhTl6mRjV89Qk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":412153},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0a783077db4b630da760f515a82091356560d20a","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.1_1760715606894_0.23078687279271115","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"mcp-http-webhook","version":"1.0.2","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.2","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"78f7d92e7c14f1306486b4f99cc4913e132b7f52","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.2.tgz","fileCount":80,"integrity":"sha512-vidKKUEn1YKKscQqfWJMWKY0Ape0LHEjDhF0etA8yVXS3G5aqQtG1FelmGcz5AzzqNaweMX9fZbF80dIwRzUZQ==","signatures":[{"sig":"MEQCIC7hDD1K3hgUy/fEY/1RKUlg/rZjm1U6VdGUxgPtfRV8AiALAxmOyXZ66kgOmB1ptKMrKt+XD1QqVcxnQISbyOw3vg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":412303},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"cc2844e2db2609b158e043bfd3bd041c5c15357b","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.2_1760876497115_0.21898534203432263","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"mcp-http-webhook","version":"1.0.3","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.3","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"260e9060b0ff7b924a9dde9e0a841392d8da3c8a","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.3.tgz","fileCount":80,"integrity":"sha512-X37lTRYzIoLzpr1tGP04WvQ0A+yIJbNpedIujnc0Zee9ZyVqS6zZ5PXqS4BY9AKQ6zfhNVnpcZi/r/ZsuIFq3A==","signatures":[{"sig":"MEUCIDPE+Y0GI3ok63UNhS8pG/CSWEjZ1+wlhxhQkaO6ZXd0AiEArFNJeGEUOSP/Gi5ckhpwPc/E2Br4NZLiCrHK80xVHVk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":413906},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"9715bc293a3da1c564616826589a479be79e48e2","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.3_1761054115222_0.6110878902776713","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"mcp-http-webhook","version":"1.0.4","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.4","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"fafa0304043953767cd28f34ff8fa38198478319","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.4.tgz","fileCount":80,"integrity":"sha512-xQbSNoh6V3/CJrxkVPFnCwQWJoYFFmmsEm581uMDhVMbEs5I7dYPG9dMUB/RmX3g1NHFQ6IFJ9MdFiroGg6qLw==","signatures":[{"sig":"MEUCIQDs51yMdiciqv6JjVwUFGLdnaqvFBECJlV77wErHa1WZAIgXF4w7TGzBcRVtESku9ARw5T9I3sB8aVkfz2bB0tuS6k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":413906},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"86273840bd2b5cadf3367fa022f3393bb51434d0","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.4_1761303920031_0.819929205499091","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"mcp-http-webhook","version":"1.0.5","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.5","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"78532322755c03dfebc18c286afb23f559a00d0e","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.5.tgz","fileCount":80,"integrity":"sha512-DcXWRL2PeKtQiOQ3SuSndYKlXzeRSfHCr9VDqHN2ExyL8f0SxYNaO8ABIcnW0TsTuYRSn+pP1hNfHvs6hsuYmw==","signatures":[{"sig":"MEYCIQCVG1TFn/eGGQ1jpbmymZProbCEDEi8sd9XXXJnZvAncwIhAL/psh/5RIHFQQSl/Lt0wagHZSgTgz0JSZurFnuJ7w+a","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":421050},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"16f7ccbbe1dfeae31d14371c8fe644368b84d025","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.5_1761385587065_0.8907992892458443","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"mcp-http-webhook","version":"1.0.6","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.6","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"cd528e586ae9acd3a95ed771865295e220fb2ce8","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.6.tgz","fileCount":80,"integrity":"sha512-Ng0o41lASkcyxiiF+g/fYHKiKOvyb2t+fxEBFs517+Gr8KMr7DCAahE92MtA4hYZvg34OPqzM1Imvk6OjHpKzg==","signatures":[{"sig":"MEYCIQC/lFfMJvBwRc8mIytV7xjVqZOFk4qx88msL5Ixt2tSrAIhAPVRtXgnX3ECQZdodaPXXocrihS6vl3dbsoOen+dJCZ5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":431640},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0836916d20beebbac22199d1747ca691c9ec30b3","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.6_1761840104798_0.2738218993215922","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"mcp-http-webhook","version":"1.0.7","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.7","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"aaa167d3fd02a65dff65ae4b78b1081eaa3e8ebc","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.7.tgz","fileCount":85,"integrity":"sha512-591yovsNy60yOjM4D2JZEv7SSAQzZSx14WIqjM+WEQ2ao41v04hvRbj4JAnvhGsNWXUf2AyJxMh3KS4qtoYHGQ==","signatures":[{"sig":"MEUCIHt+//A/jqh0MAEZF12iwlOmPyMB5HJ+vXLBFJ2t5pUfAiEAwik8H/chKVUA+9UyMBCnvKUlm8GS7NLzI3nyKcdTR34=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":490274},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"897c0a01396abcd88761272ecd1c4f1c371ff6ba","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.7_1763718345090_0.7087356295952536","host":"s3://npm-registry-packages-npm-production"}},"1.0.8":{"name":"mcp-http-webhook","version":"1.0.8","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.8","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"31e5d0e0b67dc70aca653e58eee80f7ce40400fc","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.8.tgz","fileCount":85,"integrity":"sha512-0JR7pSWHMmLJfq1VV8EWigoqfCaNhFnVjQML1+26/WxoD3s39X1z75ZwTWoPDtPM31r8FKlEbVkJ3Ok7BUeRnw==","signatures":[{"sig":"MEQCICQX0jewgj5UktuO0Gkgyc/NS/16c1LQexeumvDNtMHoAiBk9qYtHfnHm/JYHhy7A3EORiFp1R6XvJlC46Ymh3pdkw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":490465},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"83d86a51ff9467a61133e051429f271b16204d92","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.8_1763887354906_0.6437307614658716","host":"s3://npm-registry-packages-npm-production"}},"1.0.9":{"name":"mcp-http-webhook","version":"1.0.9","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.9","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"743d9cc593094cec1e6f65368383b7a15631a8ad","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.9.tgz","fileCount":85,"integrity":"sha512-K3iRuyh/ZgyTklebMTQjXYhRH5m8AAQdopUa6yhEWx92XZjqv/wtHaDIkSUPw/uAZCXmrtMpMtV67DwAT/+UFw==","signatures":[{"sig":"MEYCIQDPF6HXLvoF978V1r3Hl3ecxoohVmEQsmK/rJIKuKHV6AIhANy/fsRMmrkPlU+AuxVly4Vh2AtNdYVZKh0ebUdrW43P","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":491201},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"c1c8654bcecfaa0ef696dffed5cea25e3cf11fcb","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.9_1763888515100_0.6517730599995999","host":"s3://npm-registry-packages-npm-production"}},"1.0.10":{"name":"mcp-http-webhook","version":"1.0.10","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.10","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"3b8a89178d9c95fcb13b0a7854bb5b8a7064d956","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.10.tgz","fileCount":85,"integrity":"sha512-1UNHstx1fl4vcW1Ym3whfhfIuXR9y0nRn8YYFMJptYWK4uPjhnBI/AZA2HLgFT93ydMVvCYmk2NlEhWpQbTwYA==","signatures":[{"sig":"MEYCIQDx+2X3pcFSGmDXOkdKGV0oR7EX32uoN92fHHZs9ma7vQIhAP7rkvqbKgOYnkdMSgx+YPDcC7yFBFq1yLd0p+RAs/ys","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":492620},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"169e526fc095155da3db09c2c14c5ad0a4e4e791","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.10_1763889053069_0.12445932897530221","host":"s3://npm-registry-packages-npm-production"}},"1.0.11":{"name":"mcp-http-webhook","version":"1.0.11","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.11","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"d4255072200c8d00e0f5e7350430fd1ec08843d6","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.11.tgz","fileCount":85,"integrity":"sha512-lUgQQPUyZsblqxFtgAv1OCHZEV8WN0wl1dUUEXCO/elXq0t8Obx/HI4RlKiaXGX3oODMlVjc/9mI43w7FNBncg==","signatures":[{"sig":"MEYCIQDJovPnP2oxZV4yDrqg4ng555uEoVWYOslHm6/oqeLdygIhAN/q26lzRfPv/OiSa/utOqaItVERx7MzMhy+LLcdvHaf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":500331},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"233a11d6dbcf68723ef381af2c5fb58be6b37c5d","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.11_1763889747464_0.3031409677414414","host":"s3://npm-registry-packages-npm-production"}},"1.0.12":{"name":"mcp-http-webhook","version":"1.0.12","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.12","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"01f98dbf7582a2e8e7933d4f99058ff35f10f1b3","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.12.tgz","fileCount":85,"integrity":"sha512-XM1IKlOa5FztBUYSFbBfVBqeZkJib6FEPAmXF+eoAHSavSDZz7MUsz5n4YTgmZRED49vrl06vGwSIG77leXNbQ==","signatures":[{"sig":"MEUCIQCbk6z85wxamEm2SMkdx//68Cwgrw2pbWb+/MmvldUe8QIgVB4BHnWl6rjYxYPlVtoHrGzrdQkWk/OlgHU/6m9l0pE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":500522},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"9a4aeea5f3f43b706ffa2481dc4b1e8d51c8509b","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.12_1763890021277_0.13737712073920272","host":"s3://npm-registry-packages-npm-production"}},"1.0.13":{"name":"mcp-http-webhook","version":"1.0.13","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.13","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"ef027362d9ea30ac2734ca8a6d237c3ae1a97cef","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.13.tgz","fileCount":85,"integrity":"sha512-YIrAq/UejVlkZ/62RO1nRzrf+PtHudCDmm/Cg4lZEL9XWvZvHbN9PDhG4W6vZlSDpiHO5GKdHC5a9fb9RwEdTg==","signatures":[{"sig":"MEUCIAi8livEr7ioJhQstoqSA5ssUXIRtRMShpYiiMcHtug3AiEA1niyt/dCYimB8pnEPb6BP0oJDhiNmHKiudpRwcXCqIw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":500928},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"436a4f82cf5afb8136702390e5da6c7139857072","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.13_1763896043306_0.6091169538873107","host":"s3://npm-registry-packages-npm-production"}},"1.0.14":{"name":"mcp-http-webhook","version":"1.0.14","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.14","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"0fee97c10111558e629927092c0a28f2608f1f0b","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.14.tgz","fileCount":85,"integrity":"sha512-3oqmcbCkVKg/pNHd0FsMFnG6et/wh1cGzl7RB2hKqaoVDGdpWu3mVjNSt8HzIbnCysvE57jRi9IIe08VmGpXHw==","signatures":[{"sig":"MEYCIQDsSKsOigx9FKRx5gQst0OlQ9Ma0hcaAPf8vWctl66y0gIhAP6NO7G8zCFC9zwpBdK1k7gxxFdX02YkKr+gNE29DF7E","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":505326},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"dc864822b4060a2921741ffd415eac8b4dcd1299","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.14_1763898891809_0.6082308458677919","host":"s3://npm-registry-packages-npm-production"}},"1.0.15":{"name":"mcp-http-webhook","version":"1.0.15","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.15","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"e8914b2aa983337f3bd211929a4eb5eb1376bf0d","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.15.tgz","fileCount":85,"integrity":"sha512-a6H9XlvKdZoUYl4kODXB7cqSopkmkgdl9P5gqxSP0fpzImk8y0NjbApZ5sKnoLxNHSZzUSCYCfzNBYK2Dh8Eyw==","signatures":[{"sig":"MEYCIQD9zhsPYRhJbC0A/mn75T+/Sb8Lt+UXscbbsXcTSSKy1AIhAKspSp5c0EE9a8b9piEx7gm7YV4K/1BevCz90eIlw3ok","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":505676},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"4dc2063117f1778a87e96217858936a88a6f7c40","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.15_1763899540159_0.28851498378632234","host":"s3://npm-registry-packages-npm-production"}},"1.0.16":{"name":"mcp-http-webhook","version":"1.0.16","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.16","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"2f1a134898fbb04c07c4497065a270d6277debb1","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.16.tgz","fileCount":85,"integrity":"sha512-36bzKgnXXuM+ZAkYLnoA9g0gCT6shaRVtSlq3cfMvLYi3PsUWugMK4vzUVYcaxyHqABNN5c32cxsZy7okwl7qw==","signatures":[{"sig":"MEQCICuZpmWt2o72WszS7r4WIbQGlk1oIOukVpzEzqbVDRj/AiB1uBEs91dYXyutGIl+/6BqnZ2AKdR+vvJIVYrMJcbDXA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":506613},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"71793b18788c95941ecca84f43f7a7fe84c87544","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.16_1763901168822_0.5272286424774699","host":"s3://npm-registry-packages-npm-production"}},"1.0.17":{"name":"mcp-http-webhook","version":"1.0.17","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.17","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"98d8b0ac83a78e8388fab9184820955f9c5bad14","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.17.tgz","fileCount":85,"integrity":"sha512-+IvRXk8+Vx+lLF+rc3EzZ+eXg3kFGzGGii280mPQe1Q1jA91KqJZjKwd2TQXKUki9xEVfs08D8sa3s/h9Wwo5A==","signatures":[{"sig":"MEYCIQDirkJwlZF7JPmKBgBNDveCzXI+XVweUy/ptDhvLLrePgIhANT1f3B6EzxCNs3tDpOKvNlw/RdvM4T1Pv7b9GPj4ztF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":517728},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"8a40a6969899ff9739c5a9b3156d149b591003cd","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.17_1763903792494_0.5053185102910878","host":"s3://npm-registry-packages-npm-production"}},"1.0.18":{"name":"mcp-http-webhook","version":"1.0.18","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.18","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"ceb18bea6b51e227ddac0cdf61134db7195c46b1","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.18.tgz","fileCount":85,"integrity":"sha512-p5uvnEeB8qUYoc3EiR1nEpFY2I3URaX8ce0eaLhB22gB371w62zIXa9P0DAdMf2Vl16f7xUDVNz6vh7cfeTrCA==","signatures":[{"sig":"MEQCHyCZvt2ppdq0/885vxC17OWP9vLURczAlpIWU4Wbi/gCIQDHUUR8DHDF66YaeqDBX1n+e2iCkbe7LFnBFzPhg2QZJg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":519128},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0ff67fea3d71eb9079e6b1b2f10ed1f1f3eadd70","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.18_1763904061699_0.050399513581753874","host":"s3://npm-registry-packages-npm-production"}},"1.0.19":{"name":"mcp-http-webhook","version":"1.0.19","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.19","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"67d52273d055ac347f2c9e7ef5d07d09f407c8f8","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.19.tgz","fileCount":85,"integrity":"sha512-iIPSj+mJeFVJ+Dkd2NLohNhIuxkzSeuwL9+E91C3JOG/WIsOMDRXjJOMBiJsq0/lpCDnTNePJ4gZsumwmm2Iqw==","signatures":[{"sig":"MEYCIQDofiVn1pk5v6VDBy8GQUb0slqHwIibmWdtamGu9N16UwIhAIjL8Vqu3ffUpuDaNo32oFmY7Oker8pNQ+7Eg7JqFTgq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":501583},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"6c25711eadbc87bc0475addbdc4a33f97e1b7010","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.19_1763904298799_0.7370745464768031","host":"s3://npm-registry-packages-npm-production"}},"1.0.20":{"name":"mcp-http-webhook","version":"1.0.20","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.20","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"fe01e7e55363340249d422793cd23db789c13e7b","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.20.tgz","fileCount":85,"integrity":"sha512-ltuGXq3rAYChAFiKcGoVGFQdzI5kaXdwgfwXgFckY6IiYYE6gggKbCvxBabvK4xrMP8XOhkL9rWkQPmWCMNWzw==","signatures":[{"sig":"MEUCIC0Ft6X3hqC2gLKLbcwlYQXKaNVx7Fhg56ia+DdmbK2/AiEAl1MhgXliNYQ8Ao9iDAX3VqHxEI31cwL/BToI3XZgIV8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":511415},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"7fb732cb88465b9833297f205a51be17e82d0c58","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.20_1763904786752_0.4158923896659448","host":"s3://npm-registry-packages-npm-production"}},"1.0.21":{"name":"mcp-http-webhook","version":"1.0.21","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.21","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"f0b57bd8cde333b13b4318d8f397193eda2e628f","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.21.tgz","fileCount":85,"integrity":"sha512-kJrTQHUUhxhCf9fWd75Fvs0YsN22+IQXMgf9mvMT/U30cniygnH7FzqR6gQeheIozS2E5gEfMhkBd6020wU2pQ==","signatures":[{"sig":"MEYCIQDL89A89Zk4LF7qJONRiifsepy5PVphmD00EXqrZkKBLQIhAMge3Ut5l47wvRsGi3o+pHTCbyCG490SZAhlAnVcAOvx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":512492},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"933ca5edaede8c1ab20c8ac09b7fbba22e8243bd","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.21_1763905407181_0.9332753882825704","host":"s3://npm-registry-packages-npm-production"}},"1.0.22":{"name":"mcp-http-webhook","version":"1.0.22","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.22","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"4ac2405b56a1cdf6de1b500ee0e118329133ff3b","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.22.tgz","fileCount":85,"integrity":"sha512-c/6DluWACy9TQlSfiaKWYjT9XKHrvJyVhGJWciwaN0l6R3T9J8m3es4HZnmwOIsV4OLFLosFFFzzhliJiFylgw==","signatures":[{"sig":"MEYCIQCc4q5vi4QJlv30k4d9c3Xcbd2AKeNiS8uMY3akGtu9/wIhALwhPTi501EAxRu6Qmqor8Rrvq8JOkWIjLA0s5Xx2pq8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":524326},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"96a59d45ce09cc179f920cbf3b35feab4edf48eb","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.22.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.22_1763973256544_0.7009359271136062","host":"s3://npm-registry-packages-npm-production"}},"1.0.23":{"name":"mcp-http-webhook","version":"1.0.23","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.23","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"725f012198aca3089e47aba866e2db3476f836b4","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.23.tgz","fileCount":85,"integrity":"sha512-nm6Qa5wq0a0xZ75NnmpHyarlsJpWmM29zA3Q62axhcj81kWiG5mz2taf6ojVJPW9SRIjBYOMSiuIXrVOSr1e5g==","signatures":[{"sig":"MEQCIE6cw289RJ1nVW98aFBFVYzDGzLIARB16ZlM7Zxrl5P4AiAQpYsFoV9ep5UqH8dCE0RXgJTsPrBYB/c/k/wQpN7jKA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":524667},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"96a59d45ce09cc179f920cbf3b35feab4edf48eb","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.22.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.23_1763974989264_0.7417333660267431","host":"s3://npm-registry-packages-npm-production"}},"1.0.24":{"name":"mcp-http-webhook","version":"1.0.24","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.24","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"667ce8070504859d1685672749b5132644da3be4","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.24.tgz","fileCount":85,"integrity":"sha512-qnH5lRhZxRTDaO76jSG1eK+G1636nMspC2c6OTN7ifZyrgUWMeYZP9jB9NZ+hPso+bJLEcrs6ah/9BSOlQG7dg==","signatures":[{"sig":"MEUCIEj2tEmndLSmwe8DR+OfPhN9C5mFBcQjW9IIusfPHTJvAiEAwYjUN8UqbQj9Xb5cZXYP+K/+1bOuPgCMYIak7H/fHrc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":525503},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"96a59d45ce09cc179f920cbf3b35feab4edf48eb","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.22.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.24_1763975300730_0.2867135344935732","host":"s3://npm-registry-packages-npm-production"}},"1.0.25":{"name":"mcp-http-webhook","version":"1.0.25","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.25","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"d2398385f52b3e640744479b1a7f3469e7c04c11","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.25.tgz","fileCount":85,"integrity":"sha512-LhZRLWi61D7LQ4YP6VmbsAdN8Mz5fumHsMs3UgTngMXTZyPkkdtRs2y2D61cG1HDV7RRY49x65t8fMMTWH5GFg==","signatures":[{"sig":"MEYCIQCS2zpWxFv/5hv8m2b5TnfAgiA5sY4kSor403CKzNUJbAIhAOhIEdpVGSAUEJdO4DmAH8qTQX8yRgKggPEN4sB9YgUv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":525545},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"96a59d45ce09cc179f920cbf3b35feab4edf48eb","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.3.0","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.1.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.22.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.25_1763975713889_0.18158577914148255","host":"s3://npm-registry-packages-npm-production"}},"1.0.26":{"name":"mcp-http-webhook","version":"1.0.26","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.26","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"8e63d4f0dfa89a74db8931cde7ad702fe0966736","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.26.tgz","fileCount":86,"integrity":"sha512-fwB4W2PE0tzlLEvQkNfOJW5jESzGWUMESuWb2QDx9/6C6fkVrtEOlkNtdcQTK39Dh5ben23F2GaCR4HGCq+G+w==","signatures":[{"sig":"MEUCIAnHJaznXbrnz5M8JGvPyvZiBDHFt34A71LaZ6h5ypVkAiEA9PfpAOVXj/drhrWwzWweXgzdK+qvCPIhzDXgdtO/b5g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":554337},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"194c880547a3b766f4b6b9d41c153a060706c661","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.6.2","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.22.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.26_1769767041749_0.6849525850085416","host":"s3://npm-registry-packages-npm-production"}},"1.0.27":{"name":"mcp-http-webhook","version":"1.0.27","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.27","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"9eac10282e27845aa7f9e3d74729a78be16c1805","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.27.tgz","fileCount":86,"integrity":"sha512-1rX34Biu35728aCXWOe6Xgrsp6Ap7Ek10HZ+6H5i48K4Ah+9U+GhZUVweI0x6+z7zTWPAro7UdMUBKBVP92P/w==","signatures":[{"sig":"MEYCIQDJCAVM76T7YSUVw2SXTt/CZ9yHzKwPQnTJnTxDqfv4GwIhAMlG5/CeR4qiRCaK6IdFrZqTjz2O3AAADF+BS/K09PYd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":554794},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"4c482e0b9dc7080183c46bc9224d6967b76b32c4","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.6.2","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^3.22.0","cors":"^2.8.5","ngrok":"^4.3.3","nanoid":"^5.0.0","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.22.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.27_1769861445960_0.18541976859986997","host":"s3://npm-registry-packages-npm-production"}},"1.0.28":{"name":"mcp-http-webhook","version":"1.0.28","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.28","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"0ff7878dd045247f8947e0df5ea6083a78402f1c","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.28.tgz","fileCount":86,"integrity":"sha512-wuDlfOjgA9ymI+fZUadbLf0O6yRjejj10oaAORkm9KP1eIfTqwrkH6eLlVE171yZ3p1BNAebqfXeKxH0juhNuA==","signatures":[{"sig":"MEQCIA5xkyo+RBik/Q+3G7Xab3PraGPu6guV55uJBey7BXXUAiA/TonX2cCSvNm4aKpb4iDsgVtqZc8Nk4Cids94jjMs3Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":555773},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"8366330da3f9ebd739725f893940a0d769ba3896","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.6.2","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.0.0","cors":"^2.8.5","ngrok":"^4.3.3","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","express":"^4.18.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@modelcontextprotocol/sdk":"^1.26.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.26.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.28_1770480174472_0.5582741238445645","host":"s3://npm-registry-packages-npm-production"}},"1.0.29":{"name":"mcp-http-webhook","version":"1.0.29","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.29","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"1d2faf5bc14b073363f0216d1f5a497dde9f2380","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.29.tgz","fileCount":86,"integrity":"sha512-BZuZs/wxBfajccZ4ecIt0hJagseMg3Gn/4a+J639HyblY6m3WMTYLX5K7GONISgnS+IbPkVHBJgJ0TXCdrpfLg==","signatures":[{"sig":"MEUCIEwMI1bgtF4Kj6Kw1DxBiCKEnV4MGr5tTmzp0LQ3nXfoAiEA53Utb9uVxKsHBokw5+FpsVdIEVlz3Fc/q0vjiH1i5nU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":557308},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"84ca4d06d43b2b2b653a32b9c8001e0d8875902d","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.6.2","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.0.0","cors":"^2.8.5","ngrok":"^4.3.3","googleapis":"^144.0.0","@ngrok/ngrok":"^1.5.2","@octokit/rest":"^20.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","express":"^4.18.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@modelcontextprotocol/sdk":"^1.26.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.26.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.29_1770808717823_0.4342771074990397","host":"s3://npm-registry-packages-npm-production"}},"1.0.30":{"name":"mcp-http-webhook","version":"1.0.30","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.30","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"b5191a8714ca6c35184992bb93f39ff782f8cce7","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.30.tgz","fileCount":71,"integrity":"sha512-jjsgci9QqH/VbQYNZaItqRiFP6z+1IzaHiG90CqHWO54SlSJRzJty4Nb78wuL9sxSPba7Y2HO68a2tIhafDf5g==","signatures":[{"sig":"MEYCIQCaajdHF3qDqW/cts6AimvbMN+eOFFQEKb942sWcMPAbAIhALz9xAUtPKUzfEB3jkAjmUl1nET27STfX1sMcDLSj3lH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":434370},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"758c940a665e0724db871450a59380a106cff53c","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.6.2","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.0.0","cors":"^2.8.5"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","express":"^4.18.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@modelcontextprotocol/sdk":"^1.26.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.26.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.30_1773060226708_0.7117895836361543","host":"s3://npm-registry-packages-npm-production"}},"1.0.31":{"name":"mcp-http-webhook","version":"1.0.31","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.31","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"34c2b2c41aab92d41b46a3fe15db431a228dbcda","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.31.tgz","fileCount":71,"integrity":"sha512-zzqYzs9J23H3wXNmKpeDU5A82RItdJ5gJ1yLSyDYPH1dPYt1AgBNyitb4N+QGiEiBCYuapgHzKbhLp9XtXrxsQ==","signatures":[{"sig":"MEUCIGvKZVuAudZFEaraLj9pRyc6ZzTKSxLibSRaXvcR5iAtAiEAkAdNIaXQ41PdmE4Xi/nkS8NxgnEaoh9RohUjkGepa6w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":438926},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"e722710040179655b7ba9f1e8c08ed7635361f66","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.6.2","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.0.0","cors":"^2.8.5"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","express":"^4.18.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@types/supertest":"^6.0.2","@modelcontextprotocol/sdk":"^1.26.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.26.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.31_1774283892650_0.2581741086549765","host":"s3://npm-registry-packages-npm-production"}},"1.0.32":{"name":"mcp-http-webhook","version":"1.0.32","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","_id":"mcp-http-webhook@1.0.32","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"dist":{"shasum":"ac28858383f418b99a151fcaa965da95c8618c7a","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.32.tgz","fileCount":71,"integrity":"sha512-jBjz3B4E/TsmrxaOCufg4/VM6qVysnveAXadJ7xuyW2yf4h5CNfrE/3Fel5skylniSpqKI8ra2ssDLDyjH9vdw==","signatures":[{"sig":"MEUCIAbNcmT6s5ml/i9L3ksucyRsfXUrT7JTJKanKacSDFHgAiEAnvKe6X+riMng5vQhHo/addOaBv+l8kvaZFL1r582QZQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":441451},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0192cb9d64969c4970a6270804aa2bf8991d8bc1","scripts":{"dev":"tsc --watch","lint":"eslint src --ext .ts","test":"jest","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","type-check":"tsc --noEmit","prepublishOnly":"npm run lint && npm run type-check"},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"_npmVersion":"11.6.2","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.0.0","cors":"^2.8.5"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","eslint":"^8.0.0","express":"^4.18.0","ts-jest":"^29.1.0","prettier":"^3.0.0","supertest":"^7.1.4","typescript":"^5.0.0","@types/cors":"^2.8.19","@types/jest":"^29.5.0","@types/node":"^20.0.0","@types/express":"^4.17.21","@types/supertest":"^6.0.2","@modelcontextprotocol/sdk":"^1.26.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"peerDependencies":{"express":"^4.18.0","@modelcontextprotocol/sdk":"^1.26.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-http-webhook_1.0.32_1774630974814_0.34412217923205324","host":"s3://npm-registry-packages-npm-production"}},"1.0.33":{"name":"mcp-http-webhook","version":"1.0.33","description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","dev":"tsc --watch","test":"jest","lint":"eslint src --ext .ts","format":"prettier --write \"src/**/*.ts\"","type-check":"tsc --noEmit","prepare":"npm run build","prepublishOnly":"npm run lint && npm run type-check"},"keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"author":{"name":"Your Organization"},"license":"MIT","peerDependencies":{"@modelcontextprotocol/sdk":"^1.26.0","express":"^4.18.0"},"dependencies":{"cors":"^2.8.5","zod":"^4.0.0"},"devDependencies":{"@modelcontextprotocol/sdk":"^1.26.0","@types/cors":"^2.8.19","@types/express":"^4.17.21","@types/jest":"^29.5.0","@types/node":"^20.0.0","@typescript-eslint/eslint-plugin":"^6.0.0","@typescript-eslint/parser":"^6.0.0","eslint":"^8.0.0","express":"^4.18.0","jest":"^29.5.0","prettier":"^3.0.0","@types/supertest":"^6.0.2","supertest":"^7.1.4","ts-jest":"^29.1.0","typescript":"^5.0.0"},"optionalDependencies":{"ioredis":"^5.3.0","prom-client":"^15.0.0"},"gitHead":"ea4fe588d3255ae3bcc5dcfac266065e75b1ab4f","_id":"mcp-http-webhook@1.0.33","_nodeVersion":"24.12.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-pVoBRxjzSgOQPqDPe2CD3xsIcHRA7nXKASHaftNUrzNRv36CVtt6jMgCKnaSBMmI48KNIHC+EEq3uXFiSGX3nQ==","shasum":"55d75fad4298b834672b5f319e614dff5792e516","tarball":"https://registry.npmjs.org/mcp-http-webhook/-/mcp-http-webhook-1.0.33.tgz","fileCount":71,"unpackedSize":449516,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCezKmevPBzGFFGIH1glcmNmLl4egs5SGSFW/Z8OLYCvwIgFcd87tyFWWjsGi9iLS4WbsXXMprlJy3NwiIAvPg20pU="}]},"_npmUser":{"name":"yspl","email":"ops@yoctotta.com"},"directories":{},"maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp-http-webhook_1.0.33_1775489500186_0.17089072882416456"},"_hasShrinkwrap":false}},"time":{"created":"2025-10-15T08:24:35.870Z","modified":"2026-04-06T15:31:40.447Z","1.0.0":"2025-10-15T08:24:36.049Z","1.0.1":"2025-10-17T15:40:07.117Z","1.0.2":"2025-10-19T12:21:37.468Z","1.0.3":"2025-10-21T13:41:55.420Z","1.0.4":"2025-10-24T11:05:20.325Z","1.0.5":"2025-10-25T09:46:27.311Z","1.0.6":"2025-10-30T16:01:45.002Z","1.0.7":"2025-11-21T09:45:45.312Z","1.0.8":"2025-11-23T08:42:35.220Z","1.0.9":"2025-11-23T09:01:55.286Z","1.0.10":"2025-11-23T09:10:53.291Z","1.0.11":"2025-11-23T09:22:27.696Z","1.0.12":"2025-11-23T09:27:01.476Z","1.0.13":"2025-11-23T11:07:23.498Z","1.0.14":"2025-11-23T11:54:52.025Z","1.0.15":"2025-11-23T12:05:40.445Z","1.0.16":"2025-11-23T12:32:49.003Z","1.0.17":"2025-11-23T13:16:32.698Z","1.0.18":"2025-11-23T13:21:01.946Z","1.0.19":"2025-11-23T13:24:59.041Z","1.0.20":"2025-11-23T13:33:06.981Z","1.0.21":"2025-11-23T13:43:27.455Z","1.0.22":"2025-11-24T08:34:16.769Z","1.0.23":"2025-11-24T09:03:09.494Z","1.0.24":"2025-11-24T09:08:20.910Z","1.0.25":"2025-11-24T09:15:14.121Z","1.0.26":"2026-01-30T09:57:21.961Z","1.0.27":"2026-01-31T12:10:46.139Z","1.0.28":"2026-02-07T16:02:54.657Z","1.0.29":"2026-02-11T11:18:37.994Z","1.0.30":"2026-03-09T12:43:46.875Z","1.0.31":"2026-03-23T16:38:12.830Z","1.0.32":"2026-03-27T17:02:54.997Z","1.0.33":"2026-04-06T15:31:40.351Z"},"author":{"name":"Your Organization"},"license":"MIT","keywords":["mcp","model-context-protocol","webhook","http","ai","llm"],"description":"Production-ready MCP server framework with HTTP + webhook-based subscriptions","maintainers":[{"name":"yspl","email":"ops@yoctotta.com"}],"readme":"# MCP HTTP Webhook Server Library\n\n![Version](https://img.shields.io/badge/version-1.0.0-blue.svg)\n![License](https://img.shields.io/badge/license-MIT-green.svg)\n\nProduction-ready TypeScript library for building Model Context Protocol (MCP) servers using the **official `@modelcontextprotocol/sdk`** with HTTP transport and webhook-based resource subscriptions.\n\n## ✨ Key Highlights\n\n- **🎯 Standard MCP Compliant**: Built on official `@modelcontextprotocol/sdk` - works with all MCP clients\n- **🔌 Universal Client Support**: Compatible with MCP Inspector, Claude Desktop, VS Code, Cursor, and more\n- **📡 Webhook Subscriptions**: Native support for third-party webhooks (GitHub, Google Drive, Slack, etc.)\n- **🚀 Horizontally Scalable**: Stateless HTTP design for trivial multi-instance deployment\n- **🔒 Production Ready**: Built-in retry logic, signature verification, and persistent storage\n- **📘 Type Safe**: Full TypeScript support with comprehensive type definitions\n- **💾 Flexible Storage**: Pluggable key-value store (Redis, in-memory, or custom)\n\n## 🆕 v1.0 Update\n\nThis library now uses the **standard MCP SDK** (`@modelcontextprotocol/sdk`) while preserving all webhook subscription, authentication, and persistence features.\n\n**[📖 Migration Guide](./MIGRATION_TO_SDK.md)** - Upgrading from custom protocol? Read this first!\n\n## 📦 Installation\n\n```bash\nnpm install mcp-http-webhook zod\n# or\npnpm add mcp-http-webhook zod\n# or\nyarn add mcp-http-webhook zod\n```\n\n### Peer Dependencies\n\n```bash\nnpm install @modelcontextprotocol/sdk express\n```\n\n### Optional Dependencies\n\n```bash\nnpm install ioredis        # For Redis store\nnpm install prom-client    # For Prometheus metrics\n```\n\n## 🎯 Quick Start\n\n```typescript\nimport { createMCPServer, InMemoryStore } from 'mcp-http-webhook';\n\nconst server = createMCPServer({\n  name: 'my-mcp-server',\n  version: '1.0.0',\n  publicUrl: 'https://mcp.example.com',\n  store: new InMemoryStore(),\n\n  tools: [\n    {\n      name: 'echo',\n      description: 'Echo back the input',\n      inputSchema: {\n        type: 'object',\n        properties: {\n          message: { type: 'string' }\n        },\n        required: ['message']\n      },\n      handler: async (input) => {\n        return { echo: input.message };\n      }\n    }\n  ],\n\n  resources: [\n    {\n      uri: 'example://resource',\n      name: 'Example Resource',\n      description: 'An example resource',\n      read: async (uri) => {\n        return { contents: [{ uri, text: 'Hello, World!' }] };\n      }\n    }\n  ]\n});\n\nawait server.start();\nconsole.log('Server running on http://localhost:3000');\n```\n\n## 🔌 Client Integration\n\n### With MCP Inspector\n\n```bash\nnpx @modelcontextprotocol/inspector http://localhost:3000/mcp\n```\n\n### With Claude Desktop / VS Code\n\nAdd to your MCP configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"my-server\": {\n      \"url\": \"http://localhost:3000/mcp\"\n    }\n  }\n}\n```\n\n## 📚 Documentation\n\n### Configuration\n\n```typescript\ninterface MCPServerConfig {\n  // Server Identity\n  name: string;\n  version: string;\n\n  // HTTP Configuration\n  port?: number;              // Default: 3000\n  host?: string;              // Default: '0.0.0.0'\n  basePath?: string;          // Default: '/mcp'\n  publicUrl: string;          // Required\n\n  // Core Components\n  tools: ToolDefinition[];\n  resources: ResourceDefinition[];\n  prompts?: PromptDefinition[];\n\n  // Storage (Required)\n  store: KeyValueStore;\n\n  // Authentication\n  authenticate?: (req: Request) => Promise<AuthContext>;\n\n  // Webhook Configuration\n  webhooks?: WebhookConfig;\n\n  // Logging\n  logger?: Logger;\n  logLevel?: 'debug' | 'info' | 'warn' | 'error';\n}\n```\n\n### Tools\n\nTools are functions that can be called by clients:\n\n```typescript\n{\n  name: 'create_issue',\n  description: 'Create a GitHub issue',\n  inputSchema: {\n    type: 'object',\n    properties: {\n      title: { type: 'string' },\n      body: { type: 'string' }\n    },\n    required: ['title']\n  },\n  handler: async (input, context) => {\n    // Your logic here\n    return { issue_id: 123 };\n  }\n}\n```\n\n### Resources\n\nResources represent data that can be read and subscribed to:\n\n```typescript\n{\n  uri: 'github://repo/{owner}/{repo}/issues',\n  name: 'GitHub Issues',\n  description: 'Repository issues',\n  \n  read: async (uri, context, options) => {\n    // Access pagination options\n    const page = options?.pagination?.page || 1;\n    const limit = options?.pagination?.limit || 10;\n    \n    return { \n      contents: [...],\n      pagination: {\n        page,\n        limit,\n        total: 100,\n        hasMore: true\n      }\n    };\n  },\n  \n  list: async (context, options) => {\n    // Pagination support in list\n    const page = options?.pagination?.page || 1;\n    const limit = options?.pagination?.limit || 10;\n    \n    return {\n      resources: [\n        { uri: '...', name: '...' }\n      ],\n      pagination: {\n        page,\n        limit,\n        total: 50,\n        hasMore: true\n      }\n    };\n  },\n  \n  subscription: {\n    onSubscribe: async (uri, subscriptionId, webhookUrl, context) => {\n      // Register webhook with third-party service\n      return { thirdPartyWebhookId: 'webhook_123' };\n    },\n    \n    onUnsubscribe: async (uri, subscriptionId, storedData, context) => {\n      // Remove webhook from third-party service\n    },\n    \n    onWebhook: async (subscriptionId, payload, headers) => {\n      // Process incoming webhook\n      return {\n        resourceUri: uri,\n        changeType: 'created',\n        data: { ... }\n      };\n    }\n  }\n}\n```\n\n### Storage\n\nThe library requires a key-value store for subscription persistence:\n\n**In-Memory (Development Only):**\n```typescript\nimport { InMemoryStore } from 'mcp-http-webhook/stores';\nconst store = new InMemoryStore();\n```\n\n**Redis:**\n```typescript\nimport { createRedisStore } from 'mcp-http-webhook/stores';\nimport Redis from 'ioredis';\n\nconst redis = new Redis(process.env.REDIS_URL);\nconst store = createRedisStore(redis);\n```\n\n**Custom Implementation:**\n```typescript\nimport { KeyValueStore } from 'mcp-http-webhook';\n\nclass MyStore implements KeyValueStore {\n  async get(key: string): Promise<string | null> { ... }\n  async set(key: string, value: string, ttl?: number): Promise<void> { ... }\n  async delete(key: string): Promise<void> { ... }\n  async scan?(pattern: string): Promise<string[]> { ... }\n}\n```\n\n### Pagination\n\nResources support pagination for both `list()` and `read()` operations:\n\n**Client Request:**\n```typescript\n// Send pagination params in _meta\n{\n  \"jsonrpc\": \"2.0\",\n  \"method\": \"resources/list\",\n  \"params\": {},\n  \"_meta\": {\n    \"page\": 1,\n    \"limit\": 10,\n    \"cursor\": \"optional-cursor\"\n  }\n}\n```\n\n**Server Implementation:**\n```typescript\n{\n  list: async (context, options) => {\n    const page = options?.pagination?.page || 1;\n    const limit = options?.pagination?.limit || 10;\n    \n    // Fetch paginated data\n    const { items, total } = await fetchItems(page, limit);\n    \n    return {\n      resources: items,\n      pagination: {\n        page,\n        limit,\n        total,\n        hasMore: page * limit < total,\n        nextCursor: 'next-page-token', // Optional\n      }\n    };\n  },\n  \n  read: async (uri, context, options) => {\n    // Pagination also works for large content in read()\n    const cursor = options?.pagination?.cursor;\n    const limit = options?.pagination?.limit || 50;\n    \n    return {\n      contents: paginatedData,\n      pagination: {\n        page: 1,\n        limit,\n        hasMore: true,\n        nextCursor: 'token-for-next-page',\n      }\n    };\n  }\n}\n```\n\n**Response Format:**\n```json\n{\n  \"resources\": [...],\n  \"_meta\": {\n    \"pagination\": {\n      \"page\": 1,\n      \"limit\": 10,\n      \"total\": 100,\n      \"hasMore\": true,\n      \"nextCursor\": \"...\",\n      \"prevCursor\": \"...\"\n    }\n  }\n}\n```\n\nSee [examples/pagination-example.ts](./examples/pagination-example.ts) for complete examples including cursor-based pagination.\n\n### Completions\n\nCompletions provide autocomplete suggestions for prompt arguments and resource URI parameters:\n\n**Prompt with Completion:**\n\n```typescript\n{\n  name: 'generate-code',\n  arguments: [\n    { name: 'language', required: true },\n    { name: 'framework', required: false }\n  ],\n  handler: async (args, context) => { /* ... */ },\n  \n  // Completion handler for arguments\n  completion: async (ref, argument, context) => {\n    if (argument === 'language') {\n      return [\n        { value: 'python', label: 'Python' },\n        { value: 'javascript', label: 'JavaScript' },\n        { value: 'typescript', label: 'TypeScript' }\n      ];\n    }\n    \n    // Context-aware: suggest frameworks based on language\n    if (argument === 'framework') {\n      const lang = ref.arguments?.language;\n      if (lang === 'python') {\n        return [\n          { value: 'django', label: 'Django' },\n          { value: 'flask', label: 'Flask' }\n        ];\n      }\n    }\n    \n    return [];\n  }\n}\n```\n\n**Resource with Completion:**\n\n```typescript\n{\n  uri: 'github://repos/{owner}/{repo}',\n  name: 'github-repos',\n  /* ... */\n  \n  // Completion for URI parameters\n  completion: async (ref, argument, context) => {\n    if (argument === 'owner') {\n      return [\n        { value: 'facebook', label: 'Facebook' },\n        { value: 'microsoft', label: 'Microsoft' }\n      ];\n    }\n    \n    if (argument === 'repo') {\n      // Get owner from current URI\n      const owner = ref.uri.match(/repos\\/([^/]+)/)?.[1];\n      // Return repos for that owner\n      return fetchReposForOwner(owner);\n    }\n    \n    return [];\n  }\n}\n```\n\n**Global Completion Handler:**\n\n```typescript\ncreateMCPServer({\n  // ...\n  completions: async (ref, argument, context) => {\n    // Fallback for any prompt/resource without specific handler\n    return [\n      { value: 'default', label: 'Default Value' }\n    ];\n  }\n});\n```\n\nSee [examples/completion-example.ts](./examples/completion-example.ts) for comprehensive completion examples.\n\n### Authentication\n\n```typescript\nauthenticate: async (req) => {\n  const token = req.headers.authorization?.replace('Bearer ', '');\n  \n  // Verify token\n  const payload = await verifyJWT(token);\n  \n  return {\n    userId: payload.sub,\n    // Add any custom context\n    permissions: payload.permissions\n  };\n}\n```\n\n### Webhooks\n\nConfigure webhook behavior:\n\n```typescript\nwebhooks: {\n  incomingPath: '/webhooks/incoming',\n  incomingSecret: process.env.WEBHOOK_SECRET,\n  \n  verifyIncomingSignature: (payload, signature, secret) => {\n    // Verify third-party webhook signature\n    return verifyHmacSignature(payload, signature, secret);\n  },\n  \n  outgoing: {\n    timeout: 5000,\n    retries: 3,\n    retryDelay: 1000,\n    \n    signPayload: (payload, secret) => {\n      // Sign outgoing notifications\n      return createHmacSignature(payload, secret);\n    }\n  }\n}\n```\n\n## 🔧 API Endpoints\n\nThe server automatically exposes these endpoints:\n\n### Health Checks\n- `GET /health` - Basic health check\n- `GET /ready` - Readiness check (includes store connectivity)\n\n### MCP Protocol\n- `POST /mcp/tools/list` - List available tools\n- `POST /mcp/tools/call` - Call a tool\n- `POST /mcp/resources/list` - List available resources\n- `POST /mcp/resources/read` - Read a resource\n- `POST /mcp/resources/subscribe` - Subscribe to resource changes\n- `POST /mcp/resources/unsubscribe` - Unsubscribe from resource\n- `POST /mcp/prompts/list` - List available prompts\n- `POST /mcp/prompts/get` - Get a prompt\n\n### Webhooks\n- `POST /webhooks/incoming/{subscriptionId}` - Receive third-party webhooks\n\n## 📖 Examples\n\nSee the [`examples/`](./examples) directory for complete examples:\n\n- **[basic-setup.ts](./examples/basic-setup.ts)** - Simple server with tools and resources\n- **[github-server.ts](./examples/github-server.ts)** - GitHub integration with webhooks\n\n## 🔒 Security\n\n### HTTPS Only in Production\n\n```typescript\n// Automatically enforced in production\npublicUrl: 'https://mcp.example.com'  // Must use HTTPS\n```\n\n### Signature Verification\n\nAlways verify webhook signatures:\n\n```typescript\nimport crypto from 'crypto';\n\nverifyIncomingSignature: (payload, signature, secret) => {\n  const hmac = crypto.createHmac('sha256', secret);\n  hmac.update(JSON.stringify(payload));\n  const expected = `sha256=${hmac.digest('hex')}`;\n  return crypto.timingSafeEqual(\n    Buffer.from(signature),\n    Buffer.from(expected)\n  );\n}\n```\n\n### Rate Limiting\n\nAdd rate limiting middleware:\n\n```typescript\nimport rateLimit from 'express-rate-limit';\n\nconst server = createMCPServer({\n  // ...\n  middleware: [\n    rateLimit({\n      windowMs: 15 * 60 * 1000,\n      max: 100\n    })\n  ]\n});\n```\n\n## 🚀 Deployment\n\n### Docker\n\n```dockerfile\nFROM node:20-alpine\nWORKDIR /app\nCOPY package*.json ./\nRUN npm ci --production\nCOPY . .\nRUN npm run build\nEXPOSE 3000\nCMD [\"node\", \"dist/index.js\"]\n```\n\n### Docker Compose\n\n```yaml\nversion: '3.8'\nservices:\n  mcp-server:\n    build: .\n    ports:\n      - \"3000:3000\"\n    environment:\n      - PUBLIC_URL=https://mcp.example.com\n      - REDIS_URL=redis://redis:6379\n    depends_on:\n      - redis\n  \n  redis:\n    image: redis:7-alpine\n    volumes:\n      - redis-data:/data\n\nvolumes:\n  redis-data:\n```\n\n### Environment Variables\n\n```bash\n# Server\nPORT=3000\nPUBLIC_URL=https://mcp.example.com\nNODE_ENV=production\n\n# Storage\nREDIS_URL=redis://localhost:6379\n\n# Webhooks\nWEBHOOK_SECRET=your-secret-here\n\n# Auth\nJWT_SECRET=your-jwt-secret\n```\n\n## 🧪 Testing\n\n```bash\n# Run tests\nnpm test\n\n# Run with coverage\nnpm test -- --coverage\n\n# Run specific test\nnpm test -- SubscriptionManager\n```\n\n## 📊 Monitoring\n\n### Logging\n\n```typescript\nimport winston from 'winston';\n\nconst logger = winston.createLogger({\n  level: 'info',\n  format: winston.format.json(),\n  transports: [\n    new winston.transports.Console()\n  ]\n});\n\nconst server = createMCPServer({\n  logger,\n  logLevel: 'info'\n});\n```\n\n### Metrics\n\nEnable Prometheus metrics:\n\n```typescript\nimport promClient from 'prom-client';\n\nconst register = new promClient.Registry();\npromClient.collectDefaultMetrics({ register });\n\nconst server = createMCPServer({\n  metrics: {\n    enabled: true,\n    registry: register\n  }\n});\n\n// Metrics available at GET /metrics\n```\n\n## 🤝 Contributing\n\nContributions are welcome! Please see [CONTRIBUTING.md](./CONTRIBUTING.md) for details.\n\n## 📄 License\n\nMIT License - see [LICENSE](./LICENSE) file for details.\n\n## 🔗 Links\n\n- [MCP Specification](https://spec.modelcontextprotocol.io/)\n- [MCP TypeScript SDK](https://github.com/modelcontextprotocol/typescript-sdk)\n- [Documentation](https://docs.mcp-http-webhook.dev)\n- [Examples](./examples)\n\n## 💬 Support\n\n- [GitHub Issues](https://github.com/your-org/mcp-http-webhook/issues)\n- [Discord Community](https://discord.gg/mcp-webhook)\n- [Stack Overflow](https://stackoverflow.com/questions/tagged/mcp-http-webhook)\n\n---\n\nMade with ❤️ by the MCP Community\n","readmeFilename":"README.md"}