{"_id":"@adhisang/minecraft-modding-mcp","_rev":"29-f8f5c2d5ee4af95b4434e442e5958f7b","name":"@adhisang/minecraft-modding-mcp","dist-tags":{"rc":"7.0.0-rc.3","latest":"7.1.1"},"versions":{"1.0.0":{"name":"@adhisang/minecraft-modding-mcp","version":"1.0.0","keywords":["mcp","minecraft","modding"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@1.0.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"fbc1ca412989bb89a5d6b58336dd6f5782477ce7","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-1.0.0.tgz","fileCount":106,"integrity":"sha512-K8bNp8MWtyuquhV1/k3BZL7akDHNsL1XF1ZbRktF+hUpxwO0LJlJ+Z24nv24ovAFk/lRz1IRlz1t4R8fzG2EhA==","signatures":[{"sig":"MEUCIGUexILafHodHZpENvM+GQ48Qj+SMdcYlU/oSF/29Fw4AiEAnx4IpMI4yYO/J4VhDUld8l8AmjdTXf55rPlmIBF44lw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":649737},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"f5ba04f1d3ae61579e5043863f8d4c6c06551df5","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:mcp-use-smoke":"node --import tsx tests/manual/mcp-use-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"adhi-jp","email":"dev+npm@adhi.jp"},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.10.1","description":"MCP server with utilities for Minecraft modding workflows","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","mcp-use":"^1.20.5","fast-glob":"^3.3.3","smol-toml":"^1.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_1.0.0_1772370346830_0.214044273885174","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@adhisang/minecraft-modding-mcp","version":"1.1.0","keywords":["mcp","minecraft","modding"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@1.1.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"ca2a1236c743444ed6375bea1a8dd4707828c234","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-1.1.0.tgz","fileCount":108,"integrity":"sha512-lyIFdCJH9P3PxkgWN/wykHcvhCqtUQiiOQqUJYitFqeX+Sec32uZGZgqQsLIPQhTXNsLEcYjmM1i92R5c1S3FQ==","signatures":[{"sig":"MEQCIGpme+dMQ3nWZpamo3reo9zcRMmndLF12MHx/coMHcRlAiBEv4cSaOuN/U0S8fTA9ct5VnEIR/7qIg0KTyrRgBrefg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":642972},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"cb8baddfce6456860e059de0b35135cb6aa9c66e","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"adhi-jp","email":"dev+npm@adhi.jp"},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"MCP server with utilities for Minecraft modding workflows","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_1.1.0_1772376938096_0.9247930064939487","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@adhisang/minecraft-modding-mcp","version":"1.1.1","keywords":["mcp","minecraft","modding"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@1.1.1","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"f8b3492507c9ae6e8f75d7c522e5fc73a6b4b5a5","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-1.1.1.tgz","fileCount":110,"integrity":"sha512-AIWE4dQ65yBfSOTFpRPsxgVuJJFBg1vQlDXfaZ+fQ7qmu75Pxhjvz4dWjWuM6GTIpvLCatvNX7snJhWc2zdVTA==","signatures":[{"sig":"MEQCICg8WyPQTpUmVFUBTSWwQx+JUszaSv7wNGq0JEwfOUICAiBT+Zyy6YWUVru/RuArS9LEoQX61QPSEpcaaFztnunisA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":654182},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"d38d520474caec5fb0e32d420e006006903f7716","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"adhi-jp","email":"dev+npm@adhi.jp"},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"MCP server with utilities for Minecraft modding workflows","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_1.1.1_1772403138137_0.3680900156760485","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@adhisang/minecraft-modding-mcp","version":"1.2.0","keywords":["mcp","minecraft","modding"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@1.2.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"a42344d065e07baff1a737c164b95408364d7c10","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-1.2.0.tgz","fileCount":110,"integrity":"sha512-+92+3rvbBZWxfT20s8zNkyvdfeUIxlRr/QrrZWFbzAi/EorvR/bNNr4TBFihjjjV7hHkF63GBw2qs46t/CaCEg==","signatures":[{"sig":"MEUCIQC0uE2LLfRQ5uecRFItbSQNCEBdOAtU4DRGDP4SHGV3YgIgMavX6m0nlh92Dsei6qkG/kT8fjT17zd6wJJrnA5/Bcw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":789574},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"233f5f213488d9fa1d877d94a43f3c798bb18751","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"adhi-jp","email":"dev+npm@adhi.jp"},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"MCP server with utilities for Minecraft modding workflows","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_1.2.0_1772706761375_0.9997644752330979","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@adhisang/minecraft-modding-mcp","version":"1.2.1","keywords":["mcp","minecraft","modding"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@1.2.1","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"74784f20c743cea99e2f09460e5a0a06a5069718","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-1.2.1.tgz","fileCount":110,"integrity":"sha512-H5Jcn14FWjV+0scAPfDl1LVq7i820O6TOPVqO/XGDGrrMw0oKMaNLwz95PcOG+11rFRpPa3hL0tAnPzg4/pDZw==","signatures":[{"sig":"MEUCIEI1lY60E1+OU0MA3MPQFQUF1viGWGGb19KZcaIOtX0+AiEApyIMDGtacjp0UCb83IqbgRtpj23M7aewJIru7EcC5jg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":790097},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"3b2c351699df9c3f74fb076fca8e70672f838909","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"adhi-jp","email":"dev+npm@adhi.jp"},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"MCP server with utilities for Minecraft modding workflows","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_1.2.1_1772716635590_0.6014425134386405","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@adhisang/minecraft-modding-mcp","version":"2.0.0","keywords":["mcp","minecraft","modding"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@2.0.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"432702dc2179e210017fe023af1c3a073aadb353","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-2.0.0.tgz","fileCount":112,"integrity":"sha512-ZZgyVxOoVnRSMGI5NM+y18GGXupU0AyNDA3wO4R5Hgj4UeIXL/3d/xYre5NUfXKIlVsjjjvA1xbm7xBNeBEIDg==","signatures":[{"sig":"MEUCIQDtpPJFkIFmVtX/lTHD5A+yaf4s0gYBdml9CACtFlx9QgIgNMLGlu+E/oNehut0E4FuMyXheWKOpM0BQlDZQxzJHf4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":803438},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"356bf323f3f7273feab7c56eb6e5059e4ed7cad8","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"adhi-jp","email":"dev+npm@adhi.jp"},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"MCP server with utilities for Minecraft modding workflows","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_2.0.0_1772824974788_0.651323424128978","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@adhisang/minecraft-modding-mcp","version":"2.1.0","keywords":["mcp","minecraft","modding"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@2.1.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"2336c61ad287e9600f0d15369f005e1276e15479","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-2.1.0.tgz","fileCount":118,"integrity":"sha512-OgpzCpgGCiQIcO2NrlXPLv+x00A75XNVSlwKb5TA0XTB5TpA7e2m1rVTj3E8kCDF2eVRCBJtKzXYNqpD8WBoMw==","signatures":[{"sig":"MEUCIB8k0PSAY4EhGUWLUmEiaAOqe4FEyuxm2UIY/aCUdf6VAiEAhwX6kfWcydggxFAagX9BjAeX7P1FcYjA/x2cOEEzz0Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":911172},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"4556726eea6bc8fb07a17a4e08c372a59777a8f7","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"adhi-jp","email":"dev+npm@adhi.jp"},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"MCP server with utilities for Minecraft modding workflows","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_2.1.0_1772937066484_0.3875227348193555","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@adhisang/minecraft-modding-mcp","version":"3.0.0","keywords":["mcp","minecraft","modding"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@3.0.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"5f085805001632e5d8b5652300f8efd482766d64","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-3.0.0.tgz","fileCount":138,"integrity":"sha512-hkxyi963y3RC+B3NcCtY2QVgUA6ze9wjodRapH2cTQ79fr8bwC3Y/w8HHqARTCRgUxguJWncpx4Kx12cRr1NlA==","signatures":[{"sig":"MEUCIQDachd1O8AF3pL7TZ2oYU30SAxyylEwF9b68YWmvljlCAIgQfkeS6uNMiEDUQWfTiP9rX26eqdfNIjz7usRho9h4AM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@3.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1184807},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"8b63347440f0d9e03473075485730e98e6d8e9ae","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"MCP server with utilities for Minecraft modding workflows","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_3.0.0_1773051149599_0.13498808433471798","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"@adhisang/minecraft-modding-mcp","version":"3.1.0","keywords":["mcp","minecraft","modding"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@3.1.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"8f27446192bb4f1c84c57aa6aa8729f98a324412","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-3.1.0.tgz","fileCount":140,"integrity":"sha512-gIOVo7iJpwNsdBu9iN8wy1/4si1wtfejZ5EzPkQK220lMZP7bt8Kgs6S2+x0UzhM2WpGRFxDu3pxuVgyFlQ/bA==","signatures":[{"sig":"MEYCIQCIaQtPSzRtdVLY9Ppn4rOH0fWiQQ++JwaTXCWNOAMgxAIhAIwtza2Tsf2K/+n4ticEg6km6zid21b08SSWc+LKQQkM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@3.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1200941},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"0614c74386a0508ea7d6a74b23b6c04b7e0e064e","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.11.1","description":"MCP server with utilities for Minecraft modding workflows","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_3.1.0_1773577363045_0.39357857092438","host":"s3://npm-registry-packages-npm-production"}},"3.1.1":{"name":"@adhisang/minecraft-modding-mcp","version":"3.1.1","keywords":["mcp","minecraft","modding"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@3.1.1","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"71172fb0627d5fc8db173319f2f66f5c730c4689","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-3.1.1.tgz","fileCount":140,"integrity":"sha512-Zy8qtixEsWd5cXO9j0K9LMJ6heoCO74J6zpKQkm6ohP+lKq7ujj8FdZ8/aud6kGbqSOLgM3OUMIla0WjmJTm6A==","signatures":[{"sig":"MEQCIC+/ujMxShmF8wHDE1oWP/Jkf1HtVT0Xh4mHF3WzQErDAiBHKBYil2yG9pMeq0LbsqKUNC3wXrkODiE1Yp6HJf0xHg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@3.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1205249},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"666da8a56173c0d2f6da1abe57a6aac3daaee67c","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.12.0","description":"MCP server with utilities for Minecraft modding workflows","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_3.1.1_1774188395949_0.2612142811832676","host":"s3://npm-registry-packages-npm-production"}},"3.2.0":{"name":"@adhisang/minecraft-modding-mcp","version":"3.2.0","keywords":["mcp","minecraft","modding"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@3.2.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"a9a8513ed73045efa2e53069bc64526e45148e0e","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-3.2.0.tgz","fileCount":148,"integrity":"sha512-KbyedGFWlxpuSNgBQKrYIVPDRgcvLWEwJ5M/dXTB1gxBPSzxRzeTffbxXM84xikes/EoxSFr0c9TYSFOkrs5VA==","signatures":[{"sig":"MEUCIQCmFpgqWxacLqfmCrJiKv31UYqO+nnBzAth3AfYrBoWgwIgW2MXM3EYv+gdQfH7sHbjHsqJ8O55Q4GW6Mm6LzYkyS0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@3.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1315856},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"8dea1f3bb6dca2d668b59057c43cc1ded7247b79","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server with utilities for Minecraft modding workflows","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_3.2.0_1775939893351_0.9895304103089002","host":"s3://npm-registry-packages-npm-production"}},"4.0.0":{"name":"@adhisang/minecraft-modding-mcp","version":"4.0.0","keywords":["mcp","minecraft","modding"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@4.0.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"f1146c710f77df706770519228429be83a8e3865","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-4.0.0.tgz","fileCount":150,"integrity":"sha512-QnjBjWtWCXYoOjKU5xDqAIvOITcibemLxoBqQXNuwzMCCxkDW1miClB1kxM1s4Ydi9eMol6sAI5Uy5SwnOHLLw==","signatures":[{"sig":"MEUCIBErW8pTR/MCrJPJZRd1gxfKa1ZBDilAT5Div+5PsILpAiEA5q+hzwKGB5/JAjIoUWk3+uUbaNSGhXjvegBTawqRyhM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@4.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1411660},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"9de3a74ffaf2b7db065fd7d1bb0d080199f8d0f6","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:file":"node --test --import tsx","test:grep":"node --test --import tsx --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server with utilities for Minecraft modding workflows","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_4.0.0_1776521896850_0.05769787810746685","host":"s3://npm-registry-packages-npm-production"}},"4.1.0":{"name":"@adhisang/minecraft-modding-mcp","version":"4.1.0","keywords":["mcp","minecraft","modding"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@4.1.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"2525e5e7a54a448113bddbede29d949d610ff1ec","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-4.1.0.tgz","fileCount":293,"integrity":"sha512-FJMk224fuK3/0NO94V6dUwOI3KHWjQEdPBuVZR0n1Ldb9FrFvp6y7FbHMaSDG1jHbtnDC6xcmSVTpwcT/WYJIw==","signatures":[{"sig":"MEQCIEg3xp9QU3eRb05R068cLx1+cq21yp52wIk9lkNNyXI4AiBOWKowYxeNj2M5ZWFN3Qz0htZgorUzlgbswQcmv+I4Sg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@4.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1894683},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"d187e345ec0048db007d3293e5e1a9415749cf7b","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:file":"node --test --import tsx","test:grep":"node --test --import tsx --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server with utilities for Minecraft modding workflows","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_4.1.0_1778305331795_0.8055223830753075","host":"s3://npm-registry-packages-npm-production"}},"4.1.1":{"name":"@adhisang/minecraft-modding-mcp","version":"4.1.1","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@4.1.1","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"2cc18fee77c4b8e6e74e4367799c2e0f8c105706","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-4.1.1.tgz","fileCount":293,"integrity":"sha512-peoO2U96IqiPSGwqIAE8jt++UdgrX4IPB09slhE5P/3ymWKwLwg/QJtwefPkuJMPgKW6ExRuX6L3OLy16hyktg==","signatures":[{"sig":"MEUCIAHc465lUOU4++4QHQkNvjy6UO9Ky/IAP7d7xGSu4bz0AiEAib4JcIg6Zb1WfRnwTJEXEgGX3946bxucqBLWzWfKIiA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@4.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1912320},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"7d16755896ec388a2cac694f8c17be8f240f0a1a","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:file":"node --test --import tsx","test:grep":"node --test --import tsx --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_4.1.1_1778418475594_0.22542174495395773","host":"s3://npm-registry-packages-npm-production"}},"4.2.0":{"name":"@adhisang/minecraft-modding-mcp","version":"4.2.0","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@4.2.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"34c0624b1f7d3594e22fa8e0fcf8db0a339e7b8b","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-4.2.0.tgz","fileCount":293,"integrity":"sha512-dE+T8XtWzW0kVa8kojkPeiTTUu1v870cxT3KAmS1RfyuPCiHzcaDCAH456IH6R/Cx1MqZKOaZT0X9n8Jx4TzgA==","signatures":[{"sig":"MEUCIQDgt8yIgqsPYbQGZe5173DVpn04D+9eaTWTodravjjQUAIgSlgheTRC8hsRWMqlvqJq+hjXO1xqYFKpV+7JuGxSIxA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@4.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1932572},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"cc12e5a900318ac2f4790807ff775715c7ee839a","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:file":"node --test --import tsx","test:grep":"node --test --import tsx --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_4.2.0_1779006380189_0.9461361070945369","host":"s3://npm-registry-packages-npm-production"}},"4.2.1":{"name":"@adhisang/minecraft-modding-mcp","version":"4.2.1","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@4.2.1","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"269ca64d7808d5f233f12de8bb2590ba8ef5b2ab","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-4.2.1.tgz","fileCount":293,"integrity":"sha512-J3dUO9NDYtJojpzX9zw/qUxN7vIJ0/LOV5c80Y1Z4aEMeYFLjQdJYsPSmM7HlfMolhIm4CEhsxh/nbe8CaNPdw==","signatures":[{"sig":"MEQCIDnKKqdq/ISSLzS9Su4nz4JdIHoLQopZNndq6valSiO9AiAXIsfV6xoNmzrqsEgPTqQVaAqie2yLYkxOuUCezu7UfQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@4.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1944106},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"f0d75d212cf3c2f0c79506e60d0ff9b8befadac3","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:file":"node --test --import tsx","test:grep":"node --test --import tsx --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_4.2.1_1779545697970_0.4441044277717632","host":"s3://npm-registry-packages-npm-production"}},"5.0.0":{"name":"@adhisang/minecraft-modding-mcp","version":"5.0.0","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@5.0.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"a5885655114783686914a03881dc0044055a3c3b","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-5.0.0.tgz","fileCount":299,"integrity":"sha512-1FHzOQUWnW8WZU7y0uBW6bWrwC5eEFzeheBrGJD/zBjoKpyQEU/P4w9NcfDi1qAiGBq5JCgE/EYpUv+i96V6zA==","signatures":[{"sig":"MEQCIG3C3XX60yC9L02osDVUQOvcTZS2BjkIiCF0VbsqPE9WAiBRjqwtc5ca7N1KTWLfGH8xv4aDFqA26FTlhh7mO3e5Hg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@5.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2099214},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"347ab7446f7e182afbd5c0f06b4632a1740ed4a6","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:file":"node --test --import tsx","test:grep":"node --test --import tsx --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_5.0.0_1780577565517_0.8070549372798237","host":"s3://npm-registry-packages-npm-production"}},"6.0.0":{"name":"@adhisang/minecraft-modding-mcp","version":"6.0.0","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@6.0.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"21a72d50522af5aff7d1844de0d73519887c3477","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-6.0.0.tgz","fileCount":299,"integrity":"sha512-89q+88tFhm4l80TBwt6CVCX5/fJqkk/NAe4s/FVo5nunWPSYl56uPu/lCGtqu31jFPgeadI+9KKqlzv6qrId+Q==","signatures":[{"sig":"MEUCIAEJHHhRGl+6cSYbFBFL/agX0QiomBzCSgzOVUfCvJlCAiEAp4VNsdHB9cjdNGKqoFkk+unryKmjEcZSo0Xh7UwhpmM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@6.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2139325},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"cdf4475b6d541ba6b077d58226912db8defc2356","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:file":"node --test --import tsx","test:grep":"node --test --import tsx --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_6.0.0_1782393504769_0.022396873270169593","host":"s3://npm-registry-packages-npm-production"}},"6.1.0":{"name":"@adhisang/minecraft-modding-mcp","version":"6.1.0","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@6.1.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"dc994516a343d7df8cb5424d3d7ee9d372e258e3","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-6.1.0.tgz","fileCount":301,"integrity":"sha512-MoN1KUUTHE7+T8SSDvu9PKLyAD+mJj9QXeFKsHStLS9hHkaFGfMBF71wpvm+lAjMk272/yX3m1iAfJIaqKWUFg==","signatures":[{"sig":"MEUCIBu3SpMg/mpfXTyxt4LDd6h8jenzlI3/t9ySt9oUxb+UAiEAxIwxiCJc4AE3IfXHMYBiA1kuD5DGQa4nAcFqV34Y4sw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@6.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2152984},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"b167a41b7a8c12d602c29c11827a9177ce9cc65a","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:file":"node --test --import tsx","test:grep":"node --test --import tsx --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_6.1.0_1782624273906_0.6435926077558087","host":"s3://npm-registry-packages-npm-production"}},"6.1.1":{"name":"@adhisang/minecraft-modding-mcp","version":"6.1.1","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@6.1.1","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"1b191048e22794919d62e63c89de103e4eb6dc2d","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-6.1.1.tgz","fileCount":301,"integrity":"sha512-k25SEnOi7pWzJlciEddcGkIhzPVyHFyYBTWh/36XdjlvgrMp5BSIS2clSjD9Fv1Avqacm9xmqRb8Plpn+Xx1Jg==","signatures":[{"sig":"MEYCIQDkGIJZBVtxx8rbKgs+L9Sv2k2CD7xK25uwM+QAXM09sgIhAI467TKucuy8dSTY6RNNYh68JsqdGWSG7SeJDq1S+1U7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@6.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2154332},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"78ac72b42a4014512b9d88dab0508cf2c803dc71","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:file":"node --test --import tsx","test:grep":"node --test --import tsx --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_6.1.1_1783165543542_0.09310798160707834","host":"s3://npm-registry-packages-npm-production"}},"6.2.0":{"name":"@adhisang/minecraft-modding-mcp","version":"6.2.0","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@6.2.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"f94efd4881ff76ffb0562138fa67dd9f8d3ec518","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-6.2.0.tgz","fileCount":305,"integrity":"sha512-ueuwqGSeI2UpXDKlCP6HpUPX7xRKMHS228UQsRN2+l8nrjmgiLRqXw5Mb5FYCQA+PbIkqKc9VYOgjKVewi4WSQ==","signatures":[{"sig":"MEUCIHkpMBBP6/BKVRpkRzWUsmYhzwRwlV4uJ9uRZcUG/iFPAiEAqczeEMuddmVOSJWOj0a2/BFUbsDjKUEf8lsKCGROhCY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@6.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2311732},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"a01fba7366ba037daf5c9f1c951ff60d860e5b24","scripts":{"dev":"tsx src/cli.ts","test":"node --test --import tsx tests/*.test.ts","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:file":"node --test --import tsx","test:grep":"node --test --import tsx --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node --input-type=module -e \"import { mkdirSync } from 'node:fs'; mkdirSync('coverage', { recursive: true });\" && node --test --import tsx --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info --test-coverage-lines=80 --test-coverage-branches=70 --test-coverage-functions=80 tests/*.test.ts","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_6.2.0_1783764144482_0.26386738854874925","host":"s3://npm-registry-packages-npm-production"}},"6.3.0":{"name":"@adhisang/minecraft-modding-mcp","version":"6.3.0","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@6.3.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"bb8ff530527eff3383bfa3b847f1ce500bdaa89f","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-6.3.0.tgz","fileCount":305,"integrity":"sha512-vsfhchr/mIRz8388v8WVG36mmZLay/v5aKrNu5Q3GLGp3//3pJe23NEN6Wgi4whU+jyO1v6sMIjwbthy5OXaFg==","signatures":[{"sig":"MEUCIDlExyzZowMRJZkdEMkEYhWx8iOmSvjddzZriQ/GTEyBAiEA7JuRBnyaD0GtECAEBgkrgMFbCcLG6m7CXGwkKrDPB9A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@6.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2328774},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22"},"gitHead":"dbad6276236d9fc1f537ad96447e0e0f97cad1f8","scripts":{"dev":"tsx src/cli.ts","test":"node scripts/run-tests.mjs","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:file":"node --test --import tsx","test:grep":"node scripts/run-tests.mjs --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node scripts/run-tests.mjs --coverage","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node scripts/run-tests.mjs --coverage --lcov coverage/lcov.info","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^3.23.8","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_6.3.0_1784368413935_0.17742073527515245","host":"s3://npm-registry-packages-npm-production"}},"7.0.0-rc.0":{"name":"@adhisang/minecraft-modding-mcp","version":"7.0.0-rc.0","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@7.0.0-rc.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"611c2705082437babc3558dd8a0dffe37d1dc329","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-7.0.0-rc.0.tgz","fileCount":321,"integrity":"sha512-xcIMK4NIGanGxM28mqF6d1xbMm6B/Xl4XlImIakb9wPUb8lskbhpT4ac4HNWnc9PQygwUPYSONQscBumR2Ha8w==","signatures":[{"sig":"MEQCIEVhiklxszSvQTMgdMtCLC5NK6jOTqW2Qv6fqoflXPX8AiAuPujF/DtAN9e9L0IAUTzfGjY33lr2VV+RXvJJ2f9oOQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@7.0.0-rc.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2678520},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.13.0"},"gitHead":"2c673ad75f83dd7e5a667a3bfa1481489b56bfe6","scripts":{"dev":"tsx src/cli.ts","test":"node scripts/run-tests.mjs","build":"npm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"npm run build","validate":"npm run check && npm test && npm run test:coverage && npm run test:perf","test:file":"node --test --import tsx","test:grep":"node scripts/run-tests.mjs --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node scripts/run-tests.mjs --coverage","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node scripts/run-tests.mjs --coverage --lcov coverage/lcov.info","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"4.4.3","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/server":"2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3","@modelcontextprotocol/client":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_7.0.0-rc.0_1787412848660_0.32686024255888","host":"s3://npm-registry-packages-npm-production"}},"7.0.0-rc.1":{"name":"@adhisang/minecraft-modding-mcp","version":"7.0.0-rc.1","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@7.0.0-rc.1","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"3946876c021494a41a6e06a3a5241de0981d7bb0","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-7.0.0-rc.1.tgz","fileCount":321,"integrity":"sha512-sXBHFHcLzxYVT47QYEH1lOtN+3yWStRWcFhaIV93Xg5q8I1Lz/tSPxT04A8Hj+u9Cu7MobdTBK+e+mSAmxDoRw==","signatures":[{"sig":"MEUCIQCF4EHngL/lxzvpZMp/zqMGf8g+cZwaQKW3TIJTVff9zwIgUgB7abR6hgJHJlxRbZMdMC3TrlZfvJv823UX/e5rm6Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@7.0.0-rc.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2740007},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.13.0"},"gitHead":"f9947bfcbc8a055d1d6d3de09ebaf62f3eb2e7b3","scripts":{"dev":"tsx src/cli.ts","test":"node scripts/run-tests.mjs","build":"pnpm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"pnpm run build","validate":"pnpm run check && pnpm test && pnpm run test:coverage && pnpm run test:perf","test:file":"node --test --import tsx","test:grep":"node scripts/run-tests.mjs --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node scripts/run-tests.mjs --coverage","check:changelog":"node scripts/check-changelog.mjs","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node scripts/run-tests.mjs --coverage --lcov coverage/lcov.info","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"4.4.3","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/server":"2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.30.1","readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3","@modelcontextprotocol/client":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_7.0.0-rc.1_1787931544908_0.2698573705950609","host":"s3://npm-registry-packages-npm-production"}},"7.0.0-rc.2":{"name":"@adhisang/minecraft-modding-mcp","version":"7.0.0-rc.2","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@7.0.0-rc.2","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"93501c2fe3c7be0ff8b91da0abdaa31d6d04daf8","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-7.0.0-rc.2.tgz","fileCount":323,"integrity":"sha512-oR8DB+5EZ39LZRsmkjKBzVP8G3fJqu+44VRMLz4sGnkxX2H0hK+Jf3MhGe9i4AIGfol0BegySc0xJewHRGweUg==","signatures":[{"sig":"MEQCICQG2cWIdGEqYbX1+ojKWKnDnS0oLED2dKGvwJzqcZAsAiBFX/h2RXskyned1+0J3joawUj+RNp3KTZPu7q2WL0bGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@7.0.0-rc.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2946312},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.13.0"},"gitHead":"947fb3f9250ef0cab8f611dc4a8319ed2fcde85b","scripts":{"dev":"tsx src/cli.ts","test":"node scripts/run-tests.mjs","build":"pnpm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"pnpm run build","validate":"pnpm run check && pnpm test && pnpm run test:coverage && pnpm run test:perf","test:file":"node --test --import tsx","test:grep":"node scripts/run-tests.mjs --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node scripts/run-tests.mjs --coverage","check:changelog":"node scripts/check-changelog.mjs","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node scripts/run-tests.mjs --coverage --lcov coverage/lcov.info","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"4.4.3","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/server":"2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.30.1","readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3","@modelcontextprotocol/client":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_7.0.0-rc.2_1788534428971_0.08691700932533641","host":"s3://npm-registry-packages-npm-production"}},"7.0.0-rc.3":{"name":"@adhisang/minecraft-modding-mcp","version":"7.0.0-rc.3","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@7.0.0-rc.3","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"c4dfd096c0111916cc115961abc1800bd989ca79","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-7.0.0-rc.3.tgz","fileCount":325,"integrity":"sha512-/qHjfCdKVRCpQpmg5RtXBzZhrjPFik0f7nVmjg1gZBVlP1NQRyEZo7nkt/P4e4vrkNGoiu0ftWtCRRN9PwdrCQ==","signatures":[{"sig":"MEYCIQCq0kDud/5ipTmGzqwUR8QJz3N+h814n7aE7VmM0aOsfgIhAOtXjh+uZMat+y+VxnOIW2MxqXgSJ0cIyhhzVLMvF6dK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@7.0.0-rc.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3027801},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.13.0"},"gitHead":"ce77fca3251318ac5dbe0bccdefbcbfc8fc46900","scripts":{"dev":"tsx src/cli.ts","test":"node scripts/run-tests.mjs","build":"pnpm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"pnpm run build","validate":"pnpm run check && pnpm test && pnpm run test:coverage && pnpm run test:perf","test:file":"node --test --import tsx","test:grep":"node scripts/run-tests.mjs --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node scripts/run-tests.mjs --coverage","check:changelog":"node scripts/check-changelog.mjs","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node scripts/run-tests.mjs --coverage --lcov coverage/lcov.info","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"4.4.3","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/server":"2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.30.1","readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3","@modelcontextprotocol/client":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_7.0.0-rc.3_1788791019157_0.9080402482440646","host":"s3://npm-registry-packages-npm-production"}},"7.0.0":{"name":"@adhisang/minecraft-modding-mcp","version":"7.0.0","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@7.0.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"8df97d3fcf14f56c15367e27c7f16c8b528688eb","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-7.0.0.tgz","fileCount":325,"integrity":"sha512-8W2XAcQgjLVAcbBViHOvISwAgymd6igLLne+nAauIfU2mEKvJBBrBQ5nQlXI3U+jqDbOagFFOnxiykcGGCQ7Nw==","signatures":[{"sig":"MEYCIQDI5UXb0G8Wa8iOJHT/AvfEV214D0ge6O1dp44jxf7ULAIhANTg2OvDniJUzpBr47gVCl9jka7DoZFsVNw1xikiheVB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@7.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3059548},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.13.0"},"gitHead":"72e783e572e43aab492ca46c0cadeaf125ced5ba","scripts":{"dev":"tsx src/cli.ts","test":"node scripts/run-tests.mjs","build":"pnpm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"pnpm run build","validate":"pnpm run check && pnpm test && pnpm run test:coverage && pnpm run test:perf","test:file":"node --test --import tsx","test:grep":"node scripts/run-tests.mjs --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node scripts/run-tests.mjs --coverage","check:changelog":"node scripts/check-changelog.mjs","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node scripts/run-tests.mjs --coverage --lcov coverage/lcov.info","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"4.4.3","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/server":"2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.30.1","devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3","@modelcontextprotocol/client":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_7.0.0_1789304595216_0.06452442041135997","host":"s3://npm-registry-packages-npm-production"}},"7.1.0":{"name":"@adhisang/minecraft-modding-mcp","version":"7.1.0","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"author":{"name":"adhi-jp"},"license":"MIT","_id":"@adhisang/minecraft-modding-mcp@7.1.0","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"bin":{"minecraft-modding-mcp":"dist/cli.js"},"dist":{"shasum":"8df34a6bc85474108f53f22e125d8d04d35ba195","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-7.1.0.tgz","fileCount":325,"integrity":"sha512-bvb7nrYRx+SNxiRuuMRVpFZVkmWW2rgm/P8iuZvePgLxLvrs3XJy7A5CpEz9tjNSss6rY/UwUq308lhy/GAW5g==","signatures":[{"sig":"MEYCIQC482OYS3lp3ZVPI6HATTP5f5Ievhjd96Ani0xd+AS/QgIhAKMMsaAxvoq/BMBzvqNLqv0xKJR9YAOG0v8JV0H6joux","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDvOySit9aASG62a/0u4zUPYjbetn9Ah2vfBi1YcQKwUAIgMu2Oq0gJEWvWOs3wYfCeEl4vGF8yvDn3cxwQJGROWqU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@7.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3155846},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.13.0"},"gitHead":"ceb2054a93dbc97e43d8f9e3b5faaa5b93f39f3e","scripts":{"dev":"tsx src/cli.ts","test":"node scripts/run-tests.mjs","build":"pnpm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"pnpm run build","validate":"pnpm run check && pnpm test && pnpm run test:coverage && pnpm run test:perf","test:file":"node --test --import tsx","test:grep":"node scripts/run-tests.mjs --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node scripts/run-tests.mjs --coverage","check:changelog":"node scripts/check-changelog.mjs","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node scripts/run-tests.mjs --coverage --lcov coverage/lcov.info","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"4.4.3","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/server":"2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.30.1","devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3","@modelcontextprotocol/client":"2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/minecraft-modding-mcp_7.1.0_1789757336298_0.3231363598619379","host":"s3://npm-registry-packages-npm-production"}},"7.1.1":{"_id":"@adhisang/minecraft-modding-mcp@7.1.1","bin":{"minecraft-modding-mcp":"dist/cli.js"},"bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"dist":{"shasum":"1b0c94021a8e6aa453c5e49b222279a14ff605fe","tarball":"https://registry.npmjs.org/@adhisang/minecraft-modding-mcp/-/minecraft-modding-mcp-7.1.1.tgz","fileCount":325,"integrity":"sha512-db9WfhMAbDA0yk4lkJixhBMuttiGl/Ea/xzvv/sBHxLfj1X9ukQ3oUDH3PoxwNyBJU5wKpXOwNS2XeFsFNShtw==","signatures":[{"sig":"MEQCIGtvtXRQb1uj0FEYOR4qxsiGWXKDmLY91L6/OocqOEhxAiAGtP6qfDe1j1YjIAo+rVVk2pEItGGCKYHbeAzIBW57dg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIH6Dd1EC4mTDR+a5sGUo98fJG08Ma8NhaTLouPthyhIPAiEA5vwmzHbk1dcXSzIbZ0E4Rb8pE86DpDMCK6W4mPxywVQ="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adhisang%2fminecraft-modding-mcp@7.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3270959},"main":"dist/index.js","name":"@adhisang/minecraft-modding-mcp","type":"module","types":"dist/index.d.ts","author":{"name":"adhi-jp"},"engines":{"node":">=22.13.0"},"gitHead":"8bc8d17982bcec3777d99710913e7ed18258cf0d","license":"MIT","scripts":{"dev":"tsx src/cli.ts","test":"node scripts/run-tests.mjs","build":"pnpm run clean && tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","clean":"node --input-type=module -e \"import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });\"","start":"node dist/cli.js","prepack":"pnpm run build","validate":"pnpm run check && pnpm test && pnpm run test:coverage && pnpm run test:perf","test:file":"node --test --import tsx","test:grep":"node scripts/run-tests.mjs --test-name-pattern","test:perf":"node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage":"node scripts/run-tests.mjs --coverage","check:changelog":"node scripts/check-changelog.mjs","test:perf:strict":"STRICT_PERF=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts","test:coverage:lcov":"node scripts/run-tests.mjs --coverage --lcov coverage/lcov.info","test:manual:stdio-smoke":"node --import tsx tests/manual/stdio-client-smoke.manual.ts","test:manual:package-smoke":"node --import tsx tests/manual/package-distribution-smoke.manual.ts","test:perf:update-baseline":"UPDATE_PERF_BASELINE=1 node --test --test-concurrency=1 --import tsx tests/perf/*.perf.ts"},"version":"7.1.1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bcc04017-d85e-4432-9ee0-38054ab60a1d"}},"homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"_npmVersion":"11.5.2","description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","directories":{},"maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"_nodeVersion":"22.23.2","dependencies":{"zod":"4.4.3","yauzl":"^3.2.0","fast-glob":"^3.3.3","smol-toml":"^1.3.0","@modelcontextprotocol/server":"2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.30.1","devDependencies":{"tsx":"^4.19.2","typescript":"^5.7.3","@types/node":"^22.13.5","@types/yauzl":"^2.10.3","@modelcontextprotocol/client":"2.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/minecraft-modding-mcp_7.1.1_1790348722422_0.9388034414920956"}}},"time":{"created":"2026-03-01T13:05:46.614Z","modified":"2026-09-25T15:05:22.901Z","1.0.0":"2026-03-01T13:05:47.038Z","1.1.0":"2026-03-01T14:55:38.307Z","1.1.1":"2026-03-01T22:12:18.284Z","1.2.0":"2026-03-05T10:32:41.574Z","1.2.1":"2026-03-05T13:17:15.768Z","2.0.0":"2026-03-06T19:22:55.027Z","2.1.0":"2026-03-08T02:31:06.731Z","3.0.0":"2026-03-09T10:12:29.797Z","3.1.0":"2026-03-15T12:22:43.206Z","3.1.1":"2026-03-22T14:06:36.126Z","3.2.0":"2026-04-11T20:38:13.596Z","4.0.0":"2026-04-18T14:18:17.004Z","4.1.0":"2026-05-09T05:42:12.049Z","4.1.1":"2026-05-10T13:07:55.858Z","4.2.0":"2026-05-17T08:26:20.433Z","4.2.1":"2026-05-23T14:14:58.188Z","5.0.0":"2026-06-04T12:52:45.674Z","6.0.0":"2026-06-25T13:18:24.921Z","6.1.0":"2026-06-28T05:24:34.087Z","6.1.1":"2026-07-04T11:45:43.753Z","6.2.0":"2026-07-11T10:02:24.638Z","6.3.0":"2026-07-18T09:53:34.095Z","7.0.0-rc.0":"2026-08-22T15:34:08.865Z","7.0.0-rc.1":"2026-08-28T15:39:05.110Z","7.0.0-rc.2":"2026-09-04T15:07:09.155Z","7.0.0-rc.3":"2026-09-07T14:23:39.312Z","7.0.0":"2026-09-13T13:03:15.386Z","7.1.0":"2026-09-18T18:48:56.469Z","7.1.1":"2026-09-25T15:05:22.534Z"},"bugs":{"url":"https://github.com/adhi-jp/minecraft-modding-mcp/issues"},"author":{"name":"adhi-jp"},"license":"MIT","homepage":"https://github.com/adhi-jp/minecraft-modding-mcp#readme","keywords":["claude","fabric","forge","mcp","mcp-server","minecraft","minecraft-modding","mixin","modding","model-context-protocol","mojang-mappings","neoforge","nodejs","typescript","yarn-mappings"],"repository":{"url":"git+https://github.com/adhi-jp/minecraft-modding-mcp.git","type":"git"},"description":"MCP server for AI-assisted Minecraft modding: inspect decompiled source, resolve Mojang/Yarn/Intermediary mappings, diff versions, analyze Fabric/Forge/NeoForge mod JARs, and validate Mixin, Access Widener, and Access Transformer files.","maintainers":[{"name":"adhi-jp","email":"dev+npm@adhi.jp"}],"readme":"# @adhisang/minecraft-modding-mcp\n\n[![npm](https://img.shields.io/npm/v/@adhisang/minecraft-modding-mcp)](https://www.npmjs.com/package/@adhisang/minecraft-modding-mcp)\n[![MIT License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)\n[![Node.js >=22.13.0](https://img.shields.io/badge/node-%3E%3D22.13.0-brightgreen.svg)](https://nodejs.org/)\n[![CI](https://github.com/adhi-jp/minecraft-modding-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/adhi-jp/minecraft-modding-mcp/actions/workflows/ci.yml)\n\n**English** | [日本語](docs/README-ja.md)\n\n> **Note**: This project is entirely vibe-coded — built with AI-assisted development without formal specs.\n\n---\n\n`@adhisang/minecraft-modding-mcp` is an MCP server for AI-assisted Minecraft modding workflows, built on the [Model Context Protocol](https://modelcontextprotocol.io/). Use it when an agent needs to inspect Minecraft source, resolve mappings, compare versions, analyze mod JARs, validate Mixin, Access Widener, or Access Transformer files, or work with NBT and registry data from an MCP client.\n\nIt runs over stdio and works with Claude Desktop, Claude Code, VS Code, Codex CLI, Gemini CLI, and other MCP-capable clients.\n\n**41 tools** (6 entry + 35 expert) | **9 resources** | **4 namespace mappings** | **SQLite-backed cache**\n\n## Features\n\n- **Source exploration**: browse, list, and search decompiled Minecraft source with line-level context\n- **Mapping-aware symbol work**: convert class, field, and method names between `obfuscated`, `mojang`, `intermediary`, and `yarn`\n- **Version comparison**: compare class signatures, registry entries, and migration-oriented summaries across Minecraft versions\n- **Mod JAR analysis**: read Fabric, Forge, and NeoForge metadata, entrypoints, Mixin configs, dependencies, source, and remap previews\n- **Project validation**: validate Mixin source, `.accesswidener` files, and Forge/NeoForge Access Transformer files against the target version\n- **NBT, registry, cache, and diagnostics**: patch NBT payloads, inspect generated registry data, and manage cache/runtime state\n- **MCP resources**: expose versions, class source, artifact metadata, and mappings through URI-based resources\n\n## Protocol Support\n\nThe server implements MCP protocol revision `2026-07-28` and keeps the legacy initialize-based protocol (`2025-11-25` back through `2024-10-07`) fully supported in the same binary — no configuration needed:\n\n- **Legacy clients** initialize as before and see the same tool names, input contracts, and response envelopes — byte-compatible except for a short list of recorded deviations (see the legacy-exceptions list in [docs/tool-reference.md → MCP Protocol Support](docs/tool-reference.md#mcp-protocol-support)).\n- **Modern clients** (2026-07-28) skip `initialize`, probe with `server/discover`, and send per-request `io.modelcontextprotocol/*` `_meta`. Modern results carry `resultType` and the server identity echo; the cacheable methods additionally carry cache metadata (`ttlMs` / `cacheScope`).\n- One stdio process serves one era, selected by the client's first signal; the selection persists across the server's internal worker restarts.\n\nWire-level details — era selection, the rejection and version-negotiation tables, cache values, and framing — are in [docs/tool-reference.md → MCP Protocol Support](docs/tool-reference.md#mcp-protocol-support).\n\n## Quick Start\n\n### Package Users\n\nRequirements:\n\n- Node.js 22.13.0+\n- Java is only required for `remap-mod-jar` and decompile or remap flows that need Vineflower or tiny-remapper\n\nStart the server locally:\n\n```bash\nnpx -y @adhisang/minecraft-modding-mcp\n```\n\nUse this same command in MCP client configs. If automatic JAR downloads are blocked in your environment, set `MCP_VINEFLOWER_JAR_PATH` and `MCP_TINY_REMAPPER_JAR_PATH` there.\n\n### Client Setup\n\nCLI clients can register the package command directly.\n\nClaude Code:\n\n```bash\nclaude mcp add minecraft-modding -- npx -y @adhisang/minecraft-modding-mcp\n```\n\nOpenAI Codex CLI:\n\n```bash\ncodex mcp add minecraft-modding -- npx -y @adhisang/minecraft-modding-mcp\n```\n\nRun `claude mcp list` or `codex mcp list` after registration to verify the server is available.\n\nThe stdio transport auto-detects newline-delimited and `Content-Length` framing, so the same server command works across Codex and standard MCP clients.\n\n#### Claude Desktop\n\nAdd the following to your `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"minecraft-modding\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@adhisang/minecraft-modding-mcp\"]\n    }\n  }\n}\n```\n\n#### VS Code\n\nAdd the following to `.vscode/mcp.json` in your workspace:\n\n```json\n{\n  \"servers\": {\n    \"minecraft-modding\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@adhisang/minecraft-modding-mcp\"]\n    }\n  }\n}\n```\n\n#### Gemini CLI\n\nAdd the following to `~/.gemini/settings.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"minecraft-modding\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@adhisang/minecraft-modding-mcp\"]\n    }\n  }\n}\n```\n\nThen run:\n\n```text\n/mcp list\n```\n\n#### Custom Environment\n\nPass environment variables to override defaults:\n\n```json\n{\n  \"mcpServers\": {\n    \"minecraft-modding\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@adhisang/minecraft-modding-mcp\"],\n      \"env\": {\n        \"MCP_CACHE_DIR\": \"/path/to/custom/cache\",\n        \"MCP_MAPPING_SOURCE_PRIORITY\": \"maven-first\"\n      }\n    }\n  }\n}\n```\n\nWhen a build used a non-default Gradle User Home, pass `gradleUserHome` on cache-backed source, mapping, validation, and workflow calls. The server treats it as a per-call Gradle User Home and searches `<gradleUserHome>/loom-cache` and `<gradleUserHome>/caches/fabric-loom` before the MCP process default. It does not accept arbitrary Loom cache directories.\n\n## Start Here\n\nThese six top-level workflow tools cover the common paths and return summary-first results. They are the best default starting points for agents and MCP clients.\n\nAll six return `result.summary` first and can include `summary.nextActions` when there is a clear follow-up step. Pick the tool from the table, then use the examples and reference docs for exact payloads.\n\n| Tool | Start here for |\n| --- | --- |\n| `inspect-minecraft` | versions, artifacts, classes, files, and source search |\n| `analyze-symbol` | symbol existence checks, mapping conversion, lifecycle tracing, and workspace symbol resolution |\n| `compare-minecraft` | version-pair diffs, class diffs, registry diffs, and migration-oriented overviews |\n| `analyze-mod` | mod metadata, decompile/search flows, class source, bytecode member queries, and safe remap preview/apply |\n| `validate-project` | workspace summaries plus direct Mixin, Access Widener, and Access Transformer validation |\n| `manage-cache` | cache inventory, verification, and preview/apply cleanup workflows |\n\n### Workflow Notes\n\nThese notes cover high-frequency decisions during onboarding. For the full pitfall list, exact contracts, migration notes, and environment variables, see [docs/tool-reference.md](docs/tool-reference.md).\n\n- `search-class-source` defaults to `queryMode=\"auto\"` and keeps separator queries such as `foo.bar`, `foo_bar`, and `foo$bar` on the indexed path. Use `queryMode=\"literal\"` for an explicit full substring scan.\n- If you do not already have an artifact, prefer `subject.kind=\"workspace\"` for `inspect-minecraft` instead of guessing artifact details. `subject.focus` is an object, not a string: use `{ \"kind\": \"class\", \"className\": \"...\" }`, `{ \"kind\": \"search\", \"query\": \"...\" }`, or `{ \"kind\": \"file\", \"filePath\": \"...\" }`. `task=\"auto\"` dispatches only from `subject.kind` and `focus.kind`; it is not a natural-language planner. Invalid string focus returns class/search/file `exampleCalls`, while missing artifact context keeps the requested task in a retryable `suggestedCall`.\n- `trace-symbol-lifecycle` expects `Class.method` in `symbol`. Keep exact overload matching in the separate `descriptor` field.\n- For unobfuscated releases such as `26.1+`, `check-symbol-exists` and `analyze-symbol task=\"exists\"` validate `mojang` lookups against runtime bytecode when no mapping graph exists, and return `mapping_unavailable` when the runtime JAR itself is unreachable.\n- `analyze-mod` and `validate-project` require structured `subject` objects and canonical `include` groups; stale string-subject or domain-include payloads return `ERR_INVALID_INPUT` with a retryable `suggestedCall`.\n- `validate-project task=\"project-summary\"` infers an omitted `version` from `gradle.properties` and names the inferred version in `warnings`; pass `preferProjectVersion: false` to turn inference off, in which case a call without `version` returns `status: \"blocked\"`. The resolved version is passed to every discovered Mixin, Access Widener, and Access Transformer check. If files were discovered but no version can be inferred, the summary returns `status: \"blocked\"` with a retry that asks for an explicit `version` instead of guessing.\n- When `validate-project task=\"project-summary\"` discovers no files, `status` stays `\"ok\"` but the headline reads `Nothing to validate: ...` and `warnings` states that nothing was validated, so an `\"ok\"` status alone does not mean any file passed.\n- `validate-mixin` and `validate-project` keep `mapping-health` lightweight for `obfuscated` and `mojang` validation, avoiding full Tiny mapping graph loads unless `intermediary` or `yarn` namespaces are requested.\n- `validate-project task=\"project-summary\"` uses a lightweight artifact probe for `tasks[\"minecraft.artifact.resolved\"]`; it does not decompile Minecraft or rebuild the source index just to report per-probe status. It does read the runtime jar's bytes to derive the `artifactId` it reports, and repeat probes of the same jar in one process reuse that digest. Set `VALIDATE_PROJECT_TASKS_OFF=1` to omit the additive `tasks` field.\n- `validate-project` has a supervisor-owned end-to-end deadline of 120 seconds, including queue time. Set `MCP_VALIDATE_PROJECT_TIMEOUT_MS` to an ASCII-decimal value from `10000` through `600000` to override it. A timeout returns `ERR_TOOL_TIMEOUT`; a running timeout restarts the isolated worker before queued calls resume, while a queue timeout leaves the current worker untouched.\n- Artifact downloads are capped at 512 MiB (`536870912` bytes) each. Set `MCP_MAX_DOWNLOAD_BYTES` to an ASCII-decimal byte count to override it; values below 1 MiB are raised to 1 MiB, and anything else — non-numeric, malformed, or too large to be an exact integer — falls back to the default. The cap is checked twice: against `Content-Length` before any body is read (a header that is not a plain byte count is treated as absent rather than as a breach), and against the bytes actually received, so a chunked or mis-declared response is caught too. A download that exceeds it fails with `ERR_LIMIT_EXCEEDED` and is not retried; the partial file is deleted on a best-effort basis, so a file the server cannot remove may survive the refusal. A cached copy is never served in its place — a cap is a configuration verdict, not a passing outage, and standing a stale artifact in for it would hide the ceiling instead of reporting it. When every repository trips the cap, the terminal `ERR_REPO_FETCH_FAILED` reports it where a caller can actually read it: `hints` carries the sentence naming `MCP_MAX_DOWNLOAD_BYTES` and the byte count to clear, and `context.repoFailureCode` is `ERR_LIMIT_EXCEEDED`.\n- Nested (Jar-in-Jar) entries are capped at 64 MiB (`67108864` bytes) of uncompressed data each. Set `MCP_MAX_NESTED_JAR_ENTRY_BYTES` to override it, on the same rules as the download cap: ASCII decimal digits, values below 1 MiB raised to 1 MiB, anything else falling back to the default. The size is checked against the entry's declared uncompressed size before the read starts and again against the bytes actually streamed. A breach fails that one inner jar with `ERR_LIMIT_EXCEEDED`; the shell jar's other inner jars still resolve.\n- Queued calls resume only after the replacement worker completes initialization replay. If replacement startup or replay fails, queued tool calls terminate with `ERR_WORKER_RESTART` instead of waiting indefinitely. If unresolved process-tree cleanup fills the supervisor's two live-generation slots, new requests fail with the existing restart envelope and unavailable notifications are warning-dropped until cleanup or reconnect. On POSIX, an already-gone process group counts as cleaned up rather than leaving a stale cleanup token.\n- If a workspace was built with `GRADLE_USER_HOME=/tmp/...` or another isolated Gradle home, pass that path as `gradleUserHome` so source, mapping, runtime, and project validation lookups use the same Loom cache instead of stale caches under the MCP process home.\n- `manage-cache` reports corrupt Mojang binary-remap cache directories under `cacheKinds: [\"binary-remap\"]` with `status: \"corrupt\"`, and can delete them by `selector.artifactId` in preview/apply workflows.\n\n### Inspect Minecraft source from a version\n\n```json\n{\n  \"tool\": \"inspect-minecraft\",\n  \"arguments\": {\n    \"task\": \"class-source\",\n    \"subject\": {\n      \"kind\": \"class\",\n      \"className\": \"net.minecraft.server.Main\",\n      \"artifact\": {\n        \"type\": \"resolve-target\",\n        \"target\": {\n          \"kind\": \"version\",\n          \"value\": \"1.21.10\"\n        }\n      }\n    }\n  }\n}\n```\n\n### Map or check a symbol\n\n```json\n{\n  \"tool\": \"analyze-symbol\",\n  \"arguments\": {\n    \"task\": \"map\",\n    \"subject\": {\n      \"kind\": \"method\",\n      \"owner\": \"net.minecraft.server.Main\",\n      \"name\": \"tickServer\"\n    },\n    \"version\": \"1.21.10\",\n    \"sourceMapping\": \"mojang\",\n    \"targetMapping\": \"intermediary\",\n    \"signatureMode\": \"name-only\",\n    \"detail\": \"standard\"\n  }\n}\n```\n\n### Summarize a mod JAR\n\n```json\n{\n  \"tool\": \"analyze-mod\",\n  \"arguments\": {\n    \"task\": \"summary\",\n    \"subject\": {\n      \"kind\": \"jar\",\n      \"jarPath\": \"/path/to/mymod-1.0.0.jar\"\n    }\n  }\n}\n```\n\n### Validate a workspace\n\n```json\n{\n  \"tool\": \"validate-project\",\n  \"arguments\": {\n    \"task\": \"project-summary\",\n    \"subject\": {\n      \"kind\": \"workspace\",\n      \"projectPath\": \"/workspace/modid\",\n      \"discover\": [\"mixins\", \"access-wideners\", \"access-transformers\"]\n    },\n    \"preferProjectVersion\": true,\n    \"preferProjectMapping\": true\n  }\n}\n```\n\nWorkspace summaries still default to discovering mixins and access wideners. Add `\"access-transformers\"` to `subject.discover` when you want Access Transformer files included in the summary run.\n\n## Documentation\n\n- [Detailed example requests](docs/examples.md) for copyable payloads and common workflows\n- [Tool and configuration reference](docs/tool-reference.md) for exact inputs, outputs, resource behavior, environment variables, and migration notes. Start with the [Which Tool for Which Question](docs/tool-reference.md#which-tool-for-which-question) decision table when you are not sure which tool to call.\n- [日本語 README](docs/README-ja.md) for a Japanese onboarding overview\n\n## Tool Surface\n\nStart with these top-level workflow tools unless you already know the exact specialized operation you want. The lower-level tools remain available for narrow follow-up work and automation.\n\n### Top-Level Workflow Tools\n\n<!-- BEGIN GENERATED TOOL TABLE: top-level-workflow-tools -->\n| Tool | Purpose |\n| --- | --- |\n| `inspect-minecraft` | Inspect versions, artifacts, classes, files, source text, and workspace-aware lookup flows |\n| `analyze-symbol` | Handle symbol existence checks, namespace mapping, lifecycle tracing, workspace symbol resolution, and API overviews |\n| `compare-minecraft` | Compare version pairs, class diffs, registry diffs, and migration-oriented summaries |\n| `analyze-mod` | Summarize mod metadata, decompile and search mod code, inspect class source, read class members from bytecode, and preview or apply remaps |\n| `validate-project` | Summarize workspaces and run direct Mixin, Access Widener, or Access Transformer validation |\n| `manage-cache` | List, verify, and preview or apply cache cleanup operations |\n<!-- END GENERATED TOOL TABLE: top-level-workflow-tools -->\n\n### Source Exploration\n\nTools for browsing Minecraft versions, resolving source artifacts, and reading or searching decompiled source code.\n\n<!-- BEGIN GENERATED TOOL TABLE: source-exploration -->\n| Tool | Purpose |\n| --- | --- |\n| `list-versions` | List available Minecraft versions from Mojang metadata and local cache |\n| `resolve-artifact` | Resolve source artifacts from versions, JAR paths, or Maven coordinates |\n| `find-class` | Find simple or fully-qualified class names, including classes bundled in nested JARs |\n| `get-class-source` | Read class source from an artifact or resolve the backing artifact on demand |\n| `get-class-members` | List constructors, fields, and methods from bytecode |\n| `search-class-source` | Search indexed class source by symbol, text, or path |\n| `get-artifact-file` | Read a full source file with a byte limit |\n| `list-artifact-files` | List indexed source file paths with cursor pagination |\n| `index-artifact` | Rebuild indexed metadata for an existing artifact |\n<!-- END GENERATED TOOL TABLE: source-exploration -->\n\n`find-class` accepts either an `artifactId` or the shared object `target` shape. For a workspace-relative dependency, pass `target: { kind: \"dependency\", group, name, versionFromProject: true }` with top-level `projectPath`. Fabric-style umbrella JARs are searched through their nested `.class` inventories; a top-level class match can then be passed to `get-class-source` or `get-class-members`, which resolve the containing nested JAR. Dotted inner-class matches are also readable through `get-class-source`. An empty result still means that the requested class name is absent from the resolved dependency version.\n\nFor unobfuscated releases such as `26.1+`, `obfuscated` names the runtime jar's names as shipped, which are already Mojang names: both `obfuscated` and `mojang` are accepted, `mappingApplied` reports the label you asked for, and `provenance.unobfuscatedRuntime: true` marks the artifact. `mapping=\"mojang\"` uses the runtime/decompile path directly and skips Loom source-jar discovery, while `intermediary` and `yarn` fall back to `obfuscated` with a warning. This applies to version targets, Minecraft runtime coordinates, and JAR targets whose own contents (a top-level `version.json` with a 26.1+ `id`, `net/minecraft/SharedConstants.class`, and no `.java` sources) prove a 26.1+ Minecraft runtime jar; see [docs/tool-reference.md → Lookup Rules](docs/tool-reference.md#lookup-rules). Labelling these Mojang names `obfuscated` is a known issue, kept unchanged for compatibility until a future major release corrects it; see [docs/tool-reference.md → Known issue: obfuscated label on unobfuscated runtimes](docs/tool-reference.md#known-issue-obfuscated-label-on-unobfuscated-runtimes).\n\n### Version Comparison & Symbol Tracking\n\nTools for comparing class and registry changes across Minecraft versions and tracing symbol existence over time.\n\n<!-- BEGIN GENERATED TOOL TABLE: version-comparison-symbol-tracking -->\n| Tool | Purpose |\n| --- | --- |\n| `trace-symbol-lifecycle` | Trace when `Class.method` exists across Minecraft versions |\n| `diff-class-signatures` | Compare one class across two versions and return member deltas |\n| `compare-versions` | Compare class and registry changes between two versions |\n<!-- END GENERATED TOOL TABLE: version-comparison-symbol-tracking -->\n\n### Mapping & Symbols\n\nTools for converting symbol names between namespaces and checking symbol existence.\n\n<!-- BEGIN GENERATED TOOL TABLE: mapping-symbols -->\n| Tool | Purpose |\n| --- | --- |\n| `find-mapping` | Look up mapping candidates for class, field, or method symbols |\n| `resolve-method-mapping-exact` | Strict shortcut for `find-mapping` (kind=method, signatureMode=exact); requires the full owner+name+descriptor triple |\n| `get-class-api-matrix` | Show one class API across `obfuscated`, `mojang`, `intermediary`, and `yarn` |\n| `resolve-workspace-symbol` | Resolve compile-visible symbol names from a Gradle workspace |\n| `check-symbol-exists` | Check whether a class, field, or method exists in a namespace |\n<!-- END GENERATED TOOL TABLE: mapping-symbols -->\n\nExpert and batch tools share the `detail` (`summary` | `standard` | `full`) + `include[]` response contract for shorter responses (replacing the old per-tool `compact` flag). See [docs/tool-reference.md](docs/tool-reference.md) for per-tool defaults and the full field list.\n\n### NBT Utilities\n\nTools for decoding, patching, and encoding Java Edition NBT binary data using a typed JSON representation.\n\n<!-- BEGIN GENERATED TOOL TABLE: nbt-utilities -->\n| Tool | Purpose |\n| --- | --- |\n| `nbt-to-json` | Decode Java Edition NBT binary payloads into typed JSON |\n| `nbt-apply-json-patch` | Apply RFC 6902 patches to typed NBT JSON |\n| `json-to-nbt` | Encode typed JSON back to Java Edition NBT binary |\n<!-- END GENERATED TOOL TABLE: nbt-utilities -->\n\n### Mod Analysis\n\nTools for extracting metadata from mod JARs, decompiling mod source, searching mod code, and remapping mod namespaces.\n\n<!-- BEGIN GENERATED TOOL TABLE: mod-analysis -->\n| Tool | Purpose |\n| --- | --- |\n| `analyze-mod-jar` | Extract mod metadata, dependencies, entrypoints, mixin config info, and packaged access transformer paths from a JAR |\n| `decompile-mod-jar` | Decompile a mod JAR and optionally return one class source |\n| `get-mod-class-source` | Read one class source from the decompiled mod cache |\n| `search-mod-source` | Search decompiled mod source by class, method, field, or content |\n| `remap-mod-jar` | Remap a Fabric or Quilt mod JAR to `yarn` or `mojang` names |\n<!-- END GENERATED TOOL TABLE: mod-analysis -->\n\n### Validation\n\nTools for validating Mixin source, Access Widener files, and Forge/NeoForge Access Transformer files against a target Minecraft version. Workspace options let validation use loader/runtime context when a project path is available.\n\n<!-- BEGIN GENERATED TOOL TABLE: validation -->\n| Tool | Purpose |\n| --- | --- |\n| `validate-mixin` | Validate Mixin source against a target Minecraft version (returns `validationStatus: \"partial\"` with `targetOutcomes` when a stage budget defers work) |\n| `validate-access-widener` | Validate Access Widener content against a target Minecraft version, optionally using runtime-aware Loom artifacts |\n| `validate-access-transformer` | Validate Access Transformer content against a target Minecraft version, optionally using Forge/NeoForge runtime artifacts |\n| `verify-mixin-target` | Single-call probe for owner / member existence with `@Shadow` / `@Accessor` / `@Invoker` advice |\n<!-- END GENERATED TOOL TABLE: validation -->\n\n### Registry & Diagnostics\n\nTools for querying generated registry data and inspecting server runtime state.\n\n<!-- BEGIN GENERATED TOOL TABLE: registry-diagnostics -->\n| Tool | Purpose |\n| --- | --- |\n| `get-registry-data` | Read generated registry snapshots and optionally include entry data |\n| `get-runtime-metrics` | Inspect runtime metrics and latency snapshots |\n<!-- END GENERATED TOOL TABLE: registry-diagnostics -->\n\n### Batch Lookup\n\nTools that share one resolved artifact or Minecraft version across a fixed shortlist. Results include one status per item plus an aggregate `summary`. See [Batch lookup contract](docs/tool-reference.md#batch-lookup-contract) for failure handling and retry mapping.\n\nWithin one MCP server process, batch class lookups that need the same binary fallback share one in-flight source indexing/decompile rebuild for that artifact.\n\n<!-- BEGIN GENERATED TOOL TABLE: batch-lookup -->\n| Tool | Purpose |\n| --- | --- |\n| `batch-class-source` | Read source for many classes against one shared resolved artifact (1..50 entries per call) |\n| `batch-class-members` | List members for many classes against one shared resolved artifact (1..50 entries per call) |\n| `batch-symbol-exists` | Probe symbol existence for many entries against one shared Minecraft-version artifact (workspace / version targets only) |\n| `batch-mappings` | Translate many symbols across mapping namespaces with one shared Minecraft version (no shared artifact) |\n<!-- END GENERATED TOOL TABLE: batch-lookup -->\n\nDetailed parameter constraints, migration notes, resource behavior, and the full environment-variable matrix live in [docs/tool-reference.md](docs/tool-reference.md).\n\n## Development\n\nRepository requirements:\n\n- Node.js 22.13.0+\n- `pnpm`\n- Java when running remap or decompile flows locally\n\nSetup and run the repository:\n\n```bash\npnpm install\npnpm dev\n```\n\nBuild the packaged shape:\n\n```bash\npnpm build\npnpm start\n```\n\nAlways run:\n\n```bash\npnpm check\npnpm test\n```\n\nRun these when relevant:\n\n- `pnpm test:file <path...>` for focused ordinary suites\n- `pnpm test:grep <name-pattern>` for recursive ordinary suites filtered by test name\n- `pnpm test:manual:stdio-smoke` for MCP transport, registration, or manual workflow changes\n- `pnpm test:manual:package-smoke` when checking packaged install and distribution behavior\n- `pnpm test:perf` for search, index, or performance-sensitive changes\n- `pnpm test:coverage` or `pnpm test:coverage:lcov` for coverage checks (`lines=80`, `branches=70`, `functions=80`)\n- `pnpm validate` for the full local validation suite\n\nOrdinary `.test.ts` files live in domain directories under `tests/` (for example `source-service/`, `entry-tools/`, `mapping/`, `mixin/`, `integration/mcp-tools/`, `contracts/`, and `utils/`). Keep helper-only modules in `tests/helpers`; manual smoke, performance, resource, and smoke-only files remain in their existing special directories.\n\n## License\n\n[MIT](LICENSE)\n","readmeFilename":"README.md"}