{"_id":"replicant-mcp","_rev":"27-1c07c9d5ba3c9ea2b39cc41d7d99f246","name":"replicant-mcp","dist-tags":{"latest":"1.6.7"},"versions":{"1.0.0":{"name":"replicant-mcp","version":"1.0.0","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.0.0","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"ab5ac4543e8e9b60dfb59267c0f53b861b985986","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.0.0.tgz","fileCount":85,"integrity":"sha512-SA6Zx50xacWeGycunXRH1vDvfB6x/SGofZD3Zv5wrMyITEJs9PD+UES/aHlVwxg/qRYyfVIUlvksxCovQcQM/Q==","signatures":[{"sig":"MEQCIGAkXhAmQ+Sd7jmaGLVveYYutRzHd4TYqrkmB1R2QBTEAiB3yDjzrKKmkJUcdJHcuVMXGRl90C3zX6S+pZCbt94hOg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":151521},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"529bf81911abe47d517921760bbc353448e3c002","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"node dist/index.js","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","install-skill":"bash scripts/install-skill.sh","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"thecombatwombat","email":"archit.joshi@gmail.com"},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.5","execa":"^9.6.1","commander":"^14.0.2","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.0.0_1768982311574_0.1007868227975226","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"replicant-mcp","version":"1.0.4","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.0.4","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"ea0089425a51802513923fbe35d56c161a0ea717","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.0.4.tgz","fileCount":91,"integrity":"sha512-rnC7cc2aB1NtKqs7c0IDFf5TnTRITozbMT258JH4RxxSajtfct5uP8/t+6sAJr0pZARthZF6BbR/NU5iNffGqw==","signatures":[{"sig":"MEQCID6e85Nd4LYVEJYQ5kJkPg1Rk6ux2iTnKsVi1H3LidEfAiAH0B8gKJmTNUzJwGauRYLbc+jN77CUXDXxUlx/oEimXA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/replicant-mcp@1.0.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":174865},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"f80c09326a26a4705c9bccc11be0ea8e21677775","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"node dist/index.js","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5a530172-fd94-4b28-b34d-ba4dc5255347"}},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.7.0","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"20.19.6","dependencies":{"zod":"^4.3.5","execa":"^9.6.1","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.0.4_1769026161344_0.09859340883554002","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"replicant-mcp","version":"1.1.0","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.1.0","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"14428f71b889493f71e4bc35adfba3705a1d0bc0","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.1.0.tgz","fileCount":103,"integrity":"sha512-FrZOId9edbMm6h6WW0ishzY+N6pYZGOF2XYpESDCskYqXaXJGrrCEPCSAlQE+Nvl6X8LQdNUjt6ZktXN4YN0Rw==","signatures":[{"sig":"MEYCIQDXiniaJ5VYlhFLkrx5GjZptIrREEvTq9LMfLZ/f/CaMQIhAPhVN8hKjHqhmw6aB39HpYmHNpFnYEGEtW5wLnR9x8z5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/replicant-mcp@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":213187},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"2d984dfeb3eb10c3205bde48c11205d92f06c9b4","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"node dist/index.js","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5a530172-fd94-4b28-b34d-ba4dc5255347"}},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.8.0","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"20.19.6","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.1.0_1769048425836_0.8793374029893068","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"replicant-mcp","version":"1.1.1","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.1.1","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"0f98e4f07f45154a81bcb8a0b087b941411a97bd","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.1.1.tgz","fileCount":103,"integrity":"sha512-BS2PKc0BJejBnJ3jjjGmu/7EnpsXt+MprDSu9loh/XvHuap0IJ63tSKTsbWbUl99PSvmvxY2duPsb6yOuu23KQ==","signatures":[{"sig":"MEUCIQDosObB9qfH0qsGoeFMesNynjkB84KwDFmwdCyPno7T8gIgHDFjOQM8AIg6HJpKYMPno++s8f0ThbO/n2/FdoB1LOw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/replicant-mcp@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":213204},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"8ef241b484c3e8c1cbbca927b9f0af12ac5de036","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5a530172-fd94-4b28-b34d-ba4dc5255347"}},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.8.0","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"20.19.6","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.1.1_1769053339234_0.5047919206166929","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"replicant-mcp","version":"1.2.0","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.2.0","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"ce60c02510f25df256880017448c2ec44a47df77","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.2.0.tgz","fileCount":105,"integrity":"sha512-qJ4MjsE0MlJFR+k70yaGFm92P5yarrtKXU1WgTJfX1MVllIalRyxZBK8tZZ8/iZAoKEctkAEOlIylwae361PNA==","signatures":[{"sig":"MEUCIQDi89VmRhHKhv+GLHIn6r4g/g0mZeloHZDo0YbNpmOMfAIgUQdEgn3j/QtvhNT+m6JL5ZL7deqs3x62CUc8u5MjKxk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/replicant-mcp@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":222355},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"b113cd525aa1cb347df3630e4837b5a3d625a7a4","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5a530172-fd94-4b28-b34d-ba4dc5255347"}},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.8.0","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"20.20.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.2.0_1769195392111_0.11781828390696525","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"replicant-mcp","version":"1.2.1","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.2.1","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"20776c402562a95ed4f058459f1280aae007663c","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.2.1.tgz","fileCount":105,"integrity":"sha512-3d8TkLm5itVvdS9fAQtIaRmuXDgfNCcn8c4t5rImfrZjQJNt1BiSVrKjrllNSglJCpHvGuDMTlTH45xja4LPKw==","signatures":[{"sig":"MEQCICANrDwxLrn1AZqLlSbm/mWUdEnmWw+96RsCW4b8FIQxAiBJcmux4FyZZYmdjSuno8Y0tTXX8G6nP+13GPAUFrV4nQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222355},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"3b68197b93680563457dd3ab0aeeab800a1387f4","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"thecombatwombat","email":"archit.joshi@gmail.com"},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.2.1_1769195487705_0.8067358689402182","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"replicant-mcp","version":"1.3.0","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.3.0","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"15dce8453894a373f7a82e1ddb7c1290cab730e7","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.3.0.tgz","fileCount":105,"integrity":"sha512-K2mWd3IIcy7/FH3Yb2vKtgK2tjddhsBOVFXwys0B/WqGWtPOBwLUdHH6v6ahoEip8n3JxiT3VquU+YLMB89RUw==","signatures":[{"sig":"MEYCIQCdJmfyUsgnHDEqTNp/uX/sO1Bi9Pl229tTDXd5+yiMPQIhANHcPHBKAH+Ry+GjfOpFkiA2qD+2PepruVSr8rFZLwqG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":227281},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"781dce7fbb29a4ab245aa0578c054e166d14b97c","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"thecombatwombat","email":"archit.joshi@gmail.com"},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.3.0_1769199159462_0.7660039789996844","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"replicant-mcp","version":"1.3.1","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.3.1","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"d2b0784260d568d76740752fa510e5384247c4d7","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.3.1.tgz","fileCount":105,"integrity":"sha512-JPQ2JUF4Z0wFWoY/J0Q/e6dLqd3N2ZptIPdCrNtHey86Mm5MMc3yQqIrV26QgWHSBDgL1gHJm4M4Th1b1hzf1Q==","signatures":[{"sig":"MEYCIQChLKsUm8cq5CYTnqFsEw+7K5zemt0+8Ij5RYjDdwE1FQIhAP4I/im8aGMlmGoERjgKPP+V5UQoHcaEYqxc4JpwDQmW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":227281},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"c513c4988335439329b48722e90b639bd37f94cd","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"thecombatwombat","email":"archit.joshi@gmail.com"},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.3.1_1769199507301_0.05979445540435058","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"replicant-mcp","version":"1.3.2","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.3.2","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"5cf52dd5543b8aa85dfaf2c608f0f417731076ea","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.3.2.tgz","fileCount":105,"integrity":"sha512-KC2Ng/m8hjoGLAEjb+dFKInxA8ABLlSwZz1fny7NQPUBf1YAHnqQYRUYvXZ8UXkC7KDHp2M1WyKT7AfLqo8XLg==","signatures":[{"sig":"MEQCIAT+uIfcX3zmVMwsZrfRF+rdDJpj13WiGVrUra84J2yCAiAeHHjNMlDA9yXjASNMHXMcKlPUNbu/t1gWxMsYmRv1oA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":227630},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"2cc419974c47a62084bf461e06be88fcc91f3537","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"thecombatwombat","email":"archit.joshi@gmail.com"},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.3.2_1769201704169_0.7121600357046227","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"replicant-mcp","version":"1.4.0","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.4.0","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"dd122644a1025a01e3333b224e705431e9c38803","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.4.0.tgz","fileCount":105,"integrity":"sha512-NS+ju0t+pUWGbsaYP6eBJYKk0sxSUtdmSc4VU881qKHJzAtanchP+3vlmsnQqqDUvOqjmOXsZpe3UTjWkWoTRg==","signatures":[{"sig":"MEUCIEQs6FFRgSczlB3vbU6ctv6fBzRLdynk9D7A+TZ0lruEAiEAuS+3S5zeH0z2JwlnR2f/foRuIbMvTtG9PotyffMnIVI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":229971},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"8380442511e170dc7fc4c5b73d4fa0cff97858ce","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"thecombatwombat","email":"archit.joshi@gmail.com"},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.4.0_1769432705952_0.9994923607541222","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"replicant-mcp","version":"1.4.1","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.4.1","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"fca76b6f20fdac1ed01221c8de132a771c556cb4","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.4.1.tgz","fileCount":107,"integrity":"sha512-fWkheaTve3a99U7cHJ7kCKC7C2zokkY9FjhzYdbDj17kfzQ+IyVFx1zPakGp/lk43VqzKcT+EgLcEF5wRYc3oA==","signatures":[{"sig":"MEQCICl4+MyHRUrKdtyCwI8FL6mdupSSpl0TBLbTOcpn1uA+AiATUuQkG5CBjroiqg1Gqu7ZuO0FGLTyFgi0GrTFLBXWCQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":220664},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"9751580f8871160c16d2749ca39c2dcd6151555f","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"thecombatwombat","email":"archit.joshi@gmail.com"},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.4.1_1769434981892_0.8808296127884261","host":"s3://npm-registry-packages-npm-production"}},"1.4.2":{"name":"replicant-mcp","version":"1.4.2","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.4.2","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"0b2c9f6820d0ee9439ece5e0a11400633980489f","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.4.2.tgz","fileCount":107,"integrity":"sha512-5QpN3H+McBLnzNquhlVsnNGVyJzZg8+nfikC/4yr863SlCZr5O9yDWMbBNp9MfRMa/VWfaFy6pJL455tbQaQFQ==","signatures":[{"sig":"MEUCIGzkomB5BS+klMQwQvbczVmhNY8LA+nQgfwOnDtPBPV1AiEA5xjjRqFDe6NgM0tYrgrQP1u9p9uPfq6lAkiT/lTBRkk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":225579},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"4dc5e44ae1e009d400d310e88b614036fe5f02f3","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"thecombatwombat","email":"archit.joshi@gmail.com"},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.4.2_1769462112461_0.28896624301741625","host":"s3://npm-registry-packages-npm-production"}},"1.4.3":{"name":"replicant-mcp","version":"1.4.3","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.4.3","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"1aa92cd64346cac49d0929ca4c99b0b5c230b45e","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.4.3.tgz","fileCount":112,"integrity":"sha512-GFrminHnU5dDSqL8KCxtrMJhu+WtUXpL32eQV4I9CAoELuCpuDDRANnHFbuau9vXrcdiTuGfpeXdUgJAO4YcuA==","signatures":[{"sig":"MEYCIQDcWszEDrrioUD0I+AFYkG2kq1MXu7sgsLCOWLTdeoJOAIhAIDH+wjNqTWzjt5BL+BAGcw2+EdWczI01nZNSnDkPKtc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":233493},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"94d29cf0d1c0a31d2667e1515bc2bd2560426d0e","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"thecombatwombat","email":"archit.joshi@gmail.com"},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.4.3_1769467887451_0.6766297506737016","host":"s3://npm-registry-packages-npm-production"}},"1.4.4":{"name":"replicant-mcp","version":"1.4.4","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.4.4","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"c6280e96fc83cc8fd66da6013a2af53e87918fbb","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.4.4.tgz","fileCount":112,"integrity":"sha512-6FqiuQCUlv1sCE9GJ9iEo0SUnW5/GGYpG692BfmCQNCEUArSVsMuZt4Ag9D0OO5En98UXLpUkP5i8DoF2GrJNw==","signatures":[{"sig":"MEUCIHFq/vphqjGwUsBLZ6zyhATxu3ezV4LneXDUKiw77+QlAiEAyfI2pRd1tA/M7v4g4svGLENe4HW0JCDtOhh60f3MYJ0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":234059},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"d919d51fed02691d40976d7e4a3d25cd4dd15d1a","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"thecombatwombat","email":"archit.joshi@gmail.com"},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.4.4_1769482054451_0.6761821316501804","host":"s3://npm-registry-packages-npm-production"}},"1.4.5":{"name":"replicant-mcp","version":"1.4.5","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.4.5","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"7ef917d20b5526c70b9f6bfe69f90d188fcab79b","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.4.5.tgz","fileCount":112,"integrity":"sha512-q+Qy2DVzWFNLbJATiToxKGaWMU9p6XxfW+zU9xDPyOW2LwWZ6iMNqOSHbrtBTfZlzxFGDQPHPQtgPXvJg5l1+Q==","signatures":[{"sig":"MEUCIQCiSBIadGWMSOoKbMIqVw5RzLZucTk33QH2z5YyWEMk+QIgdt5MK+H2oKLjhcF15cScjHT2UjssdDmRkZl0Ra8ScMA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":236657},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"389a2c5cb8744baaa89b887f36b65b3056d7ae24","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"thecombatwombat","email":"archit.joshi@gmail.com"},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.4.5_1769493043763_0.790886596623577","host":"s3://npm-registry-packages-npm-production"}},"1.4.6":{"name":"replicant-mcp","version":"1.4.6","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.4.6","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"64bda21f256fd6836e95c032249b7722c3247eae","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.4.6.tgz","fileCount":112,"integrity":"sha512-eKuIr3n2/rHlhGEcuqQRPqv/ec+Y/G6q9He6pUGn3P7jlNId6VYOXCwedsAA2aLDrolsMPmzCyRxvdSiEOJ+6w==","signatures":[{"sig":"MEQCIAaf0jfApgb5WM8MmaRUrlXi4pXcMsfIia1eV4opP3TwAiAZaMFfnmSu87rNFr1TARXRdyL5Hj5GojPwKK8FqbTolw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":236802},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"8665e5490f9e0ad2e1a54ecb3ca7ed7394da755b","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","validate":"npm run build && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"thecombatwombat","email":"archit.joshi@gmail.com"},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.4.6_1769494256330_0.3737397754554914","host":"s3://npm-registry-packages-npm-production"}},"1.4.7":{"name":"replicant-mcp","version":"1.4.7","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.4.7","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"15ae5d28c3b60629b80fa5952cd9a6538484789d","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.4.7.tgz","fileCount":116,"integrity":"sha512-WHyLycBKSh7bqa8NNJqFhWxliAQQJ2Lhgq2lARycxuNFnh9hIHKKrN7LX6LJ6SesnDqs3dlOEIufDePQw1lcDQ==","signatures":[{"sig":"MEQCIAgM9v8NebEudPV5cEMxYLfcelPWzBrvqkjHM2JmB7YBAiAp1BLHM67cHJvBIMxbmdBkmnV49U1mPg0aR5FKehZiSQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":232978},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"830b35b5456b9b734255569ffae019ef6a5183db","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","validate":"npm run build && npm run check-complexity && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","check-complexity":"bash scripts/check-complexity.sh","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"thecombatwombat","email":"archit.joshi@gmail.com"},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.4.7_1770383047268_0.548382145602641","host":"s3://npm-registry-packages-npm-production"}},"1.4.8":{"name":"replicant-mcp","version":"1.4.8","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.4.8","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant":"dist/cli.js","replicant-mcp":"dist/index.js"},"dist":{"shasum":"7f3bd0c405adeda723f5f0a0216108d56fe14004","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.4.8.tgz","fileCount":116,"integrity":"sha512-EXxaIfuvs1qHIQIXO3jeXhnNOKSovkCtXFV84GP3D/fa/6e6pUZEOawilnabzf35ax+ekylHmOlWF0q6rYd77Q==","signatures":[{"sig":"MEYCIQDDONPcy414w90UkFINGdC6+mWHnxkx1GQUjeHnGa5lkQIhAOTYNn0k2fqH8YhfddCvX89wsJQeTdh5m6kz/lMUdx50","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/replicant-mcp@1.4.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":232978},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"65e119add4f83c7df66a1df6285f303d1d09bf87","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","validate":"npm run build && npm run check-complexity && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","check-complexity":"bash scripts/check-complexity.sh","test:integration":"vitest --run tests/integration"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5a530172-fd94-4b28-b34d-ba4dc5255347"}},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"20.20.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.17","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.4.8_1770384165812_0.3470880725089507","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"replicant-mcp","version":"1.5.0","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.5.0","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant-mcp":"dist/index.js"},"dist":{"shasum":"25b4b89bb9090e8eaacf28ee02eaf16e5371055b","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.5.0.tgz","fileCount":152,"integrity":"sha512-ZhotDOtFEkJGRxUuBrYIxkkokukWpBBVFQDrhecuDEOHrxHmZSAeuF2zzt6yv3RDlBxQBZxlenqoWOkgAZePPA==","signatures":[{"sig":"MEYCIQCEm7BS76/o9lWF2QfoIB31iuAackJCtvG/4a+KlZK4+wIhALb1WwPZeA6ZbBbP+a0FfyCW6Hg1uGXVY64X7Z80Cum6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/replicant-mcp@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":387927},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"62e431b4f319c746570fa5c4b5a65931268763ec","scripts":{"dev":"tsc --watch","lint":"eslint src/ tests/","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","lint:fix":"eslint src/ tests/ --fix","validate":"npm run build && npm run lint && npm run check-complexity && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:contracts":"tsx scripts/contract-test.ts","check:contracts":"tsx scripts/check-contracts.ts","check-complexity":"bash scripts/check-complexity.sh","test:integration":"vitest --run tests/integration","generate:contracts":"tsx scripts/generate-contract.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5a530172-fd94-4b28-b34d-ba4dc5255347"}},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.10.1","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"20.20.0","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","eslint":"^10.0.2","vitest":"^4.0.17","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","typescript-eslint":"^8.56.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.5.0_1771945085160_0.9721399189546751","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"replicant-mcp","version":"1.6.0","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.6.0","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant-mcp":"dist/index.js"},"dist":{"shasum":"9458e3f85ed6965797c592225989e0d0f26cd080","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.6.0.tgz","fileCount":156,"integrity":"sha512-o9Hcut6Q0uKM7oC9cqZ+9lxozd/WeVKumizGmQtDdPSgrnyhcBaX83bcmIIHWNzm6/JbZXVE8KDYkDE051AayA==","signatures":[{"sig":"MEQCIAxWafsI/Q8QMQrmV8KRVrkpi7QjyzIouyUt3ih1CP1qAiAQstn1CqxqX2d5nUszNRpMnDcdpQqTISkBQDK/bQbSdg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/replicant-mcp@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":387748},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"528079f6f26c9d5e1dc38cc2fbff189a028c8a4d","scripts":{"dev":"tsc --watch","lint":"eslint src/ tests/","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","lint:fix":"eslint src/ tests/ --fix","validate":"npm run build && npm run lint && npm run check-complexity && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:contracts":"tsx scripts/contract-test.ts","check:contracts":"tsx scripts/check-contracts.ts","check-complexity":"bash scripts/check-complexity.sh","test:integration":"vitest --run tests/integration","generate:contracts":"tsx scripts/generate-contract.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5a530172-fd94-4b28-b34d-ba4dc5255347"}},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.11.1","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"20.20.1","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","eslint":"^10.0.2","vitest":"^4.0.17","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","typescript-eslint":"^8.56.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.6.0_1773412658988_0.6542453935523878","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"replicant-mcp","version":"1.6.1","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.6.1","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant-mcp":"dist/index.js"},"dist":{"shasum":"eb93e6ab51008185dfada7a5005ab70b68f33392","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.6.1.tgz","fileCount":156,"integrity":"sha512-eAr7HL0wx0PrS28cAbos1Qhj4nX5E/uuoEmMN4QbnEmW2ZydA3R+1s6jsK91yEJEVkOc2LCOyt+AugvB3tpqzg==","signatures":[{"sig":"MEQCIG1QPiHOrdyfgmEcjCx1zF8JOrilSLpShID8TnIN9fnQAiBWW78QrLqLchAVNkeSXnzNxDdpus1MmniimPpya3ND1Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/replicant-mcp@1.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":387804},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"f11ee15f818f8b136a8f362b898f2ea8a22a8e5c","mcpName":"io.github.thecombatwombat/replicant-mcp","scripts":{"dev":"tsc --watch","lint":"eslint src/ tests/","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","lint:fix":"eslint src/ tests/ --fix","validate":"npm run build && npm run lint && npm run check-complexity && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:contracts":"tsx scripts/contract-test.ts","check:contracts":"tsx scripts/check-contracts.ts","check-complexity":"bash scripts/check-complexity.sh","test:integration":"vitest --run tests/integration","generate:contracts":"tsx scripts/generate-contract.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5a530172-fd94-4b28-b34d-ba4dc5255347"}},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.12.0","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"20.20.1","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","eslint":"^10.0.2","vitest":"^4.0.17","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","typescript-eslint":"^8.56.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.6.1_1774471840346_0.8940198758637117","host":"s3://npm-registry-packages-npm-production"}},"1.6.2":{"name":"replicant-mcp","version":"1.6.2","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.6.2","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant-mcp":"dist/index.js"},"dist":{"shasum":"ad8eb38afdec42ec3e3e51b0499a12d8ee0fa477","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.6.2.tgz","fileCount":157,"integrity":"sha512-bQ8+QgbH1xtT20pb4GRJHOYqomxImbrTZA8umwq4HFBIJ92GPeR64Fi6+0TANUyrW/bkPM7BU76HP4uopJohjw==","signatures":[{"sig":"MEUCIFtwmtL+acbto++46EqSACfP4gBKT+buiUfjIse1qk5CAiEA4v/2CkAfZLMZeOFYeOqq+UAkjJTQlLR7fIekSh4Vf5Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/replicant-mcp@1.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":496965},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"8d85c077b1484cda667c87202e47411b75bf2cbd","mcpName":"io.github.thecombatwombat/replicant-mcp","scripts":{"dev":"tsc --watch","lint":"eslint src/ tests/","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","lint:fix":"eslint src/ tests/ --fix","validate":"npm run build && npm run lint && npm run check-complexity && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:contracts":"tsx scripts/contract-test.ts","check:contracts":"tsx scripts/check-contracts.ts","check-complexity":"bash scripts/check-complexity.sh","test:integration":"vitest --run tests/integration","generate:contracts":"tsx scripts/generate-contract.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5a530172-fd94-4b28-b34d-ba4dc5255347"}},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.12.1","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"20.20.1","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","eslint":"^10.0.2","vitest":"^4.0.17","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","typescript-eslint":"^8.56.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.6.2_1775156387096_0.058168409129548904","host":"s3://npm-registry-packages-npm-production"}},"1.6.3":{"name":"replicant-mcp","version":"1.6.3","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.6.3","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant-mcp":"dist/index.js"},"dist":{"shasum":"ce710259945f6304f3e7fc97489cfd8ed951d131","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.6.3.tgz","fileCount":157,"integrity":"sha512-N5U2wivIAuwg8fkUhS1jWy9drMA6Dhxbq0sEnyTCFivwxhQEOHWlTsnZu9pjKNOR+cCVK3HOhtZI3/4//LS7VA==","signatures":[{"sig":"MEUCIQDZEcK5T+pRaVZAw2EXzoc9UXnmNFxGSiM6ZyLMCveyAwIgCXn4V0ETbnXq8ZS6YKdZnYNc1UxvBYun0zmElAu6SfU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/replicant-mcp@1.6.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":496965},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"6f46031d08c4c8e205264acd5cfba91cc2e3cf1d","mcpName":"io.github.thecombatwombat/replicant-mcp","scripts":{"dev":"tsc --watch","lint":"eslint src/ tests/","test":"vitest","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","lint:fix":"eslint src/ tests/ --fix","validate":"npm run build && npm run lint && npm run check-complexity && npm run test -- --run","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test -- --run","test:contracts":"tsx scripts/contract-test.ts","check:contracts":"tsx scripts/check-contracts.ts","check-complexity":"bash scripts/check-complexity.sh","test:integration":"vitest --run tests/integration","generate:contracts":"tsx scripts/generate-contract.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5a530172-fd94-4b28-b34d-ba4dc5255347"}},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.12.1","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"20.20.1","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","eslint":"^10.0.2","vitest":"^4.0.17","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","typescript-eslint":"^8.56.1","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.6.3_1775160464541_0.27452089477568653","host":"s3://npm-registry-packages-npm-production"}},"1.6.4":{"name":"replicant-mcp","version":"1.6.4","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.6.4","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant-mcp":"dist/index.js"},"dist":{"shasum":"2d57ac5302af9b035cfa4c9d80fcc6d86046c308","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.6.4.tgz","fileCount":162,"integrity":"sha512-Nn90K23l4V+FUgYi6GmTo3P2LZ+yjGYK2byQwWVFCgSXe8V0dvf131B2jd3vTvkX8aJa85fSFggYQOtjssv0jg==","signatures":[{"sig":"MEUCIQDIQCn5pAteSP+NKhI27P76FQB+rDwzTx1H+mJ2Eki2zgIgRYnDI7SjiX0fe1lwShYmfV2XVp4gds95ha0MX64LfLI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/replicant-mcp@1.6.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":517160},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"94a0cc112b582d726985dadb355b75cbf47c80a1","mcpName":"io.github.thecombatwombat/replicant-mcp","scripts":{"dev":"tsc --watch","lint":"eslint src/ tests/","test":"vitest --run","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","lint:fix":"eslint src/ tests/ --fix","posttest":"npm run check:contracts","validate":"npm run build && npm run lint && npm run check-complexity && npm test","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:watch":"vitest","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test","test:contracts":"tsx scripts/contract-test.ts","check:contracts":"tsx scripts/check-contracts.ts && tsx scripts/check-token-snapshot.ts","check-complexity":"bash scripts/check-complexity.sh","test:integration":"vitest --run tests/integration","generate:contracts":"tsx scripts/generate-contract.ts && tsx scripts/generate-token-snapshot.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5a530172-fd94-4b28-b34d-ba4dc5255347"}},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.13.0","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","eslint":"^10.0.2","vitest":"^4.0.17","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","typescript-eslint":"^8.56.1","@anthropic-ai/mcpb":"^2.1.2","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.6.4_1777492481075_0.8739275659307293","host":"s3://npm-registry-packages-npm-production"}},"1.6.5":{"name":"replicant-mcp","version":"1.6.5","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.6.5","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant-mcp":"dist/index.js"},"dist":{"shasum":"788e0616a85373ece96bc556c9b6b66dccb8bebe","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.6.5.tgz","fileCount":162,"integrity":"sha512-rIco8HCvY9BnJApTqglTdkWJmmRzGVXgboLx7mt2cNHZHDzmjzYOQHwpnp8C+wTIhxc+5X/WZ6B+4wOGO7dxsA==","signatures":[{"sig":"MEUCIQDXg+vDoo2Jv5P4r2BAuaMJk9bZLp2NCOhWOeE1A9n1lwIgJLBkekwjBzv1E9ZRMTXZSCDD4FKEzjGOx08EoHy43Iw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/replicant-mcp@1.6.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":517160},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"41eebb69873405fc6ef434527de368081725f942","mcpName":"io.github.thecombatwombat/replicant-mcp","scripts":{"dev":"tsc --watch","lint":"eslint src/ tests/","test":"vitest --run","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","lint:fix":"eslint src/ tests/ --fix","posttest":"npm run check:contracts","validate":"npm run build && npm run lint && npm run check-complexity && npm test","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:watch":"vitest","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test","test:contracts":"tsx scripts/contract-test.ts","check:contracts":"tsx scripts/check-contracts.ts && tsx scripts/check-token-snapshot.ts","check-complexity":"bash scripts/check-complexity.sh","test:integration":"vitest --run tests/integration","generate:contracts":"tsx scripts/generate-contract.ts && tsx scripts/generate-token-snapshot.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5a530172-fd94-4b28-b34d-ba4dc5255347"}},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.13.0","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","eslint":"^10.0.2","vitest":"^4.0.17","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","typescript-eslint":"^8.56.1","@anthropic-ai/mcpb":"^2.1.2","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.6.5_1777494558951_0.3096303503765798","host":"s3://npm-registry-packages-npm-production"}},"1.6.6":{"name":"replicant-mcp","version":"1.6.6","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","_id":"replicant-mcp@1.6.6","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"bin":{"replicant-mcp":"dist/index.js"},"dist":{"shasum":"17c964850e9a4f8294ac5a2f5e3b734a84fcc8bd","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.6.6.tgz","fileCount":162,"integrity":"sha512-eNmhLz1EuPiBgewrtnlUfhg2uhW7GOy7cxKUUbRS5zgL7PjZ4qQOhA/kz6z02X5kiGPEd3WAlYsKxHu3a0IL0Q==","signatures":[{"sig":"MEYCIQDRyxKGyn7gs1GZrQap64+vY+FjYfoDgZkSyr4T3Oz9KwIhAIhfGi3RB9RGTwPkiVTdCjaGnqWjtB09pivROhN63zfK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/replicant-mcp@1.6.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":517160},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"2d99c70db895306ec6abc79bf2b7701b608559a5","mcpName":"io.github.thecombatwombat/replicant-mcp","scripts":{"dev":"tsc --watch","lint":"eslint src/ tests/","test":"vitest --run","build":"tsc","start":"npm run build && node dist/index.js","release":"bash scripts/release.sh","lint:fix":"eslint src/ tests/ --fix","posttest":"npm run check:contracts","validate":"npm run build && npm run lint && npm run check-complexity && npm test","test:unit":"vitest --run tests/services tests/adapters tests/tools","smoke-test":"bash scripts/smoke-test.sh","test:watch":"vitest","test:device":"tsx scripts/real-device-test.ts","check-prereqs":"bash scripts/check-prerequisites.sh","release:major":"bash scripts/release.sh major","release:minor":"bash scripts/release.sh minor","test:coverage":"vitest --run --coverage","prepublishOnly":"npm run build && npm test","test:contracts":"tsx scripts/contract-test.ts","check:contracts":"tsx scripts/check-contracts.ts && tsx scripts/check-token-snapshot.ts","check-complexity":"bash scripts/check-complexity.sh","test:integration":"vitest --run tests/integration","generate:contracts":"tsx scripts/generate-contract.ts && tsx scripts/generate-token-snapshot.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5a530172-fd94-4b28-b34d-ba4dc5255347"}},"repository":{"url":"git+https://github.com/thecombatwombat/replicant-mcp.git","type":"git"},"_npmVersion":"11.13.0","description":"Android MCP server for AI-assisted Android development","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^4.3.5","yaml":"^2.8.2","execa":"^9.6.1","sharp":"^0.34.5","commander":"^14.0.2","tesseract.js":"^7.0.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","eslint":"^10.0.2","vitest":"^4.0.17","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^25.0.9","@types/sharp":"^0.31.1","typescript-eslint":"^8.56.1","@anthropic-ai/mcpb":"^2.1.2","@vitest/coverage-v8":"^4.0.17"},"_npmOperationalInternal":{"tmp":"tmp/replicant-mcp_1.6.6_1777580177971_0.9440624934217017","host":"s3://npm-registry-packages-npm-production"}},"1.6.7":{"name":"replicant-mcp","version":"1.6.7","description":"Android MCP server for AI-assisted Android development","mcpName":"io.github.thecombatwombat/replicant-mcp","type":"module","main":"dist/index.js","bin":{"replicant-mcp":"dist/index.js"},"scripts":{"build":"tsc","dev":"tsc --watch","test":"vitest --run","posttest":"npm run check:contracts","test:watch":"vitest","test:unit":"vitest --run tests/services tests/adapters tests/tools","test:integration":"vitest --run tests/integration","test:coverage":"vitest --run --coverage","check-prereqs":"bash scripts/check-prerequisites.sh","smoke-test":"bash scripts/smoke-test.sh","test:device":"tsx scripts/real-device-test.ts","start":"npm run build && node dist/index.js","lint":"eslint src/ tests/","lint:fix":"eslint src/ tests/ --fix","check-complexity":"bash scripts/check-complexity.sh","validate":"npm run build && npm run lint && npm run check-complexity && npm test","prepublishOnly":"npm run build && npm test","release":"bash scripts/release.sh","release:minor":"bash scripts/release.sh minor","release:major":"bash scripts/release.sh major","generate:contracts":"tsx scripts/generate-contract.ts && tsx scripts/generate-token-snapshot.ts","check:contracts":"tsx scripts/check-contracts.ts && tsx scripts/check-token-snapshot.ts","test:contracts":"tsx scripts/contract-test.ts"},"keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"author":{"name":"Archit Joshi"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/thecombatwombat/replicant-mcp.git"},"engines":{"node":">=18.0.0"},"dependencies":{"@modelcontextprotocol/sdk":"^1.25.3","commander":"^14.0.2","execa":"^9.6.1","sharp":"^0.34.5","tesseract.js":"^7.0.0","yaml":"^2.8.2","zod":"^4.3.5"},"devDependencies":{"@anthropic-ai/mcpb":"^2.1.2","@eslint/js":"^10.0.1","@types/node":"^25.0.9","@types/sharp":"^0.31.1","@vitest/coverage-v8":"^4.0.17","eslint":"^10.0.2","tsx":"^4.21.0","typescript":"^5.9.3","typescript-eslint":"^8.56.1","vitest":"^4.0.17"},"gitHead":"2d0623ecc7c263d66f928b84aa93a71d86b05516","types":"./dist/index.d.ts","_id":"replicant-mcp@1.6.7","bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","_nodeVersion":"20.20.2","_npmVersion":"11.14.0","dist":{"integrity":"sha512-SNgxHGKMEi14RDGcPkxQBpjPlHKWSJY0sA6k4Wz2rc48DzBDL3qt3wbnndzbKXX34l46qmSkWCjgJZytPfPHbg==","shasum":"8a65c0d12c4fdef3a826e40f705ffddd6a63724f","tarball":"https://registry.npmjs.org/replicant-mcp/-/replicant-mcp-1.6.7.tgz","fileCount":162,"unpackedSize":517160,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/replicant-mcp@1.6.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCID+9rITofFxP+diaV6VP+35syeRUPEAJ/R0t87N1NgS6AiAH1OYT4bcSu9Y/zA07dluEOy0Q7TJluHOXGQILkiXNtA=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5a530172-fd94-4b28-b34d-ba4dc5255347"}},"directories":{},"maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/replicant-mcp_1.6.7_1778127070795_0.9264383156525042"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-21T07:58:31.573Z","modified":"2026-05-07T04:11:11.338Z","1.0.0":"2026-01-21T07:58:31.735Z","1.0.4":"2026-01-21T20:09:21.471Z","1.1.0":"2026-01-22T02:20:25.989Z","1.1.1":"2026-01-22T03:42:19.369Z","1.2.0":"2026-01-23T19:09:52.262Z","1.2.1":"2026-01-23T19:11:27.852Z","1.3.0":"2026-01-23T20:12:39.606Z","1.3.1":"2026-01-23T20:18:27.453Z","1.3.2":"2026-01-23T20:55:04.335Z","1.4.0":"2026-01-26T13:05:06.086Z","1.4.1":"2026-01-26T13:43:02.044Z","1.4.2":"2026-01-26T21:15:12.623Z","1.4.3":"2026-01-26T22:51:27.627Z","1.4.4":"2026-01-27T02:47:34.608Z","1.4.5":"2026-01-27T05:50:43.917Z","1.4.6":"2026-01-27T06:10:56.479Z","1.4.7":"2026-02-06T13:04:07.421Z","1.4.8":"2026-02-06T13:22:45.959Z","1.5.0":"2026-02-24T14:58:05.346Z","1.6.0":"2026-03-13T14:37:39.203Z","1.6.1":"2026-03-25T20:50:40.524Z","1.6.2":"2026-04-02T18:59:47.347Z","1.6.3":"2026-04-02T20:07:44.768Z","1.6.4":"2026-04-29T19:54:41.309Z","1.6.5":"2026-04-29T20:29:19.175Z","1.6.6":"2026-04-30T20:16:18.159Z","1.6.7":"2026-05-07T04:11:11.062Z"},"bugs":{"url":"https://github.com/thecombatwombat/replicant-mcp/issues"},"author":{"name":"Archit Joshi"},"license":"MIT","homepage":"https://github.com/thecombatwombat/replicant-mcp#readme","keywords":["mcp","model-context-protocol","android","adb","gradle","emulator","ui-automation","ai","llm"],"repository":{"type":"git","url":"git+https://github.com/thecombatwombat/replicant-mcp.git"},"description":"Android MCP server for AI-assisted Android development","maintainers":[{"name":"thecombatwombat","email":"archit.joshi@gmail.com"}],"readme":"# replicant-mcp\n\n**Let AI build, test, and debug your Android apps.**\n\n[![CI](https://github.com/thecombatwombat/replicant-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/thecombatwombat/replicant-mcp/actions/workflows/ci.yml)\n[![npm](https://img.shields.io/npm/v/replicant-mcp)](https://www.npmjs.com/package/replicant-mcp)\n[![Node.js](https://img.shields.io/badge/Node.js-18%2B-green)](https://nodejs.org/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)\n[![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/thecombatwombat/replicant-mcp)\n[![replicant-mcp MCP server](https://glama.ai/mcp/servers/thecombatwombat/replicant-mcp/badges/card.svg)](https://glama.ai/mcp/servers/thecombatwombat/replicant-mcp)\n\nreplicant-mcp is a [Model Context Protocol](https://modelcontextprotocol.io/) server that gives AI assistants like Claude the ability to interact with your Android development environment. Build APKs, launch emulators, install apps, navigate UIs, and debug crashes—all through natural conversation.\n\n---\n\n## Demo\n\n![replicant-mcp demo](demo.gif)\n\n---\n\n## Why replicant-mcp?\n\n| Without replicant-mcp | With replicant-mcp |\n|-----------------------|-------------------|\n| \"Run `./gradlew assembleDebug`, then `adb install`, then `adb shell am start`...\" | \"Build and run the app\" |\n| Copy-paste logcat output, lose context | AI reads filtered logs directly |\n| Screenshot → describe UI → guess coordinates | AI sees accessibility tree, taps elements by text |\n| 5,000 tokens of raw Gradle output | 50-token summary + details on demand |\n\n---\n\n## Features\n\n| Category | Capabilities |\n|----------|-------------|\n| **Build & Test** | Build APKs/bundles, run unit and instrumented tests, list modules/variants/tasks, test regression detection with baseline comparison |\n| **Emulator** | Create, start, stop, wipe emulators; save/load/delete snapshots |\n| **Device Control** | List connected devices, select active device, query device properties |\n| **App Management** | Install, uninstall, launch, stop apps; clear app data |\n| **Log Analysis** | Filter logcat by package, tag, level, time |\n| **UI Automation** | Accessibility-first element finding, spatial proximity search, tap, text input, screenshots |\n| **Diagnostics** | Environment health checks via `replicant doctor`; structured logging with configurable level and format |\n\n---\n\n## Coming Soon\n\n- Custom build commands (project-specific overrides, auto-detect gradlew)\n- Video capture (start/stop recording, duration-based capture)\n\n---\n\n## Quick Start\n\n### Prerequisites\n\n- **Node.js 18+**\n- **Android SDK** with `adb` and `emulator` in your PATH\n- An Android project with `gradlew` (for build tools)\n\n```bash\nnode --version      # Should be 18+\nadb --version       # Should show Android Debug Bridge version\nemulator -version   # Should show Android emulator version\n```\n\n### Installation\n\n```bash\nnpm install -g replicant-mcp\n```\n\nAfter installation, run the built-in diagnostics to verify your environment:\n\n```bash\nreplicant doctor\n```\n\n### Updating\n\n```bash\nnpm update -g replicant-mcp\n```\n\n---\n\n## Setup\n\n### Claude Desktop\n\nAdd to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\\Claude\\claude_desktop_config.json` (Windows):\n\n```json\n{\n  \"mcpServers\": {\n    \"replicant\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"replicant-mcp\"]\n    }\n  }\n}\n```\n\n### Claude Code\n\n```bash\nclaude mcp add replicant -- npx -y replicant-mcp\n```\n\n### Cursor\n\nAdd to `~/.cursor/mcp.json` (global) or `.cursor/mcp.json` (project):\n\n```json\n{\n  \"mcpServers\": {\n    \"replicant\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"replicant-mcp\"]\n    }\n  }\n}\n```\n\n### Windsurf\n\nAdd to `~/.codeium/windsurf/mcp_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"replicant\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"replicant-mcp\"]\n    }\n  }\n}\n```\n\n### OpenAI Codex CLI\n\nAdd to `~/.codex/config.toml`:\n\n```toml\n[mcp_servers.replicant]\ncommand = \"npx\"\nargs = [\"-y\", \"replicant-mcp\"]\n```\n\nOr via CLI:\n\n```bash\ncodex mcp add replicant -- npx -y replicant-mcp\n```\n\n> **Note:** Ensure `adb` and `emulator` are in your PATH, or set `ANDROID_HOME` environment variable. On macOS: `~/Library/Android/sdk`, on Linux: `~/Android/Sdk`.\n\n---\n\n## Example\n\n```\nYou: \"I just changed the checkout flow. Build the app, go through checkout\n      with a test product, and make sure the confirmation screen shows up.\"\n\nClaude: [Builds debug APK, installs on emulator, launches app]\n        [Taps \"Electronics\" category → \"Wireless Headphones\" → \"Add to Cart\"]\n        [Navigates to cart, taps \"Checkout\"]\n        [Fills shipping form, taps \"Place Order\"]\n\n        Confirmation screen is showing:\n        - Order #38291\n        - \"Wireless Headphones\" × 1\n        - Total: $79.99\n        - Estimated delivery: Jan 30\n\n        The flow works. Want me to test the edge cases—empty cart,\n        invalid address, payment failure?\n```\n\n---\n\n## Design\n\nreplicant-mcp uses progressive disclosure (summaries first, details on demand) to minimize token usage, and accessibility-first UI automation for faster, cheaper, more reliable interactions than screenshot-based approaches. See [docs/architecture.md](docs/architecture.md) for details.\n\n---\n\n## More Info\n\n- **Configuration:** Set `REPLICANT_CONFIG` for advanced options. See [docs/configuration.md](docs/configuration.md).\n- **Logging:** Set `REPLICANT_LOG_LEVEL` (`error`, `warn`, `info`, `debug`) and `REPLICANT_LOG_FORMAT` (`json` for structured output) to control server logging. Logs are written to stderr.\n- **Troubleshooting:** Common issues and solutions in [docs/troubleshooting.md](docs/troubleshooting.md).\n- **Tool documentation:** Ask Claude to call `rtfm` with a category like \"build\", \"adb\", \"emulator\", or \"ui\".\n\n---\n\n## Documentation\n\n| Document | Description |\n|----------|-------------|\n| [Architecture](docs/architecture.md) | Design overview and progressive disclosure pattern |\n| [Configuration](docs/configuration.md) | Config file reference, environment variables, Gradle setup |\n| [API Stability](docs/api-stability.md) | Tool API versioning policy and deprecation process |\n| [Security Model](docs/security.md) | adb-shell safety model, command denylist, threat boundaries |\n| [Support Matrix](docs/support-matrix.md) | Tested OS, Node.js, Android SDK, and emulator versions |\n| [Known Limitations](docs/known-limitations.md) | Accessibility gaps, timeouts, single-device focus, and more |\n| [Artifacts](docs/artifacts.md) | `.replicant/` directory contents and privacy considerations |\n| [Troubleshooting](docs/troubleshooting.md) | Common issues and solutions |\n| [Changelog](CHANGELOG.md) | Version history |\n| [Security Policy](SECURITY.md) | Vulnerability reporting process |\n| [Support / Getting Help](SUPPORT.md) | How to report bugs and ask questions |\n| [Contributing](CONTRIBUTING.md) | Development setup and guidelines |\n\n---\n\n## Contributing\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for development setup and guidelines.\n\n---\n\n## Acknowledgments\n\n- Inspired by [xc-mcp](https://github.com/conorluddy/xc-mcp) for iOS\n- Built on the [Model Context Protocol](https://modelcontextprotocol.io/)\n\n---\n\n## License\n\n[MIT](LICENSE)\n\n---\n\n**Questions?** [Open an issue](https://github.com/thecombatwombat/replicant-mcp/issues)\n","readmeFilename":"README.md"}