{"_id":"@dtz-labs/zesarux-mcp","_rev":"8-f0a07192bad64d57f402af6bb1290cb2","name":"@dtz-labs/zesarux-mcp","dist-tags":{"latest":"2.3.0"},"versions":{"1.0.0":{"name":"@dtz-labs/zesarux-mcp","version":"1.0.0","keywords":["mcp","model-context-protocol","zesarux","zx-spectrum","emulator","debugging"],"author":"","license":"MIT","_id":"@dtz-labs/zesarux-mcp@1.0.0","maintainers":[{"name":"mpasternak","email":"michal.dtz@gmail.com"}],"homepage":"https://github.com/dtz-labs/zesarux-mcp#readme","bugs":{"url":"https://github.com/dtz-labs/zesarux-mcp/issues"},"bin":{"zesarux-mcp":"dist/index.js"},"dist":{"shasum":"edb506407422f10eb2d3af3463d20f821dae2eda","tarball":"https://registry.npmjs.org/@dtz-labs/zesarux-mcp/-/zesarux-mcp-1.0.0.tgz","fileCount":26,"integrity":"sha512-t4TNjSBoAGwL7AowH5iRUOSwc7lZi7Sr13Nxn54QV1s72BWbK54gBhLyVbPu3ezMgSz43u8HXgDkr48h8GxnJw==","signatures":[{"sig":"MEYCIQDGqDr1le8LzzaqVVaOhTRir+vi79j7pguEJJ7oE5Ve0gIhAPSl4pavxehPbzNwx5fyG4GQ/27/yLo4OFhMdbOJMwMU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":129732},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"bfed050f8180450d9cc2d4586cb8e2932806a52e","scripts":{"dev":"tsc && node dist/index.js","lint":"eslint src/**/*.ts","test":"node --test dist/test/**/*.test.js","build":"tsc","start":"node dist/index.js","watch":"tsc --watch","prepare":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"mpasternak","email":"michal.dtz@gmail.com"},"repository":{"url":"git+https://github.com/dtz-labs/zesarux-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP server for ZEsarUX ZX Spectrum emulator using ZRCP protocol","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.3","@types/node":"^22.10.2"},"_npmOperationalInternal":{"tmp":"tmp/zesarux-mcp_1.0.0_1782127977666_0.09365512837978351","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@dtz-labs/zesarux-mcp","version":"1.0.1","keywords":["mcp","model-context-protocol","zesarux","zx-spectrum","emulator","debugging"],"author":"","license":"MIT","_id":"@dtz-labs/zesarux-mcp@1.0.1","maintainers":[{"name":"mpasternak","email":"michal.dtz@gmail.com"}],"homepage":"https://github.com/dtz-labs/zesarux-mcp#readme","bugs":{"url":"https://github.com/dtz-labs/zesarux-mcp/issues"},"bin":{"zesarux-mcp":"dist/index.js"},"dist":{"shasum":"61e6f4a93a52b6d9839f6814aed4a8725bdb2ebb","tarball":"https://registry.npmjs.org/@dtz-labs/zesarux-mcp/-/zesarux-mcp-1.0.1.tgz","fileCount":30,"integrity":"sha512-T7tjNla99IfYZK+TjesxEuU2fqusiKvi2tfS1DucSOqOeVsG0RF5lgxhF8EQ6Bp4+3I3T+FUHwy2ujl2CzXYVQ==","signatures":[{"sig":"MEUCIQCcghuVEN5ansPKqTfpZcTyOdCUdo3osKB12MjzLds8+wIgRsB6CM8Vz0I0E1y3IaIqwQUEznMkowVIxGMsDYfXvV0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dtz-labs%2fzesarux-mcp@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":135221},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"671ab28807c4bcaf698f5a8244d4e55795aa9128","scripts":{"dev":"tsc && node dist/index.js","lint":"eslint src/**/*.ts","test":"node --test dist/test/","build":"tsc","start":"node dist/index.js","watch":"tsc --watch","prepare":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a0163862-7416-4e00-a86b-195c7aa4f98a"}},"repository":{"url":"git+https://github.com/dtz-labs/zesarux-mcp.git","type":"git"},"_npmVersion":"11.17.0","description":"MCP server for ZEsarUX ZX Spectrum emulator using ZRCP protocol","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.3","@types/node":"^22.10.2"},"_npmOperationalInternal":{"tmp":"tmp/zesarux-mcp_1.0.1_1782129511980_0.9567319489804542","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@dtz-labs/zesarux-mcp","version":"1.0.2","keywords":["mcp","model-context-protocol","zesarux","zx-spectrum","emulator","debugging"],"author":"","license":"MIT","_id":"@dtz-labs/zesarux-mcp@1.0.2","maintainers":[{"name":"mpasternak","email":"michal.dtz@gmail.com"}],"homepage":"https://github.com/dtz-labs/zesarux-mcp#readme","bugs":{"url":"https://github.com/dtz-labs/zesarux-mcp/issues"},"bin":{"zesarux-mcp":"dist/index.js"},"dist":{"shasum":"53addb27287076b43f80235c4964c857672c6e76","tarball":"https://registry.npmjs.org/@dtz-labs/zesarux-mcp/-/zesarux-mcp-1.0.2.tgz","fileCount":34,"integrity":"sha512-eQR4PrWVfwdIT56qdC1TU+ZopQiYbWEZcT/uOjpZYtQ0dPm+QYWIEXr45w4LzkZsZ/B/8kp7eXmnfkshc5qy2w==","signatures":[{"sig":"MEYCIQDjMcovx0CacDHuYkBxN8jx3Ek2uaic6qcFQPmguNnG9gIhAMaWw5IYn8RiIgEUU+0TypWSVhC2tmLIp+kWXmNPYq/t","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dtz-labs%2fzesarux-mcp@1.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":141133},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"cb999e55647381c731a915c5b38695cd58b8003d","scripts":{"dev":"tsc && node dist/index.js","lint":"eslint src/**/*.ts","test":"node --test dist/test/","build":"tsc","start":"node dist/index.js","watch":"tsc --watch","prepare":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a0163862-7416-4e00-a86b-195c7aa4f98a"}},"repository":{"url":"git+https://github.com/dtz-labs/zesarux-mcp.git","type":"git"},"_npmVersion":"11.17.0","description":"MCP server for ZEsarUX ZX Spectrum emulator using ZRCP protocol","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.3","@types/node":"^22.10.2"},"_npmOperationalInternal":{"tmp":"tmp/zesarux-mcp_1.0.2_1782130285845_0.442233113692468","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@dtz-labs/zesarux-mcp","version":"1.1.0","keywords":["mcp","model-context-protocol","zesarux","zx-spectrum","emulator","debugging"],"author":"","license":"MIT","_id":"@dtz-labs/zesarux-mcp@1.1.0","maintainers":[{"name":"mpasternak","email":"michal.dtz@gmail.com"}],"homepage":"https://github.com/dtz-labs/zesarux-mcp#readme","bugs":{"url":"https://github.com/dtz-labs/zesarux-mcp/issues"},"bin":{"zesarux-mcp":"dist/index.js"},"dist":{"shasum":"e1101f3938ff66e6ab35426cd7d794c0891e3dbb","tarball":"https://registry.npmjs.org/@dtz-labs/zesarux-mcp/-/zesarux-mcp-1.1.0.tgz","fileCount":46,"integrity":"sha512-7EBYyP3nBeq9/my+DlwqI1e9krwnK0BDF5og6tJNa3MgyLkwH3oOAHPJk5uqWbZr5XTRqO528OSiJmKnp4z+vw==","signatures":[{"sig":"MEUCIQDtkBvbK5drcu5uwfI/7cBitmA6XDW12jqW05OzKkV5kgIgE3Txj6gOt+10qECqMaSdrTjEXHOFjXJ/hlnfHTYrNsM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dtz-labs%2fzesarux-mcp@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":215634},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"fa8c208c1d0c35166756bd14a387ddb713367bb0","scripts":{"dev":"tsc && node dist/index.js","lint":"eslint src/**/*.ts","test":"node --test dist/test/*.test.js","build":"tsc","start":"node dist/index.js","watch":"tsc --watch","prepare":"tsc","pretest":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a0163862-7416-4e00-a86b-195c7aa4f98a"}},"repository":{"url":"git+https://github.com/dtz-labs/zesarux-mcp.git","type":"git"},"_npmVersion":"11.17.0","description":"MCP server for ZEsarUX ZX Spectrum emulator using ZRCP protocol","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.3","@types/node":"^22.10.2"},"_npmOperationalInternal":{"tmp":"tmp/zesarux-mcp_1.1.0_1782137348286_0.9719468902278461","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@dtz-labs/zesarux-mcp","version":"2.0.0","keywords":["mcp","model-context-protocol","zesarux","zx-spectrum","emulator","debugging"],"author":"","license":"MIT","_id":"@dtz-labs/zesarux-mcp@2.0.0","maintainers":[{"name":"mpasternak","email":"michal.dtz@gmail.com"}],"homepage":"https://github.com/dtz-labs/zesarux-mcp#readme","bugs":{"url":"https://github.com/dtz-labs/zesarux-mcp/issues"},"bin":{"zesarux-mcp":"dist/index.js"},"dist":{"shasum":"498f9e21e2f9c187859c654c7cfdfb7f7625615c","tarball":"https://registry.npmjs.org/@dtz-labs/zesarux-mcp/-/zesarux-mcp-2.0.0.tgz","fileCount":50,"integrity":"sha512-4Iv5vF2X66gOUCff4BXWxELSmXlZMNOgbPdEwYU/siUBvfQQbjOG2lQ04Pypl+CjfLin7q6FbVfG8NRLVbAKsA==","signatures":[{"sig":"MEUCIQCvbswYVGYcOJvx3zV30NaspuJmb3auZzmquhrij657DAIgGeSt1VnrRyJZiQyERHmI/pdpaSe5C3E+oPB40OiF15k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dtz-labs%2fzesarux-mcp@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":270424},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"dea3752dd22fefa1e1e32c1a81bfc4624976d8e5","scripts":{"dev":"tsc && node dist/index.js","lint":"eslint src/**/*.ts","test":"node --test dist/test/*.test.js","build":"tsc","start":"node dist/index.js","watch":"tsc --watch","prepare":"tsc","pretest":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a0163862-7416-4e00-a86b-195c7aa4f98a"}},"repository":{"url":"git+https://github.com/dtz-labs/zesarux-mcp.git","type":"git"},"_npmVersion":"11.17.0","description":"MCP server for ZEsarUX ZX Spectrum emulator using ZRCP protocol","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.3","@types/node":"^22.10.2"},"_npmOperationalInternal":{"tmp":"tmp/zesarux-mcp_2.0.0_1782143867636_0.13726900933172703","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@dtz-labs/zesarux-mcp","version":"2.1.0","keywords":["mcp","model-context-protocol","zesarux","zx-spectrum","emulator","debugging"],"author":"","license":"MIT","_id":"@dtz-labs/zesarux-mcp@2.1.0","maintainers":[{"name":"mpasternak","email":"michal.dtz@gmail.com"}],"homepage":"https://github.com/dtz-labs/zesarux-mcp#readme","bugs":{"url":"https://github.com/dtz-labs/zesarux-mcp/issues"},"bin":{"zesarux-mcp":"dist/index.js"},"dist":{"shasum":"496c41ec4c5f4069e342b56ab9e8a13af7add394","tarball":"https://registry.npmjs.org/@dtz-labs/zesarux-mcp/-/zesarux-mcp-2.1.0.tgz","fileCount":54,"integrity":"sha512-QMN/5/4Osz8aOzVP8XRn4tNIZT1VG+Yxh7R2yGDQRHbZ/K7OXW/7CVcj0nl8gWd134Z2v20Fl6x5EnqAqwacXQ==","signatures":[{"sig":"MEYCIQCAIwiP8TdyBIBhkWSRo7L/MzpYfuVbslpFuXGX0o1vqQIhAKorfcyyY2CVfMVZeiXzZf0MU2A3WF1mxQLDYcZdSVpi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dtz-labs%2fzesarux-mcp@2.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":300604},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"c16eeb642c43f1268f1b800827074681cf544028","scripts":{"dev":"tsc && node dist/index.js","lint":"eslint src/**/*.ts","test":"node --test dist/test/*.test.js","build":"tsc","start":"node dist/index.js","watch":"tsc --watch","prepare":"tsc","pretest":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a0163862-7416-4e00-a86b-195c7aa4f98a"}},"repository":{"url":"git+https://github.com/dtz-labs/zesarux-mcp.git","type":"git"},"_npmVersion":"11.17.0","description":"MCP server for ZEsarUX ZX Spectrum emulator using ZRCP protocol","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.3","@types/node":"^22.10.2"},"_npmOperationalInternal":{"tmp":"tmp/zesarux-mcp_2.1.0_1782145377166_0.013703320091276172","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@dtz-labs/zesarux-mcp","version":"2.2.0","keywords":["mcp","model-context-protocol","zesarux","zx-spectrum","emulator","debugging"],"author":"","license":"MIT","_id":"@dtz-labs/zesarux-mcp@2.2.0","maintainers":[{"name":"mpasternak","email":"michal.dtz@gmail.com"}],"homepage":"https://github.com/dtz-labs/zesarux-mcp#readme","bugs":{"url":"https://github.com/dtz-labs/zesarux-mcp/issues"},"bin":{"zesarux-mcp":"dist/index.js"},"dist":{"shasum":"b4b7e406f3a731b45038edf74303ddd3aace8724","tarball":"https://registry.npmjs.org/@dtz-labs/zesarux-mcp/-/zesarux-mcp-2.2.0.tgz","fileCount":54,"integrity":"sha512-4WVM5l2KXe90fdnCYYq5baB3/yACrh5ZfKTNh5CpHOU1TjLg54rQUdLFH/pEqejbY3aSKkwHvBukdbBCIQSybw==","signatures":[{"sig":"MEQCIB8591tpSeiNSjk5KXb9t12eJYvVqdj8gHMRsTc6vdbkAiAO9fYNopeWC3eT2q+2WCz67VC9aixs3vR2Jh86RDXifQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dtz-labs%2fzesarux-mcp@2.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":300720},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"62fe9ad53a5e4449256219ca285fa9901f9cb730","scripts":{"dev":"tsc && node dist/index.js","lint":"eslint src/**/*.ts","test":"node --test dist/test/*.test.js","build":"tsc","start":"node dist/index.js","watch":"tsc --watch","prepare":"tsc","pretest":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a0163862-7416-4e00-a86b-195c7aa4f98a"}},"repository":{"url":"git+https://github.com/dtz-labs/zesarux-mcp.git","type":"git"},"_npmVersion":"11.17.0","description":"MCP server for ZEsarUX ZX Spectrum emulator using ZRCP protocol","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.3","@types/node":"^22.10.2"},"_npmOperationalInternal":{"tmp":"tmp/zesarux-mcp_2.2.0_1782145882914_0.12951628256820857","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@dtz-labs/zesarux-mcp","version":"2.3.0","description":"MCP server for ZEsarUX ZX Spectrum emulator using ZRCP protocol","type":"module","main":"dist/index.js","bin":{"zesarux-mcp":"dist/index.js"},"scripts":{"build":"tsc","watch":"tsc --watch","typecheck":"tsc --noEmit","start":"node dist/index.js","dev":"tsc && node dist/index.js","pretest":"tsc","test":"node --test dist/test/*.test.js","lint":"eslint src/**/*.ts","prepare":"tsc"},"keywords":["mcp","model-context-protocol","zesarux","zx-spectrum","emulator","debugging"],"author":"","license":"MIT","repository":{"type":"git","url":"git+https://github.com/dtz-labs/zesarux-mcp.git"},"bugs":{"url":"https://github.com/dtz-labs/zesarux-mcp/issues"},"homepage":"https://github.com/dtz-labs/zesarux-mcp#readme","publishConfig":{"access":"public"},"dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"devDependencies":{"@types/node":"^22.10.2","typescript":"^5.7.3"},"engines":{"node":">=18.0.0"},"gitHead":"a97275eabf737de66d748ece7e64bcc1493d15c2","types":"./dist/index.d.ts","_id":"@dtz-labs/zesarux-mcp@2.3.0","_nodeVersion":"22.22.3","_npmVersion":"11.17.0","dist":{"integrity":"sha512-ZbSOlPDACDGHwkmjTM6BdsM8ZL5F//7abnVLWTHb9l/sfYCHRdLrpYdD0b1MICPLrheOd8Jq08Z0GmL7swX8JQ==","shasum":"2e47ea78a7021db262bb0d051e0b8ca67b0c5cc1","tarball":"https://registry.npmjs.org/@dtz-labs/zesarux-mcp/-/zesarux-mcp-2.3.0.tgz","fileCount":54,"unpackedSize":309977,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dtz-labs%2fzesarux-mcp@2.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC1nygVe45a+GbBgRh3uncOhN2kFex5EjhOLfrs9VOlSgIhANh/yI8cbar9etcezrsQpbp6tjYczzJR211zBy5fJS8w"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a0163862-7416-4e00-a86b-195c7aa4f98a"}},"directories":{},"maintainers":[{"name":"mpasternak","email":"michal.dtz@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/zesarux-mcp_2.3.0_1782147605030_0.9744532374468227"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-22T11:32:57.536Z","modified":"2026-06-22T17:00:05.489Z","1.0.0":"2026-06-22T11:32:57.805Z","1.0.1":"2026-06-22T11:58:32.104Z","1.0.2":"2026-06-22T12:11:25.975Z","1.1.0":"2026-06-22T14:09:08.439Z","2.0.0":"2026-06-22T15:57:47.788Z","2.1.0":"2026-06-22T16:22:57.291Z","2.2.0":"2026-06-22T16:31:23.101Z","2.3.0":"2026-06-22T17:00:05.184Z"},"bugs":{"url":"https://github.com/dtz-labs/zesarux-mcp/issues"},"license":"MIT","homepage":"https://github.com/dtz-labs/zesarux-mcp#readme","keywords":["mcp","model-context-protocol","zesarux","zx-spectrum","emulator","debugging"],"repository":{"type":"git","url":"git+https://github.com/dtz-labs/zesarux-mcp.git"},"description":"MCP server for ZEsarUX ZX Spectrum emulator using ZRCP protocol","maintainers":[{"name":"mpasternak","email":"michal.dtz@gmail.com"}],"readme":"# ZEsarUX MCP Server\n\nMCP server for [ZEsarUX ZX Spectrum emulator](https://github.com/chernandezba/zesarux) using ZRCP protocol.\n\n> **[dtz-labs](https://github.com/dtz-labs)** - Vibe coding 8-bit machines like there is no tomorrow\n\n## Features\n\n13 tool categories with 50+ operations: machine control, PEEK/POKE, debugging (breakpoints, registers, disassembly), tape/disk loading, snapshots, keyboard input, assembly, and more.\n\n## Quick Start\n\nEach client launches the server over stdio via `npx` — no clone or build needed.\nThe server then connects to ZEsarUX on ZRCP port 10000, auto-launching it for you\nif nothing is listening there (on by default). Pick your client below; you'll\nstill need ZEsarUX installed — see [Installation](#installation).\n\n### Claude Code\n\nRegister the server with one command:\n```bash\nclaude mcp add zesarux -- npx -y @dtz-labs/zesarux-mcp\n```\n\nAuto-launch is on by default. To disable it (only connect to a ZEsarUX you start\nyourself), set the env var:\n```bash\nclaude mcp add zesarux --env ZESARUX_AUTOLAUNCH=false -- npx -y @dtz-labs/zesarux-mcp\n```\n\n### Claude Desktop\n\nEdit `claude_desktop_config.json` (macOS:\n`~/Library/Application Support/Claude/claude_desktop_config.json`; Windows:\n`%APPDATA%\\Claude\\claude_desktop_config.json`), then restart Claude Desktop:\n```json\n{\n  \"mcpServers\": {\n    \"zesarux\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@dtz-labs/zesarux-mcp\"]\n    }\n  }\n}\n```\n\n### Codex\n\nAdd to `~/.codex/config.toml`:\n```toml\n[mcp_servers.zesarux]\ncommand = \"npx\"\nargs = [\"-y\", \"@dtz-labs/zesarux-mcp\"]\n```\n\n### Opencode\n\nAdd to `opencode.json` (project) or `~/.config/opencode/opencode.json` (global):\n```json\n{\n  \"$schema\": \"https://opencode.ai/config.json\",\n  \"mcp\": {\n    \"zesarux\": {\n      \"type\": \"local\",\n      \"command\": [\"npx\", \"-y\", \"@dtz-labs/zesarux-mcp\"],\n      \"enabled\": true\n    }\n  }\n}\n```\n\n## Installation\n\n### 1. Install ZEsarUX\n\n**macOS:**\n```bash\nbrew install zesarux\nxattr -dr com.apple.quarantine /Applications/zesarux.app\n```\n\n> **Why the second command?** macOS Gatekeeper tags any app that wasn't downloaded\n> through the App Store (or signed/notarized by an identified developer) with a\n> `com.apple.quarantine` extended attribute. ZEsarUX isn't notarized, so the first\n> time you launch it Gatekeeper refuses to open it (\"can't be opened because Apple\n> cannot check it for malicious software\"). `xattr -dr` recursively strips that\n> attribute from the app bundle, telling Gatekeeper to trust it. This is needed\n> because the Homebrew cask drops the `.app` into `/Applications` but cannot clear\n> the quarantine flag for you.\n\n**Linux:**\n```bash\nsudo apt-get install zesarux\n```\n\n**Or download from:** [ZEsarUX releases](https://github.com/chernandezba/zesarux/releases)\n\nFor Windows, compiling from source, and enabling ZRCP via the config file, see the\nfull [Installation & Configuration](docs/installation.md) guide.\n\n### 2. Start ZEsarUX with ZRCP\n\n```bash\nzesarux --enable-remoteprotocol --remoteprotocol-port 10000\n```\n\nOr skip this step — the server auto-launches ZEsarUX for you by default (see\n[Auto-launching ZEsarUX](#auto-launching-zesarux) below).\n\n### 3. Install the MCP Server\n\nThe server is published to npm as [`@dtz-labs/zesarux-mcp`](https://www.npmjs.com/package/@dtz-labs/zesarux-mcp).\nYour MCP client launches it on demand via `npx` (see [Quick Start](#quick-start)),\nso nothing needs installing. To have it on your `PATH` as `zesarux-mcp`, install\nit globally:\n```bash\nnpm install -g @dtz-labs/zesarux-mcp\n```\n\n<details>\n<summary>From source (for development)</summary>\n\n```bash\ngit clone https://github.com/dtz-labs/zesarux-mcp.git\ncd zesarux-mcp\nnpm install\nnpm run build   # produces dist/index.js\n```\n\nThen point your config at `\"command\": \"node\", \"args\": [\"/absolute/path/to/zesarux-mcp/dist/index.js\"]`.\n</details>\n\n### Environment variables\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| `ZESARUX_HOST` | `localhost` | Host where ZEsarUX ZRCP is listening |\n| `ZESARUX_PORT` | _(auto)_ | ZRCP port (matches `--remoteprotocol-port`). Unset in AUTO mode → first free port ≥ 10000; set it to pin a specific port |\n| `LOG_LEVEL` | `info` | `debug` \\| `info` \\| `warn` \\| `error` (all logs go to stderr) |\n| `ZESARUX_TIMEOUT` | `30000` | ZRCP request timeout, ms |\n| `ZESARUX_RETRY_ATTEMPTS` | `3` | Connection retry attempts |\n| `ZESARUX_AUTO_RECONNECT` | `true` | Reconnect automatically if the link drops |\n| `ZESARUX_AUTOLAUNCH` | `true` | Start ZEsarUX automatically if it isn't reachable (set `false` to opt out) |\n| `ZESARUX_PATH` | _(auto-detected)_ | Explicit path to the ZEsarUX binary |\n| `ZESARUX_ARGS` | _(none)_ | Extra args appended when launching (e.g. `--vo null --ao null` for headless) |\n| `ZESARUX_LAUNCH_TIMEOUT` | `20000` | How long to wait for the ZRCP port after launching, ms |\n\n### Auto-launching ZEsarUX\n\nBy default, when ZEsarUX isn't reachable on startup the server finds a local\nZEsarUX binary, launches it with `--enable-remoteprotocol --remoteprotocol-port\n<port>`, waits for the port, then connects. Set `ZESARUX_AUTOLAUNCH=false` to opt\nout (only connect to a ZEsarUX you started yourself). An emulator the server\nlaunched is terminated when the server stops; a ZEsarUX you started yourself is\nleft untouched. See\n[Installation & Configuration](docs/installation.md#auto-launching-zesarux) for\nbinary discovery order and headless use.\n\nYou can also control the emulator process at runtime with the **`launch_emulator`**\nand **`kill_emulator`** tools (the latter only stops an emulator the server\nstarted). And if a tool call fails because the connection dropped, the server\nwill — unless `ZESARUX_AUTOLAUNCH=false` — try once to relaunch ZEsarUX and\nreconnect before retrying the call.\n\n### Running several servers (automatic ports)\n\nIn AUTO mode (auto-launch on, `ZESARUX_PORT` **not** set) the server picks the\n**first free port ≥ 10000** and launches its own ZEsarUX there. So you can\nregister several MCP servers with no port configuration at all and they fan out\nautomatically — the first takes `10000`, the next `10001`, then `10002`, … each\nwith its own emulator:\n\n```bash\nclaude mcp add zesarux-a -- npx -y @dtz-labs/zesarux-mcp\nclaude mcp add zesarux-b -- npx -y @dtz-labs/zesarux-mcp\n```\n\nTo **pin** a server to a specific port — or to attach to an emulator that is\nalready running — set `ZESARUX_PORT` explicitly (e.g. `ZESARUX_PORT=10000`); the\nserver then uses exactly that port and does not scan. Automatic port selection\nonly happens in AUTO mode; with `ZESARUX_AUTOLAUNCH=false` the server just\nconnects to `ZESARUX_PORT` (default `10000`).\n\n## Documentation\n\n- **[Documentation index](docs/README.md)** - Start here\n- **[Installation & Configuration](docs/installation.md)** - Install ZEsarUX and the server\n- **[Configuring MCP Clients](docs/clients.md)** - Claude Desktop/Code, Codex, OpenCode, JetBrains\n- **[Available Tools](docs/tools.md)** - All tools with examples\n- **[Example Usage](docs/examples.md)** - Talk-to-it and quick call examples\n- **[Development](docs/development.md)** - Build, structure, protocol mapping\n- **[Troubleshooting](docs/troubleshooting.md)** - Common problems\n- **[ZRCP Specification](docs/SPEC.md)** - Complete protocol reference\n\n## Quick Examples\n\n```json\n// Reset and set machine\n{\"name\": \"reset_machine\"}\n{\"name\": \"set_machine\", \"arguments\": {\"machine\": \"128k\"}}\n\n// Read/write memory\n{\"name\": \"peek\", \"arguments\": {\"address\": \"4000\", \"length\": 256}}\n{\"name\": \"poke\", \"arguments\": {\"address\": \"4000\", \"value\": [255, 0]}}\n\n// Debugging\n{\"name\": \"get_registers\"}\n{\"name\": \"set_breakpoint\", \"arguments\": {\"index\": 1, \"type\": \"execute\", \"address\": \"8000\"}}\n\n// Load tape\n{\"name\": \"load_file\", \"arguments\": {\"filename\": \"/path/game.tap\"}}\n```\n\n## License\n\nMIT\n\n---\n\n**[dtz-labs](https://github.com/dtz-labs)** - Keeping 8-bit alive until 2065\n","readmeFilename":"README.md"}