{"_id":"aibolit-mcp-server","_rev":"6-d60033c048ffd8cf7ec85fca9dd45602","name":"aibolit-mcp-server","dist-tags":{"latest":"0.0.6"},"versions":{"0.0.1":{"name":"aibolit-mcp-server","version":"0.0.1","keywords":["mcp","aibolit","ai"],"author":{"url":"https://www.yegor256.com/","name":"Yegor Bugayenko","email":"yegor256@gmail.com"},"license":"MIT","_id":"aibolit-mcp-server@0.0.1","maintainers":[{"name":"yegor256","email":"yegor256@gmail.com"}],"homepage":"https://github.com/cqfn/aibolit-mcp-server","bugs":{"url":"https://github.com/cqfn/aibolit-mcp-server/issues"},"os":["darwin","linux","win32"],"bin":{"index":"index.ts"},"dist":{"shasum":"e14ac4a9b3ee3177514f3188cf5c350c93f98b4f","tarball":"https://registry.npmjs.org/aibolit-mcp-server/-/aibolit-mcp-server-0.0.1.tgz","fileCount":38,"integrity":"sha512-8B69hjdY+MJJ4DPaXxT/d5v0O6BrmdCnOxe+BeK2zse8UxOWF4U3GZmyMw99ARmYWD3hIM3gZGBDL3gDm3N6OA==","signatures":[{"sig":"MEUCIQD+dHRS5JqLH8CsScoaSZZyXEAfp1Iw9ivmRTR7eHYpZQIgZ+VAjlnr13FCENWx9xPdbzX5pgxxVaFQYKTT4yX0GyQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21888},"main":"index","engines":{"npm":">8.0","node":">=18.0"},"gitHead":"6625dae31812d3487db6af91318e9ea59473b3be","_npmUser":{"name":"yegor256","email":"yegor256@gmail.com"},"repository":{"url":"git+https://github.com/cqfn/aibolit-mcp-server.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP Server for Aibolit","directories":{},"_nodeVersion":"18.20.8","dependencies":{"@modelcontextprotocol/sdk":"^1.10.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","jest":"^29.7.0","eslint":"^9.24.0","ts-jest":"^29.3.2","ts-node":"^10.9.2","typescript":"^5.8.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0","typescript-eslint":"^8.31.1","@typescript-eslint/parser":"^8.31.1","@typescript-eslint/eslint-plugin":"^8.31.1"},"_npmOperationalInternal":{"tmp":"tmp/aibolit-mcp-server_0.0.1_1747058909088_0.8481418986404854","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"aibolit-mcp-server","version":"0.0.2","keywords":["mcp","aibolit","ai"],"author":{"url":"https://www.yegor256.com/","name":"Yegor Bugayenko","email":"yegor256@gmail.com"},"license":"MIT","_id":"aibolit-mcp-server@0.0.2","maintainers":[{"name":"yegor256","email":"yegor256@gmail.com"}],"homepage":"https://github.com/cqfn/aibolit-mcp-server","bugs":{"url":"https://github.com/cqfn/aibolit-mcp-server/issues"},"os":["darwin","linux","win32"],"bin":{"index":"index.ts"},"dist":{"shasum":"546ad7a278c1664069813ef863501d72f4d67eb3","tarball":"https://registry.npmjs.org/aibolit-mcp-server/-/aibolit-mcp-server-0.0.2.tgz","fileCount":30,"integrity":"sha512-V0VpYTxT/sFXHAXg306Pv+9ZXb/nyPWuC78HFxjjtRCcPomDLiTFwThL2Bd/VNyTfbVPcSf8Igw1efnooBsTmQ==","signatures":[{"sig":"MEYCIQDJDH26QgOyzmeJIkRrwfvrHxydLo39eq7gBCMSLmBjBAIhAJzTyGMenYqbB39Mm0/DPcwjQr+U2GNnEougNja9mFpR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":71004},"main":"index","engines":{"npm":">8.0","node":">=18.0"},"gitHead":"80d9149a5a6a3acde049c122bfddb49b8b846ab7","_npmUser":{"name":"yegor256","email":"yegor256@gmail.com"},"repository":{"url":"git+https://github.com/cqfn/aibolit-mcp-server.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP Server for Aibolit","directories":{},"_nodeVersion":"18.20.8","dependencies":{"commander":"^13.1.0","@modelcontextprotocol/sdk":"^1.10.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","jest":"^29.7.0","eslint":"^9.24.0","ts-jest":"^29.3.2","ts-node":"^10.9.2","typescript":"^5.8.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0","typescript-eslint":"^8.31.1","@typescript-eslint/parser":"^8.31.1","@typescript-eslint/eslint-plugin":"^8.31.1"},"_npmOperationalInternal":{"tmp":"tmp/aibolit-mcp-server_0.0.2_1747062849760_0.3082897420051063","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"aibolit-mcp-server","version":"0.0.3","keywords":["mcp","aibolit","ai"],"author":{"url":"https://www.yegor256.com/","name":"Yegor Bugayenko","email":"yegor256@gmail.com"},"license":"MIT","_id":"aibolit-mcp-server@0.0.3","maintainers":[{"name":"yegor256","email":"yegor256@gmail.com"}],"homepage":"https://github.com/cqfn/aibolit-mcp-server","bugs":{"url":"https://github.com/cqfn/aibolit-mcp-server/issues"},"os":["darwin","linux","win32"],"bin":{"index":"index.ts"},"dist":{"shasum":"a0ea816523808d3f8f8f74d81e65308ba89a69ab","tarball":"https://registry.npmjs.org/aibolit-mcp-server/-/aibolit-mcp-server-0.0.3.tgz","fileCount":9,"integrity":"sha512-QAaXcKBh+2ZbOzJuilhI2Xx8v7gQxC6aNZ1xW/qUB2aAixZ3AU+8cgyd7Wj3Yw/04hiG51JhYL7O95pS/0FJJw==","signatures":[{"sig":"MEQCIEFAcj8CwwQmyIDnIIS/ixiykKy1tnw1R4v3j3GnHyzMAiBmfJAHt6d+A4JT0QzLvPcvrb3sk5G5jbAzUGgwxA7DEQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7173},"main":"index","engines":{"npm":">8.0","node":">=18.0"},"gitHead":"5d2a60bd63ebaa608e9517eb54741707c3131fa6","_npmUser":{"name":"yegor256","email":"yegor256@gmail.com"},"repository":{"url":"git+https://github.com/cqfn/aibolit-mcp-server.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP Server for Aibolit","directories":{},"_nodeVersion":"18.20.8","dependencies":{"commander":"^13.1.0","@modelcontextprotocol/sdk":"^1.10.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","jest":"^29.7.0","eslint":"^9.24.0","ts-jest":"^29.3.2","ts-node":"^10.9.2","typescript":"^5.8.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0","typescript-eslint":"^8.31.1","@typescript-eslint/parser":"^8.31.1","@typescript-eslint/eslint-plugin":"^8.31.1"},"_npmOperationalInternal":{"tmp":"tmp/aibolit-mcp-server_0.0.3_1747218459348_0.658061689601446","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"aibolit-mcp-server","version":"0.0.4","keywords":["mcp","aibolit","ai"],"author":{"url":"https://www.yegor256.com/","name":"Yegor Bugayenko","email":"yegor256@gmail.com"},"license":"MIT","_id":"aibolit-mcp-server@0.0.4","maintainers":[{"name":"yegor256","email":"yegor256@gmail.com"}],"homepage":"https://github.com/cqfn/aibolit-mcp-server","bugs":{"url":"https://github.com/cqfn/aibolit-mcp-server/issues"},"os":["darwin","linux","win32"],"bin":{"index":"index.ts"},"dist":{"shasum":"9740f32a7a19aa10945bc00638672600195263f9","tarball":"https://registry.npmjs.org/aibolit-mcp-server/-/aibolit-mcp-server-0.0.4.tgz","fileCount":9,"integrity":"sha512-TJP+LQ9gu8JqXhID3kVbh6B4QBQgSO+ePt61G/9z9kEjE7pimFw7tx1qcpp7vDPblL5AD8akjhYI5ikEB3TxBA==","signatures":[{"sig":"MEUCIQCuGLO6ADIJMG1FW55Ujp7qmr5mFvp6mrh0O/v1hzuCTgIgTcL3LB6TImC76/OT0WwDsJGacmMjowW5ao75uQktHKY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7177},"main":"index","engines":{"npm":">8.0","node":">=18.0"},"gitHead":"1f97ea481209ab59fcb113a8b31fb32efa9ca4f2","_npmUser":{"name":"yegor256","email":"yegor256@gmail.com"},"repository":{"url":"git+https://github.com/cqfn/aibolit-mcp-server.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP Server for Aibolit","directories":{},"_nodeVersion":"18.20.8","dependencies":{"commander":"^13.1.0","@modelcontextprotocol/sdk":"^1.10.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","jest":"^29.7.0","eslint":"^9.24.0","ts-jest":"^29.3.2","ts-node":"^10.9.2","typescript":"^5.8.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0","typescript-eslint":"^8.31.1","@typescript-eslint/parser":"^8.31.1","@typescript-eslint/eslint-plugin":"^8.31.1"},"_npmOperationalInternal":{"tmp":"tmp/aibolit-mcp-server_0.0.4_1747219955680_0.855001465609496","host":"s3://npm-registry-packages-npm-production"}},"0.0.5":{"name":"aibolit-mcp-server","version":"0.0.5","keywords":["mcp","aibolit","ai"],"author":{"url":"https://www.yegor256.com/","name":"Yegor Bugayenko","email":"yegor256@gmail.com"},"license":"MIT","_id":"aibolit-mcp-server@0.0.5","maintainers":[{"name":"yegor256","email":"yegor256@gmail.com"}],"homepage":"https://github.com/cqfn/aibolit-mcp-server","bugs":{"url":"https://github.com/cqfn/aibolit-mcp-server/issues"},"os":["darwin","linux","win32"],"bin":{"index":"index.ts"},"dist":{"shasum":"6d911ce13cfa252c8c78a0ea1d24ab90d33bd749","tarball":"https://registry.npmjs.org/aibolit-mcp-server/-/aibolit-mcp-server-0.0.5.tgz","fileCount":10,"integrity":"sha512-hog/KSmvHS229vXqR6F7TIWQwBE3/OdL7StGDGriBFwZD6p+UM0tqf1vY9CxGhSHSyPYYM1GiGGOId8DfbLNUw==","signatures":[{"sig":"MEQCIAl3hYoU9cTBkkjakZpITgpPW3ur9+CDWDq14w2NWLJMAiBJpSPawQ0rc9SvPEUqMpirXeXUXHhsNJAiWtZi0Df+lg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10159},"main":"index","engines":{"npm":">8.0","node":">=18.0"},"gitHead":"40e9358e56dbb4692e8a023072bd7ee16ab6a30a","scripts":{"lint":"eslint","test":"jest"},"_npmUser":{"name":"yegor256","email":"yegor256@gmail.com"},"repository":{"url":"git+https://github.com/cqfn/aibolit-mcp-server.git","type":"git"},"_npmVersion":"10.8.2","description":"MCP Server for Aibolit","directories":{},"_nodeVersion":"18.20.8","dependencies":{"semver":"^7.7.2","commander":"^13.1.0","@modelcontextprotocol/sdk":"^1.10.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.4","jest":"^29.7.0","eslint":"^9.24.0","ts-jest":"^29.3.2","ts-node":"^10.9.2","typescript":"^5.8.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0","@types/semver":"^7.7.0","typescript-eslint":"^8.31.1","@typescript-eslint/parser":"^8.31.1","@typescript-eslint/eslint-plugin":"^8.31.1"},"_npmOperationalInternal":{"tmp":"tmp/aibolit-mcp-server_0.0.5_1747382766210_0.34082008779586603","host":"s3://npm-registry-packages-npm-production"}},"0.0.6":{"author":{"name":"Yegor Bugayenko","email":"yegor256@gmail.com","url":"https://www.yegor256.com/"},"bin":{"index":"index.ts"},"dependencies":{"@modelcontextprotocol/sdk":"^1.10.2","commander":"^13.1.0","semver":"^7.7.2"},"description":"MCP Server for Aibolit","devDependencies":{"@jest/globals":"^29.7.0","@types/jest":"^29.5.14","@types/semver":"^7.7.0","@typescript-eslint/eslint-plugin":"^8.31.1","@typescript-eslint/parser":"^8.31.1","eslint":"^9.24.0","jest":"^29.7.0","ts-jest":"^29.3.2","ts-node":"^10.9.2","tsx":"^4.19.4","typescript":"^5.8.3","typescript-eslint":"^8.31.1"},"engines":{"node":">=18.0","npm":">8.0"},"homepage":"https://github.com/cqfn/aibolit-mcp-server","keywords":["mcp","aibolit","ai"],"license":"MIT","main":"index","name":"aibolit-mcp-server","os":["darwin","linux","win32"],"repository":{"type":"git","url":"git+https://github.com/cqfn/aibolit-mcp-server.git"},"scripts":{"lint":"eslint","test":"jest"},"version":"0.0.6","_id":"aibolit-mcp-server@0.0.6","gitHead":"4a90dab95fca797ac9eb890094afb8a748159397","bugs":{"url":"https://github.com/cqfn/aibolit-mcp-server/issues"},"_nodeVersion":"18.20.8","_npmVersion":"10.8.2","dist":{"integrity":"sha512-q8kyTMzBPUuYyshGV/7OjE3vDqWnBU7sxfXF3NpKMRXmjSoFR5i0VgzNlE5GJ3USQfCyoBS5s1nZckbPV/jHSQ==","shasum":"c580a70e575468d689ff4fdb79121e3d3d5f8873","tarball":"https://registry.npmjs.org/aibolit-mcp-server/-/aibolit-mcp-server-0.0.6.tgz","fileCount":10,"unpackedSize":10205,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCDaiGqLsG1e4BUtJEBNoQAlqYmE5eL5a2WzIWHe04YHwIhAIcM0WzGjF1LamoVc8X5x3wAoHlkd8q7CwpsMdenCEYz"}]},"_npmUser":{"name":"yegor256","email":"yegor256@gmail.com"},"directories":{},"maintainers":[{"name":"yegor256","email":"yegor256@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/aibolit-mcp-server_0.0.6_1747384424323_0.4364707168574171"},"_hasShrinkwrap":false}},"time":{"created":"2025-05-12T14:08:29.086Z","modified":"2025-05-16T08:33:44.650Z","0.0.1":"2025-05-12T14:08:29.304Z","0.0.2":"2025-05-12T15:14:09.935Z","0.0.3":"2025-05-14T10:27:39.532Z","0.0.4":"2025-05-14T10:52:35.830Z","0.0.5":"2025-05-16T08:06:06.393Z","0.0.6":"2025-05-16T08:33:44.495Z"},"bugs":{"url":"https://github.com/cqfn/aibolit-mcp-server/issues"},"author":{"name":"Yegor Bugayenko","email":"yegor256@gmail.com","url":"https://www.yegor256.com/"},"license":"MIT","homepage":"https://github.com/cqfn/aibolit-mcp-server","keywords":["mcp","aibolit","ai"],"repository":{"type":"git","url":"git+https://github.com/cqfn/aibolit-mcp-server.git"},"description":"MCP Server for Aibolit","maintainers":[{"name":"yegor256","email":"yegor256@gmail.com"}],"readme":"# MCP Server for Aibolit, Java Code Analyzer\n\n[![DevOps By Rultor.com](https://www.rultor.com/b/cqfn/aibolit-mcp-server)](https://www.rultor.com/p/cqfn/aibolit-mcp-server)\n\n[![make](https://github.com/cqfn/aibolit-mcp-server/actions/workflows/make.yml/badge.svg)](https://github.com/cqfn/aibolit-mcp-server/actions/workflows/make.yml)\n[![codecov](https://codecov.io/gh/cqfn/aibolit-mcp-server/graph/badge.svg?token=3dr2Il91wJ)](https://codecov.io/gh/cqfn/aibolit-mcp-server)\n[![Hits-of-Code](https://hitsofcode.com/github/cqfn/aibolit-mcp-server)](https://hitsofcode.com/view/github/cqfn/aibolit-mcp-server)\n[![License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/cqfn/aibolit-mcp-server/blob/master/LICENSE.txt)\n\nIf you use AI agents, such as [Claude Code], [Cursor], or [Windsurf],\n  for code refactoring, you may enjoy using this [MCP] server.\nYour AI agent, when you ask it to \"make code better,\"\n  may wonder what exactly needs to be improved.\nSadly, it may often overlook important problems.\nAI agents, by design, pay more attention to cosmetic issues,\n  which are \"low-hanging fruits\" for them.\nThis [MCP] server will give your agent a hint:\n  what is the **most critical design issue** in the code.\nThen, the agent will refactor it and fix the issue.\n\nFirst, install [Node], [Npm], [Python], [Pip], and [aibolit]:\n\n```bash\naibolit --version\n```\n\nThen, add this [MCP] server to [Claude Code]\n(or simply edit `~/claude.json`, but it's not recommended):\n\n```bash\nclaude mcp add aibolit npx aibolit-mcp-server@0.0.5\n```\n\nThen, restart [Claude Code] and ask it something along these lines:\n\"Find the most critical design issue in my code base and fix it.\"\n\n## How to Contribute\n\nTo test this project, simply run the following commands\n(you'll need [Node] 18+, [Npm], and [GNU make] installed):\n\n```bash\nnpm install\nmake\n```\n\nIf everything builds correctly after your changes, submit a pull request.\n\n[MCP]: https://modelcontextprotocol.io/\n[Npm]: https://www.npmjs.com/\n[Node]: https://nodejs.org/en\n[aibolit]: https://github.com/cqfn/aibolit\n[Claude Code]: https://github.com/anthropics/claude-code\n[Cursor]: https://www.cursor.com/\n[Windsurf]: https://windsurf.com/editor\n[GNU make]: https://www.gnu.org/software/make/\n[Python]: https://www.python.org/\n[Pip]: https://pypi.org/project/pip/\n","readmeFilename":"README.md"}