{"_id":"@slack/radar-mcp","_rev":"26-3bd7acb053f0a1dafaa91cdd865dff6a","name":"@slack/radar-mcp","dist-tags":{"latest":"1.21.0"},"versions":{"1.0.0":{"name":"@slack/radar-mcp","version":"1.0.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.0.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"slack-radar-mcp":"dist/index.js"},"dist":{"shasum":"71cb3af0db7ae58210f5cab98600d19813205076","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.0.0.tgz","fileCount":15,"integrity":"sha512-3g7HdXMr/hpyRqaCPVMJLkWbrapZArz5Smj6N3MWa9J45sY0aQRSCsrEGY3yiDPV1qTMbxHIhY82WRsEPjP/sA==","signatures":[{"sig":"MEQCIBq3Dj/4+CtSUAVDuuhOr5tD0laRMDxWL7qygpyW9n3iAiAC7Jeicc4wIN8ymTZTXB+hG5xQGhvjCQ8UJ+9Cd7nr9w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":46243},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"69edb0e7495eeb5c46e038cf18660b4de4e3fdf0","scripts":{"test":"npm run build && node --test tests/*.test.mjs","build":"tsc && chmod +x dist/index.js","clean":"rm -rf dist","start":"node dist/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","test:smoke":"npm run build && bash tests/smoke.sh"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.0.0_1776702158186_0.9516708315011158","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@slack/radar-mcp","version":"1.1.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.1.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"3fdbb242b9cc921f4572065870484b8766623d6c","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.1.0.tgz","fileCount":20,"integrity":"sha512-S8n+G7ZVFTnd4iDBICN4612IQ1Ra7m6VQ8fXM+laUOpVpgZA7itgzniRVlL0uddInq0ecb/W+AOrUENPhzaJqA==","signatures":[{"sig":"MEYCIQDfHJvQlf2t6Vp61HRZ6QuESkOa1X4g46KaeklAlUIX2gIhAKHmUodLTQ2Yr33rBvxFuq8mau8XsBkpKyb93wobfjpY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78228},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"18a05d28eb24823199968892a383dea713e9fd0c","scripts":{"test":"npm run build && node --test tests/*.test.mjs","build":"tsc && cp -r src/web/public dist/web/public && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.1.0_1776805416155_0.95327983078817","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@slack/radar-mcp","version":"1.1.1","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.1.1","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"5553d3cbd3f9e4c9283d64f1614a30958be8479e","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.1.1.tgz","fileCount":20,"integrity":"sha512-Z32NjW2Kle1eyJvSBcPvqlGeL1DNBIm9il4OvgT43CX4LtGa0d0rgTxBcuOHZnb87/O6AowzuDUky3q10gl2OQ==","signatures":[{"sig":"MEQCIBupLY93dw3SZreMU2zZAAThBQFo/hQCz1hgDfkP9cFaAiBqEcC6m9AjU982bMWdpydOHQ9GKlz4n846RG3zWhFdnw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78266},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"fa1c4c4947d440afcd93139c2fe36e89c702f9c4","scripts":{"test":"npm run build && node --test tests/*.test.mjs","build":"tsc && cp -r src/web/public dist/web/public && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.1.1_1776805768665_0.4313670510507006","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@slack/radar-mcp","version":"1.1.2","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.1.2","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"f4698a2c66129434c7a7c129fcddb2b630dd2124","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.1.2.tgz","fileCount":20,"integrity":"sha512-bED/tYOYZO7VqhW0ZhvRw1erts30EVaUXcNHxBK8pNHYH2t2CyTBMGV1qc65f6mWA5yFuuxMi/85zHb4BQ49vA==","signatures":[{"sig":"MEUCIQDXiYmvKTExTWwEHSIujU9WXJSd/HdfApBw5FJUtK92HQIgR/ltnt8lg+xnCsvE66Q2aBsz6oUWtX2q418CDDpKTDY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84771},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"4ed6b0d29ee86c57ef1eefa73c93b334fce6129c","scripts":{"test":"npm run build && node --test tests/*.test.mjs","build":"tsc && cp -r src/web/public dist/web/public && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.1.2_1776882739864_0.43025819779790697","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@slack/radar-mcp","version":"1.2.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.2.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"f1311e3c01ed473afb39af307248b55a6290374f","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.2.0.tgz","fileCount":22,"integrity":"sha512-vz0DZq0e3AQ4nxlUi5Shccj6qow94/zl50yfHjyawJ5Ss6+FciPi8/2o4iMHFIkMMq938Bqwmt+/UIO+y/8Nfg==","signatures":[{"sig":"MEUCIQDiTJNxc7xjvFkJXOgdP20xtHo31K4yfjJ5g5Fw2DfAUAIgW0VEymm/EU0unkLzBYH8/u1YLhXEyplWP53nlq0iUtk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":106658},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"08d8fc028d60ceb1e2d91e118c4b3d8fe93450d2","scripts":{"test":"npm run build && node --test tests/*.test.mjs","build":"tsc && cp -r src/web/public dist/web/public && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.2.0_1778188868562_0.5027627743304772","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@slack/radar-mcp","version":"1.3.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.3.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"398b4d4068e916b03f12c4d4585211bf85339312","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.3.0.tgz","fileCount":24,"integrity":"sha512-b4EpDQJVk64f7VV7DU9yFNnD/KJ0HZYijE3fsS4inRgRdLGAyhj4SasqWSYn66EPlSe0UPyczTwiu7kqBfM5MA==","signatures":[{"sig":"MEYCIQDX3gGhi2MW/kdllr3bmum9Il+0JB54l37hdVhjHLj/UAIhALb1I2Y8F6BwArJGU3/edpiWJfonCvoskQ5kkfIcTybt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132096},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"6ef78cea204eccc1dabc504b3306a16e9672c5c9","scripts":{"test":"npm run build && node --test tests/*.test.mjs","build":"tsc && cp -r src/web/public dist/web/public && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.3.0_1778524550116_0.8778556298617479","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@slack/radar-mcp","version":"1.4.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.4.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"70d86b768d897f53168f90de5a0dfb7ba9329421","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.4.0.tgz","fileCount":26,"integrity":"sha512-KVWicQxbJ2Y6maTSLP0EJS+CJxHEjT3dNJ0olWn2ySMqpPm5ZvYe2tfB73kjFjVETfD8Mvvtzd0xchlykladfw==","signatures":[{"sig":"MEUCIQCk3IQuTX0Kr6mmVfYRWD64wj+SejCG37U+3SqU1Q7BjgIgWR48z48Cm99sW/LFuxu0r1sE0nF+wbMjGDELo8FKnk0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":215568},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"1a214b301d3638eb5c3cf9bfbc5c3d45155618b1","scripts":{"test":"npm run build && node --test tests/*.test.mjs","build":"tsc && cp -r src/web/public dist/web/public && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.4.0_1782322486170_0.6089938646905042","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@slack/radar-mcp","version":"1.5.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.5.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"4d7085adcd284657034c7d794884c329ce889f8c","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.5.0.tgz","fileCount":32,"integrity":"sha512-/zaIkOJuRKbKj/GUZi47vJUx/RYJwxW0rJ5r0lsjOTowOH2JID97XNjjMVktm1/IL6Q9PflXJxDZEH2YmAU8IA==","signatures":[{"sig":"MEUCIQDCwtb6/3EacHr4OZvOOUTY8KLFXPn6PtL3K11xYb3KfwIgKdAvmrdrsbfdRyWqYt7NI2W2/UxEpqru4mmwyXzLPo8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":328824},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"cb64253253b90658172906866f3a98d9448bcefe","scripts":{"test":"npm run build && node --test tests/*.test.mjs","build":"tsc && cp -r src/web/public dist/web/public && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.5.0_1782430684787_0.34732125016271276","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@slack/radar-mcp","version":"1.6.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.6.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"e905ac244ccb59385377212416d03fa03e84e47d","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.6.0.tgz","fileCount":42,"integrity":"sha512-/PnisKBrEkJ7myoUcMFtKSnu6xhRYwU58rkI1JGnVBwpOVGpr/B4HoX7cZcBvb/mYES0fbiKh8EHZC71KFBsxw==","signatures":[{"sig":"MEUCIQDtSE3oxYx8n2VgdPei2lOs0+h3VdIS5igrXBKpNtP1sgIgNBkXjj0PoolGC1T60hRePGGImNL5hKOZojSHNxUDjDg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":412084},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"f4cca4dc383ba5411ba67de11b618c2a7c6d34be","scripts":{"test":"npm run build && node --test tests/*.test.mjs","build":"tsc && cp -r src/web/public dist/web/public && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.6.0_1782508397297_0.6101831341531716","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@slack/radar-mcp","version":"1.7.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.7.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"bd22c266e3114768deb7f4f9d870b97311ebd2d1","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.7.0.tgz","fileCount":59,"integrity":"sha512-jQG6KDElbGUZFAJcoemKcwufM2FxINpiTwfv/w9oO+0I1D2UMY08CfWZG5gT15m0kc3c0FCqbv0b5x+Gkaz1Hw==","signatures":[{"sig":"MEUCIQCQJCMTrEVXWKADJN1d92kFRTGfnnepyS4uh7pEaAv4hgIgVDRc7C5RB4NG66TbuHpKmbLBWDBtLXw9x9cSSzsX6Dc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":486402},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"450431e845882e219f381be81fc00455140d271d","scripts":{"test":"npm run build && node --test tests/*.test.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.7.0_1782762204638_0.03516469279334733","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"@slack/radar-mcp","version":"1.8.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.8.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"08b6f842cdbb95bd95eab7013a43ecbabb46d29b","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.8.0.tgz","fileCount":61,"integrity":"sha512-yVHQkPsYOqJEiCNUCpV43amYtC7c65vMxiLBpLbfIy0VAec2dGxY9ypbIEprsWc9ywgqq3oW7EIZf0gx7AyZHw==","signatures":[{"sig":"MEYCIQDyft0CsfmewN3MRRPUz7QNeKe4tC4jcxsohxXdGjuTXgIhAMmsIkrkPAwC3KbLX4PhO8PC0rNdEzmo2a0HXlRSyv8g","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":495384},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"d706ee11f2e72ff2256664c386c5e293960179cc","scripts":{"test":"npm run build && node --test tests/*.test.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.8.0_1783032335144_0.0889704255028454","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@slack/radar-mcp","version":"1.9.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.9.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"fb1074720ef22549bbf4fb4bf62656264fabf5b9","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.9.0.tgz","fileCount":69,"integrity":"sha512-UKIsE+OP3pOrKmdPHdemCi7vecd1a9PO2LzZbNYP25602fLg0KPWyzNJhJXRs5N0oRZYDmeRo8D/h2spFbqGRQ==","signatures":[{"sig":"MEQCIHkf13IzMhARc9ANZLHXmO1W0uGHIZkrDnB7jqmYqqcdAiApLypmaAuIRCU/9vDi1QQW4lt1+GoYsqrf8ArKxzz1Nw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":569870},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"266725f90c34abc574dca65a0377617b0d6d2d11","scripts":{"test":"npm run build && node tests/run.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","test:tap":"npm run build && node --test --test-force-exit tests/*.test.mjs","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.9.0_1783368223716_0.19753353886799552","host":"s3://npm-registry-packages-npm-production"}},"1.9.1":{"name":"@slack/radar-mcp","version":"1.9.1","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.9.1","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"83cd2a71886a8f19f1f44a5e832b1de65e12281f","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.9.1.tgz","fileCount":69,"integrity":"sha512-rWMh9PaHM4WzZC1Ea6YER7NwbbxANFOsmn/tOqMgqy1QACgXJfh9Hd8z2oMOolI+qIqmy1oseTHJUd3znfC13g==","signatures":[{"sig":"MEUCIQD+vrAF7xlrsF4DcXQ4U87eUcth7uk51mfHeuHh43xCSwIgdw6Wesz2xaw0mfv4mUPwblZjsvWf/hSZH3ZeztVS+G4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":584385},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"874c339612afbda27f511dd5d42e58c11034b899","scripts":{"test":"npm run build && node tests/run.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","test:tap":"npm run build && node --test --test-force-exit tests/*.test.mjs","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.9.1_1783539796658_0.731443245126733","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"@slack/radar-mcp","version":"1.10.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.10.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"9d83a7d198788ddf18b257407fcce85839279cea","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.10.0.tgz","fileCount":69,"integrity":"sha512-s/A2i+KbRG9MfsNBKvGg8RpkWIywigw+qMBRsylRSoLvIPEg/944PIA7+gOGhsSs8GcViuMBZD7FbhlzaFIdzQ==","signatures":[{"sig":"MEUCIFVK+InSnzr9hAiIp6LBPd/Wcy6pQAaZaoOPuUMBX7p+AiEApOudeGFGazvxN55oYl0UqYyYdpD9YO7au8hDFU+XuAE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":588998},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"c9634825042f5006eca3a571816224581dd22ac3","scripts":{"test":"npm run build && node tests/run.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","test:tap":"npm run build && node --test --test-force-exit tests/*.test.mjs","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.10.0_1783720362283_0.9146940087960087","host":"s3://npm-registry-packages-npm-production"}},"1.11.0":{"name":"@slack/radar-mcp","version":"1.11.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.11.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"86203161103b36cef66ced2816246cb445195402","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.11.0.tgz","fileCount":71,"integrity":"sha512-ASWFc1ankGO6imaaGq0pIKvqTk1XgcqWFLCNbbKEeyRU4+avdnp8XJXuw/UvkkpyA9/7X+t9FPSgQjKwJ6auCw==","signatures":[{"sig":"MEUCIQC75TEwot6Sp44zH6BvhuGHNc5OTbon1viCxcf3x0zLrgIgH5pp5KpV7TdIrcerXUnySQWkWmoxE0/w6i8NL/JBvSA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":604263},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"7fd47019a1e18c7a0a099ac82286e21881294139","scripts":{"test":"npm run build && node tests/run.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","test:tap":"npm run build && node --test --test-force-exit tests/*.test.mjs","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.11.0_1784580801254_0.681970393018801","host":"s3://npm-registry-packages-npm-production"}},"1.12.0":{"name":"@slack/radar-mcp","version":"1.12.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.12.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"baea8e4cff9c665bea403ea5b479c21f29d08c45","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.12.0.tgz","fileCount":77,"integrity":"sha512-e1pAYM5VPx4DoeH2YXuhZIBTVQLm5Pvv99Qz6wgkzZGxvr9lxBueIpjxEStS4UpGtLDpUbK93n/crxxbqKdfjA==","signatures":[{"sig":"MEUCIQC+ni+8h588r5o/NQ3WSig+H5EBTWTel7zxoqHHBfpwOAIgalUYYUswf4Ir+LM6oKi3CoEL5Jf0BiN2RIyDXW1msgA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":747945},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"eb2538fef58a51a9bd0bfc8f06677ba89e7f6092","scripts":{"test":"npm run build && node tests/run.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","test:tap":"npm run build && node --test --test-force-exit tests/*.test.mjs","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.12.0_1784826329792_0.8860470296982423","host":"s3://npm-registry-packages-npm-production"}},"1.13.0":{"name":"@slack/radar-mcp","version":"1.13.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.13.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"ac4ebd765ad2fd3d83e5d1a16d767526bb56a95e","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.13.0.tgz","fileCount":84,"integrity":"sha512-l7Lb3+wHmtiEl34+QvRLj+p7pHksccpZlbOC5c5xQAGt7ZUCv1qkpafLPbDyFGmzFlUvAu6nidZ0YXkgUXLczQ==","signatures":[{"sig":"MEUCIFBptquah8FOhYoP+TxeO4ITTiBpdQc5sVwCDmSND5y4AiEA5TNwBRpNC4UNtc11j+BIC0XlVzVmENljbUZrty2nkPY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":794773},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"829a6654776e0b4e90aa9077be5d6c27ff1c1294","scripts":{"test":"npm run build && node tests/run.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","test:tap":"npm run build && node --test --test-force-exit tests/*.test.mjs","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.13.0_1784931014875_0.7055172887747272","host":"s3://npm-registry-packages-npm-production"}},"1.14.0":{"name":"@slack/radar-mcp","version":"1.14.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.14.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"4fe079e70f5f884736e7e15f11bfbe7a72ae58b1","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.14.0.tgz","fileCount":84,"integrity":"sha512-WgW6FHybGeMnfOgDVzvc7UCcI2UIb9IDG5SmRaffbWyntx1spOUTNPK8WD/zLoNOpHnDvfdE37ByKu5CS54eRg==","signatures":[{"sig":"MEUCIQC9r+PROg079O77qiP0GXHD5f031GGw9Yj5KVkL31YoCgIgMWJr5gKkanoTiLjGVMrHwaH7lMZldNe+RasdrLLvHv4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":841884},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"4280c41d70ec2cbe6a2b2f352a6696c290061326","scripts":{"test":"npm run build && node tests/run.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","test:tap":"npm run build && node --test --test-force-exit tests/*.test.mjs","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"10.8.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"20.18.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.14.0_1785437182593_0.9307098608000905","host":"s3://npm-registry-packages-npm-production"}},"1.17.0":{"name":"@slack/radar-mcp","version":"1.17.0","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.17.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"1874b4c0403ec3510ed8043b50213c6b52f305ee","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.17.0.tgz","fileCount":98,"integrity":"sha512-fmqVpPTt6b/p51V77/KoNQ4iRl+EN4GHCbOitdtI10XXKEivLK6zLt6z4zHVRCy0VX8AOYuBhVPOlp/FUpVNrQ==","signatures":[{"sig":"MEYCIQD67Uz68su1K6JOXPyX2F9oNFzeFpBnyflCV/2z57x9hQIhAIcJhoYOb/cC/bs57G+r3y63dFHZAEkkNqfxWOly6IUY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1109241},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"36e47edb9ce82937ecb9b884336ac4b7097676c5","scripts":{"test":"npm run build && node tests/run.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","test:tap":"npm run build && node --test tests/*.test.mjs","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"11.6.2","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"24.12.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.17.0_1787784837062_0.9517567753931631","host":"s3://npm-registry-packages-npm-production"}},"1.17.1":{"name":"@slack/radar-mcp","version":"1.17.1","keywords":["mcp","slack","android","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.17.1","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"bfde22daed09cb65f3916b13f623a86fba07ca4e","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.17.1.tgz","fileCount":100,"integrity":"sha512-BFn4qkxDxcYnfmKs5uFGhuUOZh9c4UYzKd9mYjBA6teL2TemcJh1Kp4hQj5mnt30IPDGuGFTMAUG8nXG0HTQRg==","signatures":[{"sig":"MEYCIQDlq1zzpzJ06b8z4HNW8cDpljTwBoncj2/+3WgxXDAqBAIhAJtScdACPC3kQWrryjLLG2As3BwZ6o88/u6ARkJKZgFt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1154795},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"d7b5190820c6f62cacfd9a71882c84d3a8974dd3","scripts":{"test":"npm run build && node tests/run.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","test:tap":"npm run build && node --test tests/*.test.mjs","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"11.17.0","description":"MCP server and web dashboard for on-device debugging of the Slack Android app via ADB","directories":{},"_nodeVersion":"26.5.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.17.1_1787938697880_0.593063104515529","host":"s3://npm-registry-packages-npm-production"}},"1.18.0":{"name":"@slack/radar-mcp","version":"1.18.0","keywords":["mcp","slack","android","ios","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.18.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"9ac91057492709578f1c604ddff7d5b3573fe692","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.18.0.tgz","fileCount":112,"integrity":"sha512-+sYJVNB3Wu6H2+AXte9IwegATiPbhlMRpgsXmSGvkZdG4f+6hEqmJ+ajaDToKWREKo3ndahwcvszVNMxJLMwYA==","signatures":[{"sig":"MEYCIQC21Z0KN7ROBJXMKUSuyW2yZBE771Ch6XM97SySjoW7mAIhAJCz0gB/MERWNpacZFt0sXAgJSXU88K7pZwJOprnfT93","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1237890},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"380188ba14f3aaa2fde212cbc4b1470de3bc044b","scripts":{"test":"npm run build && node tests/run.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","test:tap":"npm run build && node --test tests/*.test.mjs","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"11.17.0","description":"MCP server and web dashboard for debugging Slack on Android and iOS Simulator","directories":{},"_nodeVersion":"26.5.0","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.18.0_1788216550219_0.9700896905240848","host":"s3://npm-registry-packages-npm-production"}},"1.18.1":{"name":"@slack/radar-mcp","version":"1.18.1","keywords":["mcp","slack","android","ios","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.18.1","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"de017cf17c418ffdc658c358a6a025b50d339e9a","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.18.1.tgz","fileCount":112,"integrity":"sha512-sJJmQOoxOgNRTZ/Yd8zlE8OQ484LUI1j1+6JkVroqSDrPbNFW9mYVqqbN+QvFkzs+rbH+EwpZEJGqdc3f60shQ==","signatures":[{"sig":"MEQCIFKoAsX7IdCBpkNv77wRkPLP3DHOkxzIbnXQI1rab39lAiAPBxlZG5hAXT9U8JXALVYhm1+4wE0w/MkKxh4KvUhSpw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1264667},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"8a33f2a1623dd10ca650e32e25d54d3af9eb127b","scripts":{"test":"npm run build && node tests/run.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","test:tap":"npm run build && node --test tests/*.test.mjs","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"11.19.0","description":"MCP server and web dashboard for debugging Slack on Android and iOS Simulator","directories":{},"_nodeVersion":"26.8.1","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.18.1_1788466871360_0.5070353608435887","host":"s3://npm-registry-packages-npm-production"}},"1.19.0":{"name":"@slack/radar-mcp","version":"1.19.0","keywords":["mcp","slack","android","ios","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.19.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"5cb1bdac7382bcee44fe568b043cb8adf097f783","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.19.0.tgz","fileCount":114,"integrity":"sha512-TosIthWdss8fsHdM2UfMSbeQyudolSx76/Y0EMf95ko6HN8d4qtnsDn0L6q3Y7IxeM3AlaTR55tsHLnJpJqiVQ==","signatures":[{"sig":"MEYCIQDdD7TCUORr+ByhBxaav0ugt4gk2MUCPQ4KZgJndGlMXwIhALLEpEReHErAK8pofvzJwOP0KlvkoEeOw+wlJyhMuX4I","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1356040},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"8406318ff785bbad87896acd7820faf49dd2974f","scripts":{"test":"npm run build && node tests/run.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","test:tap":"npm run build && node --test tests/*.test.mjs","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"11.19.0","description":"MCP server and web dashboard for debugging Slack on Android and iOS Simulator","directories":{},"_nodeVersion":"26.8.1","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.19.0_1788990587667_0.036984931253807085","host":"s3://npm-registry-packages-npm-production"}},"1.20.0":{"name":"@slack/radar-mcp","version":"1.20.0","keywords":["mcp","slack","android","ios","debugging","adb"],"license":"MIT","_id":"@slack/radar-mcp@1.20.0","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"dist":{"shasum":"f223ab199152d775ef3c291557bfa2b414b3eee9","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.20.0.tgz","fileCount":114,"integrity":"sha512-VT4nlsSwP9TaBUzBll1wA8uwJQV+9Hxw1h/al/pyFpIeJasEmwqTi2o/0JbNI08B+2GFJJXJ2cDdud8564oXcA==","signatures":[{"sig":"MEUCIQC3h0lm/JPzY2VzfaG4h/789h9hXYjO12Dnq+nTpFfsEwIgHeiu/hb7AZZUQrzwegKZHr0jkEZ04umb66JTZE2ECyg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1493927},"main":"dist/mcp/index.js","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"ce91d7dd774ca76d2450cd3e4834014395355d44","scripts":{"test":"npm run build && node tests/run.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean","test:all":"npm run test && npm run test:smoke","test:tap":"npm run build && node --test tests/*.test.mjs","build:web":"tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"11.19.0","description":"MCP server and web dashboard for debugging Slack on Android and iOS Simulator","directories":{},"_nodeVersion":"26.8.1","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"tmp":"tmp/radar-mcp_1.20.0_1789578221352_0.6300938974538561","host":"s3://npm-registry-packages-npm-production"}},"1.21.0":{"_id":"@slack/radar-mcp@1.21.0","bin":{"radar-mcp":"dist/mcp/index.js","slack-radar":"dist/mcp/index.js","slack-radar-mcp":"dist/mcp/index.js","slack-radar-web":"dist/web/bin.js"},"bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"dist":{"shasum":"68023fbda534c0ff6cb607d4ed79dc527b6548d1","tarball":"https://registry.npmjs.org/@slack/radar-mcp/-/radar-mcp-1.21.0.tgz","fileCount":125,"integrity":"sha512-aHgfn4qqae6k+/WU3QWtVZXe/ebzg/Eq9Z+7Z+l06QB8KIFSn+sU2gF7+laODqY1+0aguhbfH66ji/rRpF6gSw==","signatures":[{"sig":"MEYCIQDFNcuTcUf/28ltAGf3TGXb21/TAzkzwOGldWsgqOpwDQIhAPWMp0ZIc855vFK3r8NOuWdKuGHk79q65HglPdnYXg2N","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD98WiVwVR8rMoI+ZWMBQY15v4Y6x22zjBGg3yYhl60XgIhANMR0cDGVrtwTD80E2OOfu7AnXXnxaMEh0R1U038r+Bn"}],"unpackedSize":1711713},"main":"dist/mcp/index.js","name":"@slack/radar-mcp","type":"module","types":"./dist/mcp/index.d.ts","engines":{"node":">=18"},"gitHead":"440fbcd7929433041d237d7402046d66d4e7c847","license":"MIT","scripts":{"test":"npm run build && node tests/run.mjs","build":"tsc && npm run build:web && node scripts/copy-public.mjs && npm run copy-vendor && chmod +x dist/mcp/index.js dist/web/bin.js","clean":"rm -rf dist","start":"node dist/mcp/index.js","watch":"tsc --watch","prepare":"npm run build","prebuild":"npm run clean && node scripts/mirror-shared.mjs","test:all":"npm run test && npm run test:smoke","test:tap":"npm run build && node --test tests/*.test.mjs","build:web":"node scripts/mirror-shared.mjs && tsc -p tsconfig.web.json","start:web":"node dist/web/bin.js","test:smoke":"npm run build && bash tests/smoke.sh","copy-vendor":"node scripts/copy-vendor.mjs"},"version":"1.21.0","_npmUser":{"name":"farhanjk","email":"farhanjk@gmail.com"},"homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","keywords":["mcp","slack","android","ios","debugging","adb"],"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"_npmVersion":"11.19.0","description":"MCP server and web dashboard for debugging Slack on Android and iOS Simulator","directories":{},"maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"_nodeVersion":"26.8.1","dependencies":{"@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"htm":"^3.1.1","preact":"^10.29.3","typescript":"^5.7.2","@types/node":"^22.10.5"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/radar-mcp_1.21.0_1790100180180_0.20614708764637935"}}},"time":{"created":"2026-04-20T16:22:38.108Z","modified":"2026-09-22T18:03:00.508Z","1.0.0":"2026-04-20T16:22:38.394Z","1.1.0":"2026-04-21T21:03:36.353Z","1.1.1":"2026-04-21T21:09:28.819Z","1.1.2":"2026-04-22T18:32:20.016Z","1.2.0":"2026-05-07T21:21:08.700Z","1.3.0":"2026-05-11T18:35:50.284Z","1.4.0":"2026-06-24T17:34:46.391Z","1.5.0":"2026-06-25T23:38:04.972Z","1.6.0":"2026-06-26T21:13:17.443Z","1.7.0":"2026-06-29T19:43:24.847Z","1.8.0":"2026-07-02T22:45:35.314Z","1.9.0":"2026-07-06T20:03:43.916Z","1.9.1":"2026-07-08T19:43:16.840Z","1.10.0":"2026-07-10T21:52:42.440Z","1.11.0":"2026-07-20T20:53:21.432Z","1.12.0":"2026-07-23T17:05:29.929Z","1.13.0":"2026-07-24T22:10:15.081Z","1.14.0":"2026-07-30T18:46:22.747Z","1.17.0":"2026-08-26T22:53:57.203Z","1.17.1":"2026-08-28T17:38:18.034Z","1.18.0":"2026-08-31T22:49:10.382Z","1.18.1":"2026-09-03T20:21:11.572Z","1.19.0":"2026-09-09T21:49:47.829Z","1.20.0":"2026-09-16T17:03:41.770Z","1.21.0":"2026-09-22T18:03:00.285Z"},"bugs":{"url":"https://slack-github.com/slack/slack-radar-mcp/issues"},"license":"MIT","homepage":"https://slack-github.com/slack/slack-radar-mcp#readme","keywords":["mcp","slack","android","ios","debugging","adb"],"repository":{"url":"https://slack-github.com/slack/slack-radar-mcp","type":"git"},"description":"MCP server and web dashboard for debugging Slack on Android and iOS Simulator","maintainers":[{"name":"slackhq","email":"opensource@slack.com"},{"name":"ajm","email":"macdonald.andrew@gmail.com"},{"name":"sgorbach0v","email":"sgorbachov@slack-corp.com"},{"name":"stevegill","email":"stevengill97@gmail.com"},{"name":"slack_biztech","email":"it@slack-corp.com"},{"name":"misscoded","email":"alissa.renz@gmail.com"},{"name":"mwbrooks","email":"michael@michaelbrooks.ca"},{"name":"cchensh","email":"cchensh88@gmail.com"},{"name":"sspencer-slack","email":"shelby.spencer@salesforce.com"},{"name":"evegeris","email":"evegeris@salesforce.com"},{"name":"e-zim","email":"eden.zimbelman@salesforce.com"},{"name":"farhanjk","email":"farhanjk@gmail.com"}],"readme":"# slack-radar-mcp\n\nPlatform-agnostic MCP server and web dashboard for on-device debugging of mobile apps.\n\nGives Claude Code direct access to network calls, RTM events, analytics (clogs), screenshots, logs, and more from a running debug build. Ships with Android device support (ADB) and initial iOS Simulator support; the `DeviceTransport` interface keeps platform-specific host behavior isolated.\n\n> **For Slack engineers.** The npm package is published publicly as a distribution convenience, but the source repository, issue tracker, and support live on Slack's internal GitHub Enterprise. External users can install the package but should not expect support or source access. The tool only functions against a Slack debug build, which is not distributed externally.\n\n## Installation\n\nThe dashboard and the agent tools are set up separately. `install-app` gives you the dock app (see [Install it to your dock](#install-it-to-your-dock-macos) below); the tools need registering in every client you use.\n\nFor Claude Code, the recommended path is the marketplace plugin:\n\n```bash\n/plugin install slack-radar@slack-android-marketplace\n/slack-radar-setup\n```\n\nOr register it in Claude Code manually:\n\n```bash\nslack claude mcp add -s user slack-radar-mcp -- npx -y @slack/radar-mcp@latest\n```\n\nEvery other MCP client registers servers its own way, in its own config format, but the entry is the same shape everywhere: a command of `npx`, with the arguments `-y` and `@slack/radar-mcp@latest`. Check your client's own documentation for which file that entry belongs in and what syntax it expects.\n\nRestart the client for the tools to appear, whichever one you registered with.\n\n## Web Dashboard\n\nThe package also ships a browser-based dashboard that shows the same live device data without Claude Code in the loop.\n\n```bash\nnpx @slack/radar-mcp web\n```\n\nOr with a global install:\n\n```bash\nnpm install -g @slack/radar-mcp\nslack-radar\n```\n\nOpens `http://localhost:8100` automatically. Set `SLACK_RADAR_WEB_PORT` to use a different port. (`slack-radar-web` still works as a direct alias.) Tabs:\n\n* **Live** — network, RTM, analytics clogs, traces, Slack-app logcat and Switchboard voice records in one timeline (**level ≥** applies to the logcat lines). The rate and sparkline count every source together, so a voice session raises them the way RTM traffic does\n* **Network** — calls per second vs response time, every call listed, slow ones flagged\n* **RTM** — real-time websocket events\n* **Clogs** — analytics events, click one to see its payload\n* **Traces** — performance trace spans with durations, click one for its timing and tags\n* **Logs** — device logcat, filtered to the Slack app. **app** switches app or shows all apps; **level ≥** sets the lowest level to show (VERBOSE shows everything; the choice follows you between Logs and Live and waits while you visit another tab)\n* **Switchboard** — the Slackbot voice transport's own records: session begin and end, connection, mic and speaking state changes, every websocket frame (← in, → out) with type and size, phase timings, and player diagnostics (re-arms, jitter trims, read stalls, pre-ready drops). Click a row for the rest of its fields; no level, so hide noise with the filter box or **exclude**, and the kinds chips on the toolbar turn one kind of record off at a time. Records arrive once a Slackbot voice session starts. A debug build that declares its sources and lacks the plugin hides the tab; one too old to declare them shows it empty. Above the feed, a session panel draws the newest session: connection, mic and speaking pills, the handshake waterfall, model/you tracks with markers for re-arms, tts.stop and focus loss, and four stat cards, at a 60 s, 5 min or whole session zoom; the audio levels are not drawn.\n* **Database** — read-only browser for the on-device SQLite stores (pick a database, then a table, or run a read-only query). See the data-handling note below.\n* **Preferences** — read-only browser for the on-device SharedPreferences files (pick a file, browse its keys, or search across every file at once).\n* **Feature Flags** — live view of every feature flag and experiment the Slack app knows about, with its current effective value (ON/OFF for toggles, group name for experiments), its scope, and whether it is locally overridden; updates as they change on the device. Filter by name.\n* **Custom** — a tab Claude builds on request. Ask a Claude Code session in your terminal for a view the pre-built tabs do not cover (e.g. \"graph calls per second and flag the slow ones\"); it authors the view via the `open_radar_dashboard` tool and it appears here. A Custom view can carry `exclude` terms to hide noisy rows; add more with the **exclude…** control on the feed toolbar or the Filters panel (comma-separated there), or have the agent set them in the spec (one phrase per term, no commas or line breaks). A log view narrowed to one tag is the same kind of ask: \"show me only the `<Tag>` logs, DEBUG and up, without the noisy lines\" becomes a spec with `source: log`, `match: {package, tag}`, `minLevel` and `exclude`, opened as a Custom tab. Persists until you refresh the page; exclude terms are remembered in the browser only on the pre-built tabs.\n\nEach tab has a filter / sort / pause / clear feed and a payload inspector, most a live rate, Network and Traces a graph. **Clear** empties the dashboard's own view only, so the device keeps its buffers and a reconnect or a source switch backfills recent records again (ask a Claude Code session for `clear_buffers` to wipe the device too). The filter box takes space-separated terms that must all match, `-term` to exclude, `/pattern/` for regex, and `\"quoted phrases\"` for spaces or a literal `-` or `/` (curly quotes count too, and pasting text with spaces quotes it for you, unless you are mid-word or the text starts in filter syntax). `-term` is page-wide and gone on reload; to keep an exclusion, use the **exclude…** control on the feed toolbar (one term, then Enter), the **exclude** row in the Filters panel (comma separated) or an agent's `exclude` on the spec: the terms show above the feed as removable chips, are saved with the tab, and on a pre-built tab are remembered in the browser when you come back; a spec an agent pushes lands as written and does not touch that memory. An exclude term written `field:value` (say `kind:frame`, the Switchboard record's own kind field; no space after the colon) hides rows whose field equals the value, case-insensitive, and a field no row carries hides nothing; plain terms match by substring, and the Switchboard tab's kind chips toggle those `kind:` terms for you. The `?` at the right edge of the box opens a short legend under it. A phrase that itself contains a quote character goes in `/regex/` form instead, where quotes are plain text. Committed terms turn into removable pills; a leading `-` is now the exclude operator (the old box matched it as plain text), and quoting restores the literal. Regex flags are optional and short (i/m/s/g, 1-2 letters only, so an ambiguous tail like `/api/im` reads as flags, noted in the tooltip); typos like `/error/x` become part of the pattern and match literally, and quoting any `/…/` term matches it literally. Invalid regexes and incomplete typing (e.g. `/foo(`) are ignored (the term turns amber) instead of blanking the feed. On the Live tab a row type name (`log`, `clog`, `trace`, `rtm`, `network`, `switchboard`) also matches rows of that type, and the `-log` form excludes by row type only, so it hides logcat lines without touching a `logout` clog (quote it, `-\"log\"`, to exclude by text instead). Switching tabs replays what you have already seen this session (the browser caches it, bounded by count and age) so the view does not reset to empty. ADB forwarding and device activation are handled for you; a reconnect control re-arms after a device sleep. The device-side session shuts down after its idle timeout, and an open dashboard tab now recovers that on its own: the header says there is no radar session on the device and re-enables it, once right away (or on the minute, if the session just came back and died again) and then at most once a minute, giving up after three failed attempts (a session that dies again within a minute of coming back counts as a failed attempt), or at once if the attached device changed, so the next press is yours. Only a tab you are looking at does this (a background tab never arms a device you let idle out), never a dashboard an agent opened, and **✋ stop auto re-enable** in the header turns it off for dashboards at this address if you would rather do it by hand (`SLACK_RADAR_NO_ARM=1` on the process turns it off for that process, along with the arm at launch). The dashboard follows your system light/dark setting by default; the theme toggle in the header overrides it and is remembered. A form-encoded request body is shown decoded, field by field, JSON fields expanded; Copy cURL still carries the raw bytes. A field whose JSON nests too deep stays as text with a note saying so, and a request body the device cap cut shows a truncation banner.\n\n### Install it to your dock (macOS)\n\nTo open Radar from the dock instead of a terminal:\n\n```bash\nnpx @slack/radar-mcp install-app\n```\n\nThat writes `~/Applications/Slack Radar.app`. Open it once, then right-click its dock icon and choose **Options > Keep in Dock**.\n\nClicking it starts the dashboard if it is not already running (the server auto-closes 5 minutes after the last tab closes, so this is the usual case), waits for the port, then shows it. If an older dashboard is still holding the port and nobody is using it, the app asks that one to stop first, so an upgrade does not leave you looking at the version you replaced. Quitting the app stops the dashboard it started, unless a Claude Code session or another window is still using it; a dashboard that was already running when the app launched is never stopped. If Xcode's command line tools are installed (`xcode-select --install`), `install-app` compiles a small native window for this — its own dock icon, its own process, no browser tab, no tab bar. Without a Swift toolchain it falls back to opening your default browser instead.\n\nIf the window cannot start the dashboard after a node upgrade, the app is holding a node path that the upgrade moved. Run this, then quit and reopen the app:\n\n```bash\nnpx -y @slack/radar-mcp@latest install-app\n```\n\n### Screen overlay\n\nA **▣ Screen** button opens a side panel that mirrors the live device screen, with a full-resolution screenshot and a screen recording. It is off by default and opens to a consent notice first, because it shows whatever is on the phone (open DMs, message content, notifications).\n\n* **Screenshot** needs no extra tools: Android uses `screencap`, and iOS Simulator uses `xcrun simctl io`.\n* **Live mirror** uses the Android `screenrecord` stream (needs `ffmpeg`). For iOS Simulator, Radar polls native screenshots at 1fps — no ffmpeg dependency.\n* **Recording** uses `ffmpeg` on Android and `simctl recordVideo` on iOS Simulator. If ffmpeg is missing on Android, the panel shows the install command. ffmpeg is not bundled and is never installed for you.\n\n## Prerequisites\n\n* Node.js 18+\n* ADB for Android, or Xcode (full installation, not just command-line tools) for iOS Simulator\n* A debug build of Slack installed on the device (must include the `slack-radar` modules)\n\n## Environment Variables\n\nAll optional. Set them on the process that runs the MCP server or the dashboard. One further variable, `SLACK_RADAR_INITIAL_SPEC`, is set automatically when a tool spawns the dashboard and is not meant to be set by hand.\n\n| Variable | Effect |\n|---|---|\n| `SLACK_RADAR_WEB_PORT` | Port the dashboard listens on. Default `8100`. |\n| `SLACK_RADAR_DEVICE_PORT` | Host port forwarded to the device-side server. Default `8099`. |\n| `SLACK_RADAR_NO_AUTO_CLOSE=1` | Keep the dashboard running forever instead of closing it once every tab is gone. |\n| `SLACK_RADAR_ALLOWED_HOSTS` | Extra `Host` values the dashboard will answer, comma-separated (`radar.local,myhost:8100`). Only needed when you reach it by a name other than localhost. See Security. |\n| `SLACK_RADAR_NO_ARM=1` | Never arm the device without a press: skips the arm at launch and turns off a tab's automatic re-enable. A Reconnect press still arms. |\n| `SLACK_RADAR_NO_OPEN=1` | Do not open a browser window on launch. Set automatically when an MCP tool spawns the dashboard. |\n| `SLACK_RADAR_NO_FFMPEG=1` | Pretend ffmpeg is absent, so screen recording degrades to screenshots. |\n| `SLACK_RADAR_PLATFORM` | Transport to use: `android` (the default) or `ios`. Radar does not probe or infer a different platform. |\n| `SLACK_RADAR_IOS_SIMULATOR_UDID` | Pin a specific iOS Simulator by UDID instead of auto-selecting the sole booted one. |\n\n## Session Management\n\nRadar starts **disabled** each session. All tools except `ping` return an error until enabled.\n\n| Command | Effect |\n|---|---|\n| `/radar-enable` | Activates ADB forwarding, device broadcast, SSE stream. Tools become available. |\n| `/radar-disable` | Tears down stream, clears local buffers. Tools return \"not active\" error. |\n\n**Auto-enable**: When you ask Claude an obvious device question (clogs, network calls, screenshots, app state, RTM events, logs), Claude invokes `/radar-enable` automatically before calling the relevant tool.\n\n**Auto-disable**: When the device-side radar shuts down after idle (default 5 min), the next tool call failure flips the session to disabled. Claude will tell you and offer to re-enable.\n\n## Tools\n\n| Tool | Description |\n|---|---|\n| `ping` | Health check. Returns uptime, buffer sizes, remaining session time, stream status, the Radar MCP version (`mcp_version`), and which app/profile is bound (`android_user_id`, `profile` personal/secondary, `package`). Use `timeout_minutes` to extend sessions. |\n| `get_recent_network_calls` | HTTP call summaries: method, URL, status code, duration. Filterable by URL substring and status code. |\n| `get_network_call_detail` | Full request/response headers and bodies for a specific call (gzip/brotli decompressed). A form-encoded request body (by the record's `request_content_type`, or by shape on a build without it) also comes back decoded in `request_body_decoded`, JSON-valued fields parsed. A body, or its decoded copy, over 64 KB skips the decoded copy and `request_body_decoded_omitted` says so; a field left unparsed is named in `request_body_decoded_unparsed`. `request_body` stays the raw bytes; `request_body_truncated: true` means the device cap cut it (a build that reports the cut itself is believed, otherwise it is read from the body's shape). |\n| `query_session` | The whole session from the host event spool (network, RTM, clogs, traces, switchboard), newest first, byte-capped, with a cursor to page older. An id read returns the full record, pulling the body from the device once and caching it; a network record gets the same decoded-form fields as `get_network_call_detail`; a body that cannot be pulled falls back to the summary with a note. |\n| `get_recent_rtm_events` | RTM event summaries: type, direction, channel, timestamp. Filterable by type, direction, channel. Uses subtypes (e.g. `message_changed`, not `message`). |\n| `get_rtm_event_detail` | Full RTM event JSON payload for a specific event. |\n| `get_recent_clogs` | Analytics event summaries: name and timestamp. Filterable by event name substring. Persists from app start. |\n| `get_clog_detail` | Full clog JSON payload for a specific event. |\n| `get_recent_traces` | Performance trace/span summaries: trace name, span name, duration. Filterable by name substring. |\n| `get_trace_detail` | Full trace/span detail for a specific trace, including tags. |\n| `get_switchboard_sessions` | Slackbot voice (switchboard) sessions the device still holds, newest first: `session_id`, `team_id`, `began_at`, `ended_at`, record and frame counts, the newest state and audio levels. Ids restart with the app process. |\n| `get_switchboard_session` | One voice session's summary plus its records, oldest first: `state` transitions, control frames (`frame`) in and out, `player` stutter events, `phase` startup timings, `session` begin and end. Narrow with `kind`; `limit` is how many of the newest records come back (default 50, max 2000), filtered by kind first, so a kind page is the newest `limit` records of that kind. |\n| `wait_for_events` | Block until matching events arrive via SSE stream. Idle-timeout based, not polling. |\n| `search` | Full-text search across network, RTM, clog, and trace buffers. |\n| `get_app_state` | Current Activity/Fragment state via `dumpsys`. Shows visible screen, parameters, tab state. |\n| `get_recent_logs` | Recent device logs, optionally filtered by tag (omit `tag` for all lines). Reads the app's own debug log buffer first, falling back to logcat; the result's `source` field (`app_buffer` / `logcat_capture` / `logcat_ring`) names which one served it. For Timber debug logs (`SlackRadar`, `OkHttp`, etc.). |\n| `list_profiles` | List the Android users and profiles on the device (personal, work, and so on). |\n| `activate_for_user` | Activate radar for a specific Android user or profile. |\n| `capture_snapshot` | Bundle the current network, RTM, clog, and trace buffers, plus an optional screenshot, into one saved snapshot for a bug report or repro. Switchboard voice records are not included. |\n| `screenshot` | Capture device screen as PNG. 720px default, `full_res=true` for full resolution. |\n| `record_screen` | Record short screen video (MP4). Default 5s, max 30s. |\n| `list_databases` | List the app's on-device SQLite databases. Read-only. |\n| `list_tables` | List the tables in a given on-device database, with row counts. Read-only. |\n| `query_database` | Run a read-only query (SELECT, WITH, EXPLAIN, VALUES, PRAGMA) against a copy of an on-device database pulled to the host. |\n| `list_prefs` | List the app's on-device SharedPreferences files. Read-only. |\n| `get_prefs` | Read a preferences file's keys and values, optionally filtered to specific keys. |\n| `search_prefs` | Search preference keys and values across every file by a substring. |\n| `list_feature_flags` | List every feature flag with its live effective value and override status. Optionally filtered to just the overridden ones. Boolean toggles carry `enabled`; multi-variant experiments carry `type: \"experiment\"` and a `group_name` string (the effective variant, e.g. `\"treatment_a\"`) instead. |\n| `search_feature_flags` | Case-insensitive substring search on feature flag names, against the same live list as `list_feature_flags`. Rows carry the same `type`/`group_name` fields for experiments. |\n| `get_feature_flag` | Look up one feature flag by its exact key. Returns one row per scope (authenticated/unauthenticated) and per signed-in org, since each workspace resolves its own value; pass `org_id` to narrow to one workspace. An experiment row carries `type: \"experiment\"` and its `group_name` variant rather than a boolean `enabled`. |\n| `clear_buffers` | Clear all captured buffers (network, RTM, clog, trace) on the device and locally. |\n| `open_radar_dashboard` | Author or refine a custom live dashboard tab from a spec (source, filters, widgets, alerts). Suggested when a request is not covered by the pre-built tabs; not auto-invoked. Returns the dashboard URL; debug builds only, local only. |\n| `_radar_session_enable` | Enable radar for the session. Called by `/radar-enable` skill. |\n| `_radar_session_disable` | Disable radar for the session. Called by `/radar-disable` skill. |\n\n## Architecture\n\n```\nMobile debug build (device)\n  +-- Local socket (platform-specific)\n        +-- HTTP endpoints + SSE streaming\n              |\n              | port forwarding (adb forward / iproxy / etc.)\n              |\n@slack/radar-mcp (Node.js, runs on developer machine)\n  +-- src/shared/       DeviceTransport, AndroidTransport, SSE stream, constants\n  +-- src/mcp/          MCP stdio server (Claude Code entry point)\n  +-- src/web/          HTTP proxy server + browser dashboard\n        +-- public/     Static HTML/CSS/JS served to the browser\n```\n\nAll device-specific logic lives behind the `DeviceTransport` interface (`src/shared/transport.ts`). Buffers, SSE streaming, session management, and the HTTP wire protocol are platform-agnostic: the wire format is plain `GET /api/<resource>` with JSON, and adb appears only in the transport.\n\n**Consuming the wire from your own tooling**: the dashboard's HTTP+SSE surface is documented as a read contract in [docs/wire-contract.md](docs/wire-contract.md) (Oracle Surface v1) — named routes, SSE frame grammar, backfill/dedupe recipe, the auto-close trap, and an executable preflight (`scripts/preflight.mjs`, which lives in this repo rather than the published package, and is meant to be copied into your own harness).\n\n**Adding a new platform**: implement `DeviceTransport` in `src/shared/<platform>.ts` and add a case to `createTransport()` in `src/mcp/index.ts`. The device-shaped operations (screenshot, screen recording, app state, device logs) are optional members, so implement what the platform supports and leave the rest absent; callers report each absent capability as \"not supported on platform X\". Two things stay Android-only for now and are guarded rather than abstracted: the dashboard (its flow assumes a device to arm) and adb port forwarding.\n\n## Security\n\n* **No TCP port on device.** Uses platform-specific local sockets, only reachable via port forwarding. Requires physical USB or explicit debug pairing.\n* **Debug builds only.** Release builds bind a no-op implementation. Server code is eliminated at compile time.\n* **Lazy activation.** Dormant until explicitly triggered.\n* **Auto-shutdown.** Device-side server shuts down after idle timeout (default 5 minutes). Zero cost when unused.\n* **Dashboard auto-close.** Once a dashboard has been opened in a browser, the process shuts itself down roughly 6 minutes after the last tab closes, so a dashboard you walked away from does not linger. Opening a dashboard again (`open_radar_dashboard`, which writes a spec) pushes that deadline out by another grace window, but nothing else does: the other MCP tools read the device directly and never touch the dashboard, so a long agent session with no tab open will still close on schedule. Reopen it, or use the opt-out below, if you want it to stay. Two more exceptions: a dashboard that no tab has **ever** opened (one an agent spawned and nobody visited) stays up until you visit it once or stop it, because there is no \"last tab closed\" moment to measure from; and when you first upgrade to a version that has auto-close, **reload any tab that was already open** — page code from before this feature does not report itself as present, so it will not keep the process alive even while you are looking at it. Reloading once is enough; later upgrades do not need it. Click **⏻ Stop dashboard** in the header to stop it immediately instead (click twice to confirm — it kills the process with no undo). Set `SLACK_RADAR_NO_AUTO_CLOSE=1` to turn auto-close off entirely.\n* **Keep-alive is not forgeable from a web page.** Only the dashboard's own client and the MCP can postpone auto-close. A write to `/setspec` or `/enable` has to carry `X-Radar-Dashboard: 1`, or a content-type whose type is exactly `application/json`; the `/health` presence ping requires the header specifically, since a content-type says nothing about a request with no body. A cross-origin request cannot set either one without a CORS preflight it will fail. A request without either still works and still writes, it just does not extend the process lifetime, so `curl -X POST .../setspec -H 'Content-Type: text/plain'` sets the spec but will not stop the dashboard closing on schedule; use `-H 'Content-Type: application/json'` if you want it to count. This is a CSRF guard, not authentication: any local process can send either header, and the port is loopback-only by design.\n* **Loopback `Host` only.** The dashboard answers a request only when its `Host` header names this machine (`localhost`, `127.0.0.1`, `[::1]`, `0.0.0.0`, with or without a port). Anything else gets a 403 whose body names the host it refused and how to allow it. Binding to 127.0.0.1 alone is not enough: a page that resolves its own domain to 127.0.0.1 connects locally, counts as same-origin in the browser, and could otherwise set the header above and stop your dashboard. If you reach the dashboard by some other name — a `/etc/hosts` alias, a container or Codespaces forwarded URL, your machine's LAN hostname — list it in `SLACK_RADAR_ALLOWED_HOSTS` (comma-separated, host or `host:port`). A plain SSH or VS Code port forward needs nothing, because the `Host` stays `localhost`.\n\n## Data Capture\n\nWhat gets captured depends on the in-app server implementation. The MCP server is agnostic to the data source. The Android implementation captures:\n\n* **Network calls**: OkHttp interceptor. Ring buffer: 400 calls.\n* **RTM events**: WebSocket listener. Ring buffer: 2000 events.\n* **Clogs**: Analytics interceptor. Ring buffer: 1000 events. Persists across radar activation cycles.\n* **Traces**: Performance span observer. Ring buffer: 2000 spans. Persists across radar activation cycles.\n* **SQLite database** (Database tab, web dashboard only): when you open a database, a read-only **plaintext** copy of that on-device store (message text, request/response bodies, user/channel/team IDs) is pulled to a temp directory **on your own machine** (`os.tmpdir()/slack-radar-db-<port>`, files mode 0600). Auto-deleted when the dashboard process stops.\n* **SharedPreferences** (`list_prefs`/`get_prefs`/`search_prefs`, and the Preferences tab): read directly off the device over `adb`, no local copy written. Files can contain feature flag overrides, cached team/org/channel IDs, and other app state.\n* **Feature flags** (`list_feature_flags`/`search_feature_flags`/`get_feature_flag`): read directly off the device over `adb`, no local copy written. Shows every flag's live effective value and whether it is locally overridden.\n\nThe network, RTM, clog, and trace captures are in-memory ring buffers. The Database tab is the exception: it writes a plaintext copy of the selected on-device database to a temp file on your host for the duration of the session. Review before sharing anything from it.\n\n### What gets captured, in detail\n\nThis tool captures unredacted network traffic from your debug Slack build, including:\n\n* URL query parameters (tokens can appear here)\n* `Authorization` headers and cookies\n* `Set-Cookie` response headers (session tokens)\n* Request and response bodies, up to 256 KB per body, for JSON, form, text, and XML content types\n* RTM WebSocket payloads (every sent and received message)\n* Analytics (clog) events serialized as JSON\n* Screenshots and short screen recordings on demand\n* Device logs (the app's own debug buffer, with a logcat fallback), optionally filtered by tag\n* SharedPreferences files, including feature flag overrides and cached team/org/channel IDs\n\nAuth tokens and session cookies will appear in captured data. Captured data flows to your MCP client (Claude Code), which may send relevant portions to the configured AI provider per its own data handling policy.\n\n### Use against workspaces you are signed into as yourself\n\nThe tool is intended for debugging the Slack Android app against your own sessions. Do not share captured data (screenshots, log exports, tool transcripts) externally without first redacting auth material. Treat anything radar captures with the same care you would treat a `curl` transcript of an authenticated API call.\n\n## Local Development\n\n```bash\nnpm install\nnpm run build        # Compile TypeScript + copy static assets to dist/\nnpm start            # Run the MCP server (stdio transport)\nnpm run start:web    # Run the web dashboard\nnpm run watch        # TypeScript compiler in watch mode\nnpm test             # Unit tests\nnpm run test:smoke   # Smoke tests\nnpm run test:all     # Both\n```\n\nRadar uses the Android transport by default. Choose the iOS transport explicitly when working\nwith a Simulator:\n\n```bash\nnpm run start:web\nSLACK_RADAR_PLATFORM=ios npm run start:web\n# Equivalent: npm run start:web -- --platform=ios\n```\n\nWithin the selected platform, Radar chooses the sole running device or shows the device picker\nwhen several are available. It never probes the other platform. iOS support is currently limited\nto screenshot, screen mirroring, and recording via `simctl`; the HTTP-based tools (network,\nRTM, clogs) require a device-side server that is not yet available on iOS.\n\n## Troubleshooting\n\n**\"ADB port forwarding failed\"**\nEnsure a device is connected (`adb devices` should show exactly one device). If using wireless debug, confirm the pairing is active.\n\n**\"Radar not responding\"**\nThe device-side server may have auto-shut down. Use `/radar-enable` to restart it.\n\n**\"Session disabled\"**\nTwo consecutive connection failures disable the session. Use `/radar-enable` to reconnect.\n\n**Devices with more than one user (e.g. a work profile)**\nThe MCP server auto-detects the Android user ID via `ps` and targets the broadcast accordingly. No manual `--user` flag needed. In the dashboard's Logs tab, the package filter narrows logcat to the Slack app; clear the chip or pick another package to widen it.\n\n**Tools not appearing after setup**\nRestart your Claude Code session. MCP servers are registered at session start.\n\n**Port already in use (web dashboard)**\nIf a Radar dashboard is already running on the port, launching again just opens it. If the port is held by another program, run Radar on a different port with `SLACK_RADAR_WEB_PORT=8101 npx @slack/radar-mcp web`.\n\n**The dashboard shows the version you just replaced**\nThat badge reports the version of the process serving the port, not the app or package you installed. Installing does not touch a server that is already running, so an older dashboard can keep serving after an upgrade.\n\nThe app also leaves an older dashboard alone on purpose when somebody else is using it, either a Claude Code session or another window with it open. A refresh (⌘R in the app window, or Retry on its failure page) tries to take it from a window, and never from a session; taking it costs that window its page, and everyone the server's pulled databases, device pin and logcat ring. `~/Library/Logs/slack-radar-dashboard.log` names which one it found, and what a refresh will do about it.\n\nAsk the two surfaces separately. The installed dock app:\n\n```bash\ndefaults read ~/Applications/Slack\\ Radar.app/Contents/Info.plist CFBundleShortVersionString\n```\n\nAnd whatever is actually serving, with the dashboard open. A GET with the headers printed, not `curl -sI`: a HEAD only answers on the release that carries this change and later, and the dashboard you are diagnosing is an older one by definition.\n\n```bash\ncurl -s -D - -o /dev/null http://127.0.0.1:8100/spec | grep -i x-radar-version\n```\n\nUse your own port if you set `SLACK_RADAR_WEB_PORT`. Against the wrong port both commands print nothing, which looks the same as a dashboard that is not there.\n\nTwo different versions is the answer. Stop the old dashboard, then quit the app and open it again:\n\n```bash\ncurl -s -X POST -H 'X-Radar-Dashboard: 1' http://127.0.0.1:8100/shutdown\n```\n\nIf it comes back older, the dashboard is being started by your Claude Code session, so restart that to reload its MCP server. Where npm enforces a minimum release age, `@latest` will not resolve to a release for its first week; pin the version in your MCP registration to get it sooner.\n","readmeFilename":"README.md"}