{"_id":"@barissozudogru/release-intel-mcp","_rev":"5-077f46f62e7c48a9d132a449f2288f21","name":"@barissozudogru/release-intel-mcp","dist-tags":{"latest":"0.7.2"},"versions":{"0.6.0":{"name":"@barissozudogru/release-intel-mcp","version":"0.6.0","keywords":["mcp","release-notes","changelog","github","typescript","developer-tools","model-context-protocol"],"author":{"name":"barissozudogru"},"license":"MIT","_id":"@barissozudogru/release-intel-mcp@0.6.0","maintainers":[{"name":"barissozudogru","email":"barissozudogru@gmail.com"}],"homepage":"https://github.com/barissozudogru/release-intel-mcp#readme","bugs":{"url":"https://github.com/barissozudogru/release-intel-mcp/issues"},"bin":{"release-intel-mcp":"dist/index.js"},"dist":{"shasum":"8d7937810969f36da27a62e2bb9b30aff67a98cc","tarball":"https://registry.npmjs.org/@barissozudogru/release-intel-mcp/-/release-intel-mcp-0.6.0.tgz","fileCount":11,"integrity":"sha512-bcIWg0GzaVLQNZg6Eo8cwRgoymDJisTZLUoL8jF04gbeacslp20lt0svCHMoihZzEOBhjBtn9n2JXclOiY0bpg==","signatures":[{"sig":"MEUCIGyZUQwNYiLO1S0K+RnlXBMz0KhpoxcNYih3xMuWu9wcAiEArVVLdDHQVVlWDJIi2wIjzRBbnC6TwbNAo/MTMbMvNxI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60785},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"ead1f9f3825831205bd71626d897dc1e9d129e92","scripts":{"dev":"tsc --watch","test":"npm run build && node --test","build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"barissozudogru","email":"barissozudogru@gmail.com"},"repository":{"url":"git+https://github.com/barissozudogru/release-intel-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"MCP server that generates intelligent release notes from GitHub data by correlating commits, PRs, issues, and authors between git refs","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","express":"^5.2.1","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^25.5.0","@types/express":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/release-intel-mcp_0.6.0_1787176163593_0.5071372558808103","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@barissozudogru/release-intel-mcp","version":"0.6.1","keywords":["mcp","release-notes","changelog","github","typescript","developer-tools","model-context-protocol"],"author":{"name":"barissozudogru"},"license":"MIT","_id":"@barissozudogru/release-intel-mcp@0.6.1","maintainers":[{"name":"barissozudogru","email":"barissozudogru@gmail.com"}],"homepage":"https://github.com/barissozudogru/release-intel-mcp#readme","bugs":{"url":"https://github.com/barissozudogru/release-intel-mcp/issues"},"bin":{"release-intel-mcp":"dist/index.js"},"dist":{"shasum":"43cff6e09199ce7039110264ec475a1b078dec42","tarball":"https://registry.npmjs.org/@barissozudogru/release-intel-mcp/-/release-intel-mcp-0.6.1.tgz","fileCount":11,"integrity":"sha512-CjJP6Q+S+T2hGiW9HeyeNgsoXFFLz56RELUP2VKgZlBYTw3aJPovXdLoiMmNuywNkT5soznrNy3RWE23QoOJLw==","signatures":[{"sig":"MEQCIEb0o7Rb05GOne2IABFZCeWu5Myd1/WCqkLju7BIXPkIAiAOFHCxjJ536GhnY+QL8t4N6krq88f3fHhUe5Oh0URU7g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60840},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"36de250d64085bdd8df480ab2c3425d7dbda6f33","mcpName":"io.github.barissozudogru/release-intel","scripts":{"dev":"tsc --watch","test":"npm run build && node --test","build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"barissozudogru","email":"barissozudogru@gmail.com"},"repository":{"url":"git+https://github.com/barissozudogru/release-intel-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"MCP server that generates intelligent release notes from GitHub data by correlating commits, PRs, issues, and authors between git refs","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.3.6","express":"^5.2.1","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^25.5.0","@types/express":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/release-intel-mcp_0.6.1_1787221542225_0.2455408071495806","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@barissozudogru/release-intel-mcp","version":"0.7.0","keywords":["mcp","release-notes","changelog","github","typescript","developer-tools","model-context-protocol"],"author":{"name":"barissozudogru"},"license":"MIT","_id":"@barissozudogru/release-intel-mcp@0.7.0","maintainers":[{"name":"barissozudogru","email":"barissozudogru@gmail.com"}],"homepage":"https://petri-labs.org/tools/release-intel-mcp/","bugs":{"url":"https://github.com/barissozudogru/release-intel-mcp/issues"},"bin":{"release-intel-mcp":"dist/index.js","release-intel-report":"dist/report.js"},"dist":{"shasum":"36b778d7e6d4c7893d31f9ea2d934eb426d4dd67","tarball":"https://registry.npmjs.org/@barissozudogru/release-intel-mcp/-/release-intel-mcp-0.7.0.tgz","fileCount":15,"integrity":"sha512-+0FJxqcbOitJJgNec8k26kvvyXbUiwaGMxfvW2ITDw+YSFfWAuqVssD+0SB6qAH3jyOJx2x1Bg5rDwLPzR+BXQ==","signatures":[{"sig":"MEUCIQCv/Bxcqj4X68qLRCCQEOcDQmCFdiYp9JHTwOKI2OeoeAIgfZPiTbFgDzqLVC4ZCS7+JVGWyRfZgD/CoBpZcQXdweo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":71186},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"e0938e049d448180d8b9d70e766565a57bf6b385","mcpName":"io.github.barissozudogru/release-intel","scripts":{"dev":"tsc --watch","test":"npm run build && node --test","build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"barissozudogru","email":"barissozudogru@gmail.com"},"repository":{"url":"git+https://github.com/barissozudogru/release-intel-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"MCP server that generates intelligent release notes from GitHub data by correlating commits, PRs, issues, and authors between git refs","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.4.3","express":"^5.2.1","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^25.5.0","@types/express":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/release-intel-mcp_0.7.0_1787699099022_0.9403136688641589","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"@barissozudogru/release-intel-mcp","version":"0.7.1","keywords":["mcp","release-notes","changelog","github","typescript","developer-tools","model-context-protocol"],"author":{"name":"barissozudogru"},"license":"MIT","_id":"@barissozudogru/release-intel-mcp@0.7.1","maintainers":[{"name":"barissozudogru","email":"barissozudogru@gmail.com"}],"homepage":"https://petri-labs.org/tools/release-intel-mcp/","bugs":{"url":"https://github.com/barissozudogru/release-intel-mcp/issues"},"bin":{"release-intel-mcp":"dist/index.js","release-intel-report":"dist/report.js"},"dist":{"shasum":"9f76279f010f980a40dead0a6483dbd86cab4d94","tarball":"https://registry.npmjs.org/@barissozudogru/release-intel-mcp/-/release-intel-mcp-0.7.1.tgz","fileCount":15,"integrity":"sha512-F+YpqUEzVgWUz/ix9OKKEKyYML0OPHpwA9gA/DqwfE66Hw8BJeg7cRgFU6FwBmgN64J+l7NyS8spMudZtaBdbg==","signatures":[{"sig":"MEUCIE8BwQ8eVnCL/CSFgKCpM1fZxOVP/SBOA/9uY6x6acEyAiEAi4B21oQnbnNvdzn39u7ink3Yza7Hcn9HWjOiwCu+XPc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72837},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"455ddefb744fa7470f03d70a829b07f610de9674","mcpName":"io.github.barissozudogru/release-intel","scripts":{"dev":"tsc --watch","test":"npm run build && node --test","build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"barissozudogru","email":"barissozudogru@gmail.com"},"repository":{"url":"git+https://github.com/barissozudogru/release-intel-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"MCP server that generates intelligent release notes from GitHub data by correlating commits, PRs, issues, and authors between git refs","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^4.4.3","express":"^5.2.1","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^25.5.0","@types/express":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/release-intel-mcp_0.7.1_1787745740873_0.17641483067030905","host":"s3://npm-registry-packages-npm-production"}},"0.7.2":{"name":"@barissozudogru/release-intel-mcp","version":"0.7.2","mcpName":"io.github.barissozudogru/release-intel","description":"MCP server that generates intelligent release notes from GitHub data by correlating commits, PRs, issues, and authors between git refs","type":"module","main":"dist/index.js","bin":{"release-intel-mcp":"dist/index.js","release-intel-report":"dist/report.js"},"scripts":{"build":"tsc","start":"node dist/index.js","dev":"tsc --watch","test":"npm run build && node --test"},"keywords":["mcp","release-notes","changelog","github","typescript","developer-tools","model-context-protocol"],"author":{"name":"barissozudogru"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/barissozudogru/release-intel-mcp.git"},"homepage":"https://petri-labs.org/tools/release-intel-mcp/","bugs":{"url":"https://github.com/barissozudogru/release-intel-mcp/issues"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"engines":{"node":">=18"},"dependencies":{"@modelcontextprotocol/sdk":"^1.30.0","express":"^5.2.1","zod":"^4.4.3"},"devDependencies":{"@types/express":"^5.0.0","@types/node":"^25.5.0","typescript":"^5.9.3"},"gitHead":"eb69ea9e243163407214df00650853f0ef42499d","types":"./dist/index.d.ts","_id":"@barissozudogru/release-intel-mcp@0.7.2","_nodeVersion":"25.2.1","_npmVersion":"11.6.2","dist":{"integrity":"sha512-rBB38V5IBnaRbkMojqcdUP4QiURHDjqbkLzQ+/saNWmizW8UFi6bFHoDPTaBf+YW44nEOCuoDPW2aUBrXvRQ+Q==","shasum":"43caac6db678ade580bac5f0bf4d287a11010024","tarball":"https://registry.npmjs.org/@barissozudogru/release-intel-mcp/-/release-intel-mcp-0.7.2.tgz","fileCount":15,"unpackedSize":72837,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIHi8K2Sot2aMHktQQYzu2qH7EyBsDiUy9OW2zeeBmKk+AiEA+lI6aWu+z/poHmmCYss7Y7pKU3UhcgXsAI/qM9kh1I4="}]},"_npmUser":{"name":"barissozudogru","email":"barissozudogru@gmail.com"},"directories":{},"maintainers":[{"name":"barissozudogru","email":"barissozudogru@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/release-intel-mcp_0.7.2_1787746252643_0.14539852911040696"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-19T21:49:23.474Z","modified":"2026-08-26T12:10:52.939Z","0.6.0":"2026-08-19T21:49:23.773Z","0.6.1":"2026-08-20T10:25:42.516Z","0.7.0":"2026-08-25T23:04:59.160Z","0.7.1":"2026-08-26T12:02:21.039Z","0.7.2":"2026-08-26T12:10:52.786Z"},"bugs":{"url":"https://github.com/barissozudogru/release-intel-mcp/issues"},"author":{"name":"barissozudogru"},"license":"MIT","homepage":"https://petri-labs.org/tools/release-intel-mcp/","keywords":["mcp","release-notes","changelog","github","typescript","developer-tools","model-context-protocol"],"repository":{"type":"git","url":"git+https://github.com/barissozudogru/release-intel-mcp.git"},"description":"MCP server that generates intelligent release notes from GitHub data by correlating commits, PRs, issues, and authors between git refs","maintainers":[{"name":"barissozudogru","email":"barissozudogru@gmail.com"}],"readme":"<p align=\"center\">\n  <img src=\"./assets/banner-release-intel.svg\" alt=\"release-intel-mcp\" width=\"888\" />\n</p>\n\n<p align=\"center\">\n  <a href=\"https://www.npmjs.com/package/@barissozudogru/release-intel-mcp\"><img alt=\"npm version\" src=\"https://img.shields.io/npm/v/@barissozudogru/release-intel-mcp?style=flat-square&color=8B5CF6\"></a>\n  <a href=\"https://www.npmjs.com/package/@barissozudogru/release-intel-mcp\"><img alt=\"npm downloads\" src=\"https://img.shields.io/npm/dm/@barissozudogru/release-intel-mcp?style=flat-square&color=8B5CF6\"></a>\n  <a href=\"https://github.com/barissozudogru/release-intel-mcp/actions/workflows/ci.yml\"><img alt=\"CI\" src=\"https://github.com/barissozudogru/release-intel-mcp/actions/workflows/ci.yml/badge.svg\"></a>\n  <a href=\"https://registry.modelcontextprotocol.io/v0.1/servers/io.github.barissozudogru%2Frelease-intel/versions/latest\"><img alt=\"MCP Registry\" src=\"https://img.shields.io/badge/MCP_Registry-listed-0F172A?style=flat-square\"></a>\n  <a href=\"./LICENSE\"><img alt=\"MIT license\" src=\"https://img.shields.io/badge/License-MIT-8B5CF6?style=flat-square\"></a>\n</p>\n\n# release-intel-mcp\n\nBuild release context from repository evidence instead of a blank prompt. The server compares two Git refs and correlates commits, merged pull requests, linked issues, labels, changed files, and contributors into a structured release record.\n\n[Tool page](https://petri-labs.org/tools/release-intel-mcp/) · [npm](https://www.npmjs.com/package/@barissozudogru/release-intel-mcp) · Listed in the official [MCP Registry](https://registry.modelcontextprotocol.io/v0.1/servers/io.github.barissozudogru%2Frelease-intel/versions/latest)\n\n## Start in one minute\n\nCreate a fine-grained GitHub token with read-only access to the repositories you want to inspect. Repository contents and pull requests are sufficient for the current tools. No write permission is needed.\n\n```json\n{\n  \"mcpServers\": {\n    \"release-intel\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@barissozudogru/release-intel-mcp\"],\n      \"env\": {\n        \"GITHUB_TOKEN\": \"your_read_only_token\"\n      }\n    }\n  }\n}\n```\n\nThen ask the client for a bounded range:\n\n```text\nUse release-intel to build release evidence for owner/repository\nfrom v1.4.0 to v1.5.0. Separate merged PRs from direct commits\nand preserve links to the repository record.\n```\n\nThe token stays in the local server process and is sent only to the GitHub API.\n\n## Proof on this repository\n\nA verified run against the stable range `v0.5.1...8a2f350` returned:\n\n```text\nRepository:        barissozudogru/release-intel-mcp\nCommits:           14\nMerged PRs:        1\nFiles changed:     12\nLines added:       286\nLines deleted:     135\nContributors:      1\n```\n\nThe response also includes commit SHAs, messages, authors, pull request categories, linked issues, and warnings when GitHub truncates or fails part of the evidence lookup.\n\nIf this saves you time, consider [starring the repository](https://github.com/barissozudogru/release-intel-mcp). It helps other developers find it.\n\n## Tools\n\n| Tool | What it returns |\n|---|---|\n| `get_changes_between_refs` | Commits enriched with merged pull request metadata and linked issues |\n| `get_pull_requests_in_range` | Merged pull requests grouped as breaking, feature, fix, docs, chore, dependency, release, or other |\n| `get_release_summary` | A complete release evidence object with aggregate statistics and contributors |\n\nThe categorization uses labels and conventional title signals. Repository labels, issue links, and pull request hygiene directly affect the result. The server provides evidence and structure; the final release narrative still needs review.\n\n## Release report command\n\nThe package includes a terminal command that produces Markdown by default:\n\n```bash\nGITHUB_TOKEN=your_read_only_token \\\n  npx --yes --package @barissozudogru/release-intel-mcp \\\n  release-intel-report owner/repository v1.4.0 v1.5.0\n```\n\nUse `--json` when another tool will consume the report:\n\n```bash\nrelease-intel-report owner/repository v1.4.0 v1.5.0 --json\n```\n\n## GitHub Action\n\nAttach the evidence report to the workflow summary before publishing a release:\n\n```yaml\nname: Release evidence\n\non:\n  workflow_dispatch:\n    inputs:\n      from_ref:\n        required: true\n      to_ref:\n        required: true\n\njobs:\n  evidence:\n    runs-on: ubuntu-latest\n    permissions:\n      contents: read\n      pull-requests: read\n    steps:\n      - uses: barissozudogru/release-intel-mcp@v0.7.2\n        with:\n          from-ref: ${{ inputs.from_ref }}\n          to-ref: ${{ inputs.to_ref }}\n          token: ${{ secrets.GITHUB_TOKEN }}\n```\n\nThis action reads repository data and writes Markdown to the job summary. It does not publish a release or modify repository content.\n\n## Client setup\n\n<details>\n<summary>Claude Desktop, Cursor, Windsurf, Cline, and similar clients</summary>\n\nUse the stdio configuration from the quickstart. The server entry is identical across these clients even when their config file locations differ.\n\n</details>\n\n<details>\n<summary>VS Code with Copilot</summary>\n\nCreate `.vscode/mcp.json`:\n\n```json\n{\n  \"servers\": {\n    \"release-intel\": {\n      \"type\": \"stdio\",\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@barissozudogru/release-intel-mcp\"],\n      \"env\": {\n        \"GITHUB_TOKEN\": \"your_read_only_token\"\n      }\n    }\n  }\n}\n```\n\n</details>\n\n<details>\n<summary>Streamable HTTP</summary>\n\n```bash\nGITHUB_TOKEN=your_read_only_token \\\n  npx @barissozudogru/release-intel-mcp --http\n```\n\nThe MCP endpoint is `http://localhost:3000/mcp` and the health endpoint is `http://localhost:3000/health`. Set `PORT` to change the port.\n\n</details>\n\n<details>\n<summary>Docker</summary>\n\n```bash\ndocker build -t release-intel-mcp .\ndocker run -p 3000:3000 \\\n  -e GITHUB_TOKEN=your_read_only_token \\\n  release-intel-mcp\n```\n\nConnect an HTTP client to `http://localhost:3000/mcp`.\n\n</details>\n\n## Local development\n\n```bash\nnpm install\nnpm test\nnpm run build\nGITHUB_TOKEN=your_read_only_token node dist/index.js\n```\n\nRequirements: Node.js 18 or newer.\n\nSee [CONTRIBUTING.md](./CONTRIBUTING.md) for the development workflow.\n\n## Security and limits\n\n- Use a fine-grained, read-only token restricted to the required repositories.\n- The server never needs permission to write releases, issues, or pull requests.\n- GitHub's compare endpoint limits very large ranges. The response reports truncation.\n- Unlinked direct commits remain visible but cannot inherit pull request metadata.\n- Release categories are evidence-backed heuristics, not editorial conclusions.\n\n## License\n\n[MIT](./LICENSE)\n","readmeFilename":"README.md"}