{"_id":"@modelcontextprotocol/server-cohort-heatmap","_rev":"30-7661ab0ee80f5c7c434b6de8252edb3e","name":"@modelcontextprotocol/server-cohort-heatmap","dist-tags":{"latest":"2.0.3"},"versions":{"0.4.1":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"0.4.1","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@0.4.1","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"aeb855ae681dd6ada03044dffbb10157bfa3f638","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-0.4.1.tgz","fileCount":6,"integrity":"sha512-jb5xOvSFVnfdeO7SnlqRlhC4v5iSCBquwFPyxtWld290Ae8ihEShqgHE8PkoRtMFGNT/ljSlERJ9l/8/x3voZA==","signatures":[{"sig":"MEYCIQDJzfHKz3A4gTLX9ORLE2Wjjub+pkAJjNdUlMPdk8LVgwIhAKvy2Gny8pVT7YgsTrpKILpm+xQBW0u/BaSq/0YAiVOj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3022392},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"8c3b1daf7ec2ff88132827a16b6d8674e1e5b448","scripts":{"dev":"cross-env NODE_ENV=development concurrently 'npm run watch' 'npm run serve:http'","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch server.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun server.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.4","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.24.0","@modelcontextprotocol/ext-apps":"^0.4.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"^22.0.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_0.4.1_1768510201203_0.6451659550732516","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"0.4.2","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@0.4.2","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"771809fffa89b376611b3d3987a846f3db2f296d","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-0.4.2.tgz","fileCount":6,"integrity":"sha512-yETw2EOOmnN9DfJJQ4z4uSWyAw2Q28MpbOwsCgH6etARBGQgL9we1igXb5pjhLGKGZJI+oQIPd9Lnis3D6fVjw==","signatures":[{"sig":"MEQCID/G01eNN6QwHgF57WR4UVG11KC988oXrhpjK3rA3fZKAiB7jVpXwCJRRU+69chhVT7/Vox6huCCeE00gBqugmvlKg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@0.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3340978},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"2d4311a25d73d12be387b9837faa75a95e0f4a26","scripts":{"dev":"cross-env NODE_ENV=development concurrently 'npm run watch' 'npm run serve:http'","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun server.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.4","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.24.0","@modelcontextprotocol/ext-apps":"../.."},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_0.4.2_1769438765592_0.6275459811067075","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.0.0","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.0.0","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"d38012206b8b5901470f1f2032472f2e17c634fc","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.0.0.tgz","fileCount":6,"integrity":"sha512-K8oo+H5GlSqEMRueYaoD7quBHtfyOXe1QffkDjCKsWPXw2rsM+LmGWoA6I1Z4s0mkaro/YtbBInjT9ebEZzUww==","signatures":[{"sig":"MEUCIQCyBg0R84d7yc9wJVT3JNhX66/w0DHiRS6SDFohMpzNMQIgSwITCxIdVWg/XfnU6hyzCUtSGwb2B8cCaChX6MZkpd8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3341347},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"298e884ec3f02daba085acdb02042d73bd00b355","scripts":{"dev":"cross-env NODE_ENV=development concurrently 'npm run watch' 'npm run serve:http'","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun server.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.4","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.24.0","@modelcontextprotocol/ext-apps":"../.."},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.0.0_1769448964153_0.9796168040968514","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.0.1","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.0.1","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"c07e5fe77112cb0b67bac230d984713361a2de0b","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.0.1.tgz","fileCount":6,"integrity":"sha512-Bbhbldth2rhL4mzzD6lsJck4/6Kmef1PdZw3Wtpe7XXv9UXp9RqPKa2UrWT5V0KymXNvo40I7A0GdA+mctLDJw==","signatures":[{"sig":"MEYCIQDJ6RP2j2YqWPNg+MK6MG5hqcFsgnwTRmrrZKfuzJoYBwIhAMT9hNmMTcQkOms3njSyEJsSeIXuse6nxicwsFUxwoyc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3341635},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"605e31b6c5b2665b95e83c49d23bd2bb2aa73aff","scripts":{"dev":"cross-env NODE_ENV=development concurrently 'npm run watch' 'npm run serve:http'","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun server.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.4","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.24.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.0.1_1769467079355_0.22015400698208687","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.1.0","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.1.0","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"90d0d72ebedac34c9adfac423d1693b6a35ff9c3","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.1.0.tgz","fileCount":6,"integrity":"sha512-7dGGDGOF9LJ2D5FPbRpVgcq70hyLJVJw9BndpZ872I/eA9cFqPwEvQnAXlOXmJRwujN4wezxIdGqsoGMkb/Ppg==","signatures":[{"sig":"MEYCIQCD017wxDXKJtrshm1tbrDP7b8YJ1VS0iq6LNlKtHpR/AIhAL0ni+Lw3P6t60hDSFhDaZdVbKYkoaf5p5uxU63uyySO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3341639},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"5bbf2778821217fe757b653ea84caf4cbf364d81","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun server.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.4","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.24.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.1.0_1771723452801_0.19518310918738857","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.1.1","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.1.1","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"6b7414857d3d289ad2e14601f675e1a8338b3ec4","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.1.1.tgz","fileCount":6,"integrity":"sha512-KvjJxTUwftILtKyl5mQmfJPHzij9E38MZOWmAQ9OcJhd/EO9w1rDvE5tuTXqiuc5CfpZBQkQ8QUG5kqcKjLqjA==","signatures":[{"sig":"MEUCICNeaxZaDUKLluam8v+SnHA7nbjF/LPuvsIaRG9kx35lAiEAhePG5lWYIYV4ZYecewphNusAzHjCtaGRTKf2WwayEug=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3341639},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"ec389f473b7d6107a003f820a1c39a7eddbbfc3d","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun server.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.4","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.24.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.1.1_1771900999631_0.4583435786403267","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.1.2","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.1.2","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"dce2f0b3eff7684e418b361ca58e54447bb4efb2","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.1.2.tgz","fileCount":6,"integrity":"sha512-lklPeytjgw+/wR2eF84vN00M+mXcSqui87Lh5CGLJuPdN0dk+YO7tOP+V+sLUvWko88CL32dG9lyMqd/C5Kj3A==","signatures":[{"sig":"MEUCIQDg1ajtH3fM529NB0FqtzSBmW23WR4CHP9UaHE5UrYjXgIgU2CiMqEzbziM1q/e5i8QRo2Y9KzWrGsQqHBmJTl0v70=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3346600},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"5373f01d6f55114ec0a3eb9c864fea6f233589bc","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun server.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.4","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.24.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.1.2_1772033663704_0.5981071043302812","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.2.0","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.2.0","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"6cada26375c029c8721f4399a3c7620f2a34449d","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.2.0.tgz","fileCount":6,"integrity":"sha512-yb5VYpUI5uWkLjj6wC/FrfUi8spYybVrGdE2sXLowKkHEZA9xCnrJFTuHjpfqgERaByoMrDQhr7SiHtqcRgrHg==","signatures":[{"sig":"MEUCIQC2jANjYH9H7KYbKECa6rMJ/z3Hsz6DR6SpqR/6ZaVGAgIgfReZ7FnR35243zcuGs6vkmdP+bcodzOJTACAIYO9EaM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3347633},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"6b12fff1d0ab151a3b8cea44b3910465e2285f05","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.4","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.24.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.2.0_1772812603799_0.7604084731330834","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.2.1","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.2.1","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"f7030a0580ef4f02b9df77769f92c88814d46381","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.2.1.tgz","fileCount":6,"integrity":"sha512-H8XEt69P4QB3oIvmO+GvGWQJ1aNLEJo/OJ46OWl3igoYJEoojyBXRFdYOLT+z/d7hAndurw49Fi0cWImUEp2gg==","signatures":[{"sig":"MEUCIARoj1P8GUHfojTsvMXZBLnocHY6D0kvGnlGWcOY8+jkAiEAup6IAv9VzuOXAM4Mqzo2CoKrAS0+CEV2corX+YgkBS0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2744238},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"1aa3c9c106666345b82f1bd5d4d21a5ee14ba1db","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.4","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.24.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.2.1_1773164922565_0.5861291248805867","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.2.2","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.2.2","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"4f6692ba6cd37c4996f3ad388ab50f0803b748cb","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.2.2.tgz","fileCount":6,"integrity":"sha512-6Wr7FUPHJLf5VQ5tZuMnoQVxUoJBtwShI7l1scOxItnlzwUKcKqA6NhoSIFwDPBzejoBr0vg6zMcvkoVmxF7Ag==","signatures":[{"sig":"MEUCICrhnESIxcM6GvghrTx+j9T1VbFGVWIfh8wYWQP6En+VAiEAw5OwE9Ki4nt7HPJsYPGmClSYX9zFDDEIbNak5yBRoO8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2744237},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"704b6e0af9ec1b3d4a351f12fb2596d2da1e0818","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.4","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.24.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.2.2_1773170568049_0.9661375674821917","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.3.0","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.3.0","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"931727e250be9dd7d17a484b58683e7e398aac6f","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.3.0.tgz","fileCount":6,"integrity":"sha512-oLQm4OgBw4Ft0SABNScplHUVhdYlJql1ffiPwPiioXTPdNmt5oh+jM+lTcRzxvuuzT1I1JbLytuC/D01npKAPA==","signatures":[{"sig":"MEQCIBLX6Zj4Ms9dgG6gEXdVIZKvrn1tiJ0tpKuNBMhEUyH0AiAmzSNknDKY2obHmNn58yIX61va7yeiMazgIj4HO4bddg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2744697},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"6723c8ff106dfd6eb312d1ce31353eb80c2f7000","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.4","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.24.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.3.0_1774297363674_0.292899197692033","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.3.1","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.3.1","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"4bd1becc44d3e031eab6b003b967a168d4b94a38","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.3.1.tgz","fileCount":6,"integrity":"sha512-/GwKpGNkWrF2iodDcpiPUNP8B598Wou4yqY4L3gC3Vn0kJKq21s57O7rnSy0ZXx58tbHNr+4NG9KjEs3DqNuzg==","signatures":[{"sig":"MEQCIFhtGqHc4U0CeJKFf1nI/+zufCEpNFgiiF9Uhwy+ML2fAiAHLmfTr+N1MJWvf8LrPexqtPqsB1dnvy6MiodE/vhaDA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2744697},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"e8ca8594295807dfa33111b6abef738e677acd91","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.4","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.24.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.3.1_1774297383888_0.7672701450918544","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.3.2","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.3.2","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"91458239f38edaebd131471e723e0b31b9ac9ab9","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.3.2.tgz","fileCount":6,"integrity":"sha512-YEq1L1TYbUC2UzkVWmP1mbxe73ZBpPAG/IBkl1MXIJtW3aEXMuKuePwmfqG5h9KROOTe6hHuJkVGJC8ITgeaTQ==","signatures":[{"sig":"MEQCIA+0uGmLDLlc8l6LgqELrGRJ5ZUaJkKp3oVing2CrqnPAiBj6vQkuVZhkn7sJyk3VEl1vo+Huik9Uaax3/ASy9T15g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2744501},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"14969c5da2fdbdef4284d2131b5ada4ba94aaca0","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.4","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.24.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.3.2_1774634050075_0.9251038838828995","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.4.0","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.4.0","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"8cbe280e60ebc2c699760f643a282bc3454f94c0","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.4.0.tgz","fileCount":6,"integrity":"sha512-d113bxy77P/Jr7GucHtypmpXekfQERFsrC/c8kWDjSaA7gNgelQiZ1C+V0vVvSfpNKVSyVxrMBTb8+f6SkB09g==","signatures":[{"sig":"MEYCIQDA+iQGblEvFvy+RgFcReo42aFnnQ+LoSPw1O7K8VT6LgIhAIvUMQyvSDj9tj1H+YZZaKkroe2mWYn2e75ezEzwFuhY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2760844},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"9da4a75ff60bcd127c494bbca98f7b22e87f95e7","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.4","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.29.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.4.0_1775101088714_0.038107693533181664","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.5.0","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.5.0","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"39d1432976d713ba42d39e1b641fb36cc0770e01","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.5.0.tgz","fileCount":6,"integrity":"sha512-dEL1YQurRmYj8DHDHYfwxVZtut1wi5Q2FZ3M4U+d54ltIsUYjCa1aBeD6vVVRuREqFJv48UHOZloYhWhWJZe/A==","signatures":[{"sig":"MEUCIQCqRZ1hDffYSm1HWzb6crgQGI9RKPbn0SMoN4rta7ZWBwIgAQr4DE/WDgmJCxTLb/moqvKC1bE81L+CA5HES35QEec=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2760844},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"621a70a7242bf9c76dcb89a61d785ab9bb75cd87","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.7","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.29.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.5.0_1775121227771_0.887498843814206","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.6.0","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.6.0","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"a043326cc20cd9f323d7aa3d1ddcd5f814ecab89","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.6.0.tgz","fileCount":6,"integrity":"sha512-IIpFm+tk0uiSzLLbdYtg/FZSYe95qTBNJSy3JuStFdgjbq/V6g6QpAEDgCJo84iH+uOUaey1PIKC86qQFHBQKQ==","signatures":[{"sig":"MEQCIBHXzd+6pWz2jnM6y11vvJ1sKLKLkSqEfbLP+MnQXCBfAiBg6XnolOcpHRg6dQZQkKGnblFOiKA5/HFy9VUMmnwoEg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2760952},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"01d826aea000a2f774d1d3e9b57fa352632c1c50","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.7","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.29.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.6.0_1776180394913_0.8692307477856065","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.7.0","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.7.0","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"3521f8f9c1790dc1516844be0e1b18777b7c6916","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.7.0.tgz","fileCount":6,"integrity":"sha512-SQ5l7NZsa3PzN8/lItIFo+9MqQdqQfHH0MNdVnQSX3iCUCa4MGnadg4KbgTNxTnCSwTv0g16luoYAWIDsNBWCA==","signatures":[{"sig":"MEYCIQD1ZHAA0NEmN+g1oB9ffTUJHS50UuS/EXtAhC32nOwG2QIhAN0STItuTnwnpxkK9Do24frRscBeKVjoP7HVNko/ZzbX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2993106},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"64b4fa16de4a4694dbec5514b866802a1825f919","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.7","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.29.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.7.0_1776784941365_0.7289168723911856","host":"s3://npm-registry-packages-npm-production"}},"1.7.1":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.7.1","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.7.1","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"3eab471c4944cf219177e991f5bd716d69bb3abd","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.7.1.tgz","fileCount":6,"integrity":"sha512-+dzWmUfO5vWLf0bUyGvMgEFuQ4/xXuBJz6I6UNf8I+3MrK5GJmZErrOeeIWQjgrZ/qow5oXOfvq3QFhsWNMf5w==","signatures":[{"sig":"MEQCIEMAzg+DktujdUZo0YbiCdiqZ1HZql0I4jEI+qzYM9ElAiA0mFI+jeaqDlHT+pLNyRbI6GNhUFKCOO/eJMLIAWvU+A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.7.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2993106},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"0008d3b78f94e37bb970673cbc33baecc481ae18","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.7","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.29.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.7.1_1777303256690_0.8186723005826773","host":"s3://npm-registry-packages-npm-production"}},"1.7.2":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.7.2","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.7.2","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"dfc203f70144acae57eb8edcdc553581d69e0be3","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.7.2.tgz","fileCount":6,"integrity":"sha512-QsqQ44EktNCg+zi9eNYGjyyeFUPKqQ9W54/GrC+cA8ygkAjhz4Q1teUV05HbnnYtExN83OjvBoXonZF/MHo/nA==","signatures":[{"sig":"MEUCIEhDo9eC8XoiDuPr9CSIfFDFkQ2RTfrVntbbznCgRf3nAiEAmPmQFrx9IITkTdZBupHrpZSAjtKUca0R34Ie5pRB2i8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.7.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2993106},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"9a37ad71827d076af06978fa7f7f510449687061","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.7","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.29.0","@modelcontextprotocol/ext-apps":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.7.2_1778868240348_0.11938122657383965","host":"s3://npm-registry-packages-npm-production"}},"1.7.3":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.7.3","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.7.3","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paulcarletonjr@gmail.com"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"experimentalworks@gmail.com"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik","email":"olivier.chafik@gmail.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"d1ea07d26227cfb755b6e250a43094dcb8ab8b60","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.7.3.tgz","fileCount":6,"integrity":"sha512-pRs3McQ4Fw3co5fdBqogNpTgsMZs7grps6FrluvtIWyDpxTT1dCmR0+7wXV52hSzKd9ovBhbmRDLYCnutvaAUA==","signatures":[{"sig":"MEUCIQDfjFspSyanhp3DiTEvQA5GANRjE17LP1N/Zsnq8dH7ewIgZIf1eTaJL1brPNyloMLpuCyPtEdrtzvDUyIZ3k4NfUg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.7.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2993106},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"7d4434e991516d91286dded5bb10266cd6cddd02","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik","email":"olivier.chafik@gmail.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.8","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.29.0","@modelcontextprotocol/ext-apps":"^1.7.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.7.3_1780313713151_0.3619980062160799","host":"s3://npm-registry-packages-npm-production"}},"1.7.4":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.7.4","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.7.4","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paul@modelcontextprotocol.io"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"david@modelcontextprotocol.io"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik-ant","email":"ochafik@anthropic.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"cdbeb3316e88b900051cc84bd2d862a5e41d9ea4","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.7.4.tgz","fileCount":6,"integrity":"sha512-uOJISI/GaITAoJKamQmMTABQDOVynMiXqRdcHYZu6OgsLcBGysyb1wChMTr6a00BNsa2O4GraJdpdY3Ucny1tQ==","signatures":[{"sig":"MEYCIQDRJlbe59rCFU8i20SZNZ+IrF2LBWJqNVm/40NFDKCkhQIhANrSf0+SOWU7sK4+If2gbT4o6OWcp2LAYgWBHDrfDPpI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.7.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2996868},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"ca1d29894fabbd1558885a9ec8620dcb01d7457e","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik-ant","email":"ochafik@anthropic.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.8","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.29.0","@modelcontextprotocol/ext-apps":"^1.7.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.7.4_1780670302225_0.4440994938456786","host":"s3://npm-registry-packages-npm-production"}},"1.7.5":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"1.7.5","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@1.7.5","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paul@modelcontextprotocol.io"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"david@modelcontextprotocol.io"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik-ant","email":"ochafik@anthropic.com"},{"name":"cliffhall","email":"cliff@futurescale.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"36c3711e5c8944a22894e76e2e7815db2673c016","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-1.7.5.tgz","fileCount":6,"integrity":"sha512-t1ZZAMabYidTIzdvlyckffNkp3w/us1j+PggzXQ+UP2tCmbgsIcJXJEaCfKDvLMU1sCClsBZXNXqaDViiGGAOg==","signatures":[{"sig":"MEUCIQDxL1wDTG+aUP8jL9w51lxYDvN+v0NG7aVz3m1xYjgSXwIgeHXdKEnOZVlwZQrAuvYBUbo5HAc4AITaCpfTeHb69qU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@1.7.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3006364},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"92f46a574568a3ddac7600343b7d3c4c4ed7b588","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik-ant","email":"ochafik@anthropic.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.8","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.1.13","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/sdk":"^1.29.0","@modelcontextprotocol/ext-apps":"^1.7.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_1.7.5_1784806181490_0.8057490292876857","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"2.0.0","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@2.0.0","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paul@modelcontextprotocol.io"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"david@modelcontextprotocol.io"},{"name":"ashwin-ant","email":"ashwin@anthropic.com"},{"name":"ochafik-ant","email":"ochafik@anthropic.com"},{"name":"cliffhall","email":"cliff@futurescale.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"eb4d99e71a4c4f28d6ce676c816ba83368662554","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-2.0.0.tgz","fileCount":6,"integrity":"sha512-nt1CnMPd0bthkWBCWxKkRbKxJaiaWbwvykLYXO8Kd88TsKRvcS7frNKzpYWHkke9WeooC4T6vlvtLyKiTaSnrg==","signatures":[{"sig":"MEYCIQDSQSM2Wre9Fg3tUlvEAH3dyIdLDyAbq7Ndd5Y1uPTlzQIhAOWyIKcQp3YByRqKXmVI/sDSDJ7P3jRmql1lLNQq+eR0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3377280},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"352f6ced4d80772e92b4e7a311854481a8d65b04","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik-ant","email":"ochafik@anthropic.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.8","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"^4.2.0","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/node":"2.0.0","@modelcontextprotocol/server":"2.0.0","@modelcontextprotocol/express":"2.0.0","@modelcontextprotocol/ext-apps":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_2.0.0_1788892205233_0.3285660656825704","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"2.0.1","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@2.0.1","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paul@modelcontextprotocol.io"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"david@modelcontextprotocol.io"},{"name":"ochafik-ant","email":"ochafik@anthropic.com"},{"name":"cliffhall","email":"cliff@futurescale.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"54fd73fb5907dae4c04e331b501f4fe1f2bd1989","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-2.0.1.tgz","fileCount":6,"integrity":"sha512-a49b85OxARJgTACXGHQ0Sr//G3XHcevJU5xYTaVbVecK2C6guo9Vgp0pWWPTwGyqrLMjju5x7o97AgjZ+VeOhA==","signatures":[{"sig":"MEQCIH97zYYcZHGIsGDPYqOTAYqyjFPbPhtZJ7mDtdmyN/q7AiBA7nNrkIYeepSHfkE6L8hbfhwEQPTPFt/gkZiKqrNynw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIDc/t3X+lqiJ5iQoAkK1BjxjMZ8avEu2LwomlLCftPJLAiEAlpVJYsrirVM5gVkPUQ/canwa/pW+20obgU1Apb/4CTg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@2.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3377422},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"a523ab30ee6ec27034aab38a30a51eaa921d5f6d","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik-ant","email":"ochafik@anthropic.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.8","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"^4.2.0","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/node":"2.0.0","@modelcontextprotocol/server":"2.0.0","@modelcontextprotocol/express":"2.0.0","@modelcontextprotocol/ext-apps":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_2.0.1_1790244463583_0.7591419641881936","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@modelcontextprotocol/server-cohort-heatmap","version":"2.0.2","license":"MIT","_id":"@modelcontextprotocol/server-cohort-heatmap@2.0.2","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paul@modelcontextprotocol.io"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"david@modelcontextprotocol.io"},{"name":"ochafik-ant","email":"ochafik@anthropic.com"},{"name":"cliffhall","email":"cliff@futurescale.com"}],"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"dist":{"shasum":"39ba6f49e0823236aeeb1bf26f7f46beec65470e","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-2.0.2.tgz","fileCount":6,"integrity":"sha512-CKLcezKAfVAiVlQ9Ezt5WQIEo3Iqd+oJ+TThaOLp0tZOZW1fZO+AWvU/Yy8vUTt0LcM1lowr2CO5FYy9s6d5mQ==","signatures":[{"sig":"MEUCIGo09iHZVSvQxszfbhVOPE77oRdrI6StqpPNBBvcyewMAiEA6cODE+bFAvX9ca+9mOSBKgLcxPy/sQ82gl3InrpJpHI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDmxvVYcN0Qd3GpOY8N0B/3kU/oU3/pJn5MtMKuMpitOAiBC4UX+AzyTzzeLiPhyzqZEp46L32XXuYBCzEwMVX67IQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@2.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3377422},"main":"dist/server.js","type":"module","types":"dist/server.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"fe9a9f1b95c46e8b63784e401ecb8d08eee7aea3","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"_npmUser":{"name":"ochafik-ant","email":"ochafik@anthropic.com"},"repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.8","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"^4.2.0","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/node":"2.0.0","@modelcontextprotocol/server":"2.0.0","@modelcontextprotocol/express":"2.0.0","@modelcontextprotocol/ext-apps":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"tmp":"tmp/server-cohort-heatmap_2.0.2_1790345436558_0.7921098621504807","host":"s3://npm-registry-packages-npm-production"}},"2.0.3":{"_id":"@modelcontextprotocol/server-cohort-heatmap@2.0.3","bin":{"mcp-cohort-heatmap-server":"dist/index.js"},"bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"dist":{"shasum":"bff832811e2ab5201a5e46dde0bce646b1118e0e","tarball":"https://registry.npmjs.org/@modelcontextprotocol/server-cohort-heatmap/-/server-cohort-heatmap-2.0.3.tgz","fileCount":6,"integrity":"sha512-v3s0ffAHfcutBqxBxYMPhI9rZV1p5mkqiFayCKBeK9VDexlyJiKZn4DuDXLx7BIxxRi+K+xk5edrRTlcoHt/qA==","signatures":[{"sig":"MEUCICQJaQQReDHwP85ux4HB+GcLM7e1+1meS/Nhc+un2b4VAiEAjQ19cCx43HZV9WvVKSx92DYsO1TSsI3yQW6a+wBCZTA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDb859rX8c87zlk2Q1h2ssAIf+DEweAhzrudr5bxM4jdQIgeAM1xXl0cexcuVBcTXVJVL3TBMQkwQ5zYMp+MvACx/w="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@modelcontextprotocol%2fserver-cohort-heatmap@2.0.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3380208},"main":"dist/server.js","name":"@modelcontextprotocol/server-cohort-heatmap","type":"module","types":"dist/server.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/server.d.ts","default":"./dist/server.js"}},"gitHead":"82221c0c8ce7661efa6771c9d461511b1650495f","license":"MIT","scripts":{"dev":"cross-env NODE_ENV=development concurrently \"npm run watch\" \"npm run serve:http\"","build":"tsc --noEmit && cross-env INPUT=mcp-app.html vite build && tsc -p tsconfig.server.json && bun build server.ts --outdir dist --target node && bun build main.ts --outfile dist/index.js --target node --external \"./server.js\" --banner \"#!/usr/bin/env node\"","serve":"bun --watch main.ts","start":"npm run start:http","watch":"cross-env INPUT=mcp-app.html vite build --watch","serve:http":"bun --watch main.ts","start:http":"cross-env NODE_ENV=development npm run build && npm run serve:http","serve:stdio":"bun main.ts --stdio","start:stdio":"cross-env NODE_ENV=development npm run build 1>&2 && npm run serve:stdio","prepublishOnly":"npm run build"},"version":"2.0.3","_npmUser":{"name":"ochafik-ant","email":"ochafik@anthropic.com"},"homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"_npmVersion":"10.9.8","description":"Cohort heatmap MCP App Server for retention analysis","directories":{},"maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paul@modelcontextprotocol.io"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"david@modelcontextprotocol.io"},{"name":"ochafik-ant","email":"ochafik@anthropic.com"},{"name":"cliffhall","email":"cliff@futurescale.com"}],"_nodeVersion":"22.23.2","dependencies":{"zod":"^4.2.0","cors":"^2.8.5","react":"^19.2.0","express":"^5.1.0","react-dom":"^19.2.0","@modelcontextprotocol/node":"2.0.0","@modelcontextprotocol/server":"2.0.0","@modelcontextprotocol/express":"2.0.0","@modelcontextprotocol/ext-apps":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.0.0","cross-env":"^10.1.0","typescript":"^5.9.3","@types/cors":"^2.8.19","@types/node":"22.10.0","@types/react":"^19.2.2","concurrently":"^9.2.1","@types/express":"^5.0.0","@types/react-dom":"^19.2.2","@vitejs/plugin-react":"^4.3.4","vite-plugin-singlefile":"^2.3.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/server-cohort-heatmap_2.0.3_1790352280179_0.7117430387008321"}}},"time":{"created":"2026-01-15T20:50:01.099Z","modified":"2026-09-25T16:04:40.649Z","0.4.1":"2026-01-15T20:50:01.424Z","0.4.2":"2026-01-26T14:46:05.808Z","1.0.0":"2026-01-26T17:36:04.429Z","1.0.1":"2026-01-26T22:37:59.554Z","1.1.0":"2026-02-22T01:24:13.003Z","1.1.1":"2026-02-24T02:43:19.842Z","1.1.2":"2026-02-25T15:34:23.915Z","1.2.0":"2026-03-06T15:56:44.044Z","1.2.1":"2026-03-10T17:48:42.744Z","1.2.2":"2026-03-10T19:22:48.277Z","1.3.0":"2026-03-23T20:22:43.966Z","1.3.1":"2026-03-23T20:23:04.148Z","1.3.2":"2026-03-27T17:54:10.249Z","1.4.0":"2026-04-02T03:38:08.914Z","1.5.0":"2026-04-02T09:13:47.914Z","1.6.0":"2026-04-14T15:26:35.172Z","1.7.0":"2026-04-21T15:22:21.541Z","1.7.1":"2026-04-27T15:20:56.933Z","1.7.2":"2026-05-15T18:04:00.580Z","1.7.3":"2026-06-01T11:35:13.336Z","1.7.4":"2026-06-05T14:38:22.453Z","1.7.5":"2026-07-23T11:29:41.633Z","2.0.0":"2026-09-08T18:30:05.570Z","2.0.1":"2026-09-24T10:07:43.714Z","2.0.2":"2026-09-25T14:10:36.706Z","2.0.3":"2026-09-25T16:04:40.292Z"},"bugs":{"url":"https://github.com/modelcontextprotocol/ext-apps/issues"},"license":"MIT","homepage":"https://github.com/modelcontextprotocol/ext-apps#readme","repository":{"url":"git+https://github.com/modelcontextprotocol/ext-apps.git","type":"git","directory":"examples/cohort-heatmap-server"},"description":"Cohort heatmap MCP App Server for retention analysis","maintainers":[{"name":"jspahrsummers","email":"justin@jspahrsummers.com"},{"name":"pcarleton","email":"paul@modelcontextprotocol.io"},{"name":"fweinberger","email":"fweinberger@anthropic.com"},{"name":"thedsp","email":"david@modelcontextprotocol.io"},{"name":"ochafik-ant","email":"ochafik@anthropic.com"},{"name":"cliffhall","email":"cliff@futurescale.com"}],"readme":"# Example: Cohort Heatmap App\n\nA demo MCP App that displays cohort retention data as an interactive heatmap, showing customer retention over time by signup month.\n\n<table>\n  <tr>\n    <td><a href=\"https://apps.extensions.modelcontextprotocol.io/screenshots/cohort-heatmap-server/01-initial-view.png\"><img src=\"https://apps.extensions.modelcontextprotocol.io/screenshots/cohort-heatmap-server/01-initial-view.png\" alt=\"Initial view\" width=\"100%\"></a></td>\n    <td><a href=\"https://apps.extensions.modelcontextprotocol.io/screenshots/cohort-heatmap-server/02-hover-state.png\"><img src=\"https://apps.extensions.modelcontextprotocol.io/screenshots/cohort-heatmap-server/02-hover-state.png\" alt=\"Hover state\" width=\"100%\"></a></td>\n    <td><a href=\"https://apps.extensions.modelcontextprotocol.io/screenshots/cohort-heatmap-server/03-low-retention-hover.png\"><img src=\"https://apps.extensions.modelcontextprotocol.io/screenshots/cohort-heatmap-server/03-low-retention-hover.png\" alt=\"Low retention hover\" width=\"100%\"></a></td>\n  </tr>\n</table>\n\n## MCP Client Configuration\n\nAdd to your MCP client configuration (stdio transport):\n\n```json\n{\n  \"mcpServers\": {\n    \"cohort-heatmap\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"-y\",\n        \"--silent\",\n        \"--registry=https://registry.npmjs.org/\",\n        \"@modelcontextprotocol/server-cohort-heatmap\",\n        \"--stdio\"\n      ]\n    }\n  }\n}\n```\n\n### Local Development\n\nTo test local modifications, use this configuration (replace `~/code/ext-apps` with your clone path):\n\n```json\n{\n  \"mcpServers\": {\n    \"cohort-heatmap\": {\n      \"command\": \"bash\",\n      \"args\": [\n        \"-c\",\n        \"cd ~/code/ext-apps/examples/cohort-heatmap-server && npm run build >&2 && node dist/index.js --stdio\"\n      ]\n    }\n  }\n}\n```\n\n## Features\n\n- **Cohort Retention Heatmap**: Color-coded grid showing retention percentages across cohorts and time periods\n- **Multiple Metrics**: Switch between Retention %, Revenue Retention, and Active Users\n- **Period Types**: View data by monthly or weekly intervals\n- **Interactive Exploration**: Hover cells for detailed tooltips, click to highlight rows/columns\n- **Color Scale**: Green (high retention) through yellow to red (low retention)\n- **Theme Support**: Adapts to light/dark mode preferences\n\n## Running\n\n1. Install dependencies:\n\n   ```bash\n   npm install\n   ```\n\n2. Build and start the server:\n\n   ```bash\n   npm run start:http  # for Streamable HTTP transport\n   # OR\n   npm run start:stdio  # for stdio transport\n   ```\n\n3. View using the [`basic-host`](https://github.com/modelcontextprotocol/ext-apps/tree/main/examples/basic-host) example or another MCP Apps-compatible host.\n\n## Architecture\n\n### Server (`server.ts`)\n\nExposes a single `get-cohort-data` tool that returns:\n\n- Cohort rows with signup month, original user count, and retention cells\n- Period headers and labels\n- Configurable parameters: metric type, period type, cohort count, max periods\n\nThe tool generates synthetic cohort data using an exponential decay model with configurable retention curves per metric type.\n\n### App (`src/mcp-app.tsx`)\n\n- Uses React for the heatmap visualization\n- Fetches data on mount and when filters change\n- Displays retention percentages in a grid with HSL color interpolation\n- Shows detailed tooltips on hover with user counts and exact retention values\n- Supports row/column highlighting on cell click\n","readmeFilename":"README.md"}