{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_cqjggzaatk2k","handle":"ripple-mcp","url":"https://wellknown.network/agents/ripple-mcp","links":{"self":"https://wellknown.network/agents/ripple-mcp/record.json","html":"https://wellknown.network/agents/ripple-mcp","markdown":"https://wellknown.network/agents/ripple-mcp/record.md","api":"https://wellknown.network/api/v1/agents/ripple-mcp","status":"https://wellknown.network/api/v1/agents/ripple-mcp/status","claim":"https://wellknown.network/agents/ripple-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/ripple-mcp/claim.json","badge":"https://wellknown.network/agents/ripple-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json"},"ard":{"identifier":"urn:air::server:ripple-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"ripple-mcp","summary":"Self-hosted codebase intelligence platform — graph + vector indexing with MCP tools for IDE-embedded LLMs","description":"# Ripple\n\n[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)\n[![Python](https://img.shields.io/badge/python-3.11%2B-blue)](https://python.org)\n[![MCP Tools](https://img.shields.io/badge/MCP-15%20tools-brightgreen)](https://modelcontextprotocol.io)\n[![Guard](https://img.shields.io/badge/Guard-2.4ms%2Ffile-orange)](#guard)\n\n**Code intelligence from git history — not static analysis.**\n\nWorks inside **Claude Code · Cursor · GitHub Copilot Agent · OpenHands · Windsurf**\n\nStatic analysis tells you what *could* break. Git history tells you what *actually* breaks together. The gap between those two is where production incidents live — and where Ripple operates.\n\n---\n\n## Try it in 60 seconds — no GPU, no config\n\nAnalyze any public repo's blast radius from its commit history:\n\n```bash\ngit clone https://github.com/Amitshukla2308/Index-the-code\ncd Index-the-code\npip install -e .\npython3 apps/cli/demo.py https://github.com/your-org/your-repo\nopen hr-demo-report.html\n```\n\nYou get an HTML report of the highest-risk files ranked by co-change history. **On Flask:** `src/flask/app.py` scores 1120 — the single most-coupled file across 2000 commits. No surprise. Immediately useful.\n\n---\n\n## What it does\n\n### Blast Radius — +322% recall over static import graph\n\nEvery other tool counts import edges. Ripple counts how often files *actually changed together* across your git history. The difference: only **14.9% of import neighbors ever co-change** — the static graph predicts risk for files that don't need review. Temporal signals catch the 85% the graph misses.\n\n| Metric | Static (v1) | Temporal (v2) | Delta |\n|--------|------------|--------------|-------|\n| recall@10 | 0.11 | **0.47** | **+322%** |\n| MRR | 0.08 | **0.36** | +359% |\n\n### Guard — static semantic checks at 2.4ms/file\n\nAI-generated code passes every review gate because it *looks* correct. Guard verifies what it *claims*: checks that comments match the code that follows, that locks aren't released …","publisher":null,"homepage":"https://github.com/Amitshukla2308/use-ripple#readme","repository":"https://github.com/Amitshukla2308/use-ripple#readme","version":"0.6.0","license":null,"protocols":["mcp"],"tags":["blast-radius","code-search","codebase-intelligence","mcp","rag"],"pricing":null,"endpoints":[{"url":"pypi:ripple-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","repoUrl":"pypi","summary":"pypi","version":"pypi","description":"pypi","homepageUrl":"pypi"}},"derived":{"capabilities":[{"slug":"data.vector-search","name":"Vector Search","confidence":1,"provenance":"declared"},{"slug":"dev.version-control","name":"Version Control","confidence":0.745,"provenance":"derived"}],"categories":["data","dev"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"ripple-mcp","registry":"pypi","observedAt":"2026-09-10T11:28:31.136Z","publishedAt":"2026-04-18T11:16:14.082504Z","latestVersion":"0.6.0"}},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"ripple-mcp","url":"https://pypi.org/project/ripple-mcp/","firstSeenAt":"2026-09-10T11:27:09.370Z","fetchedAt":"2026-09-10T11:27:09.370Z","normalizedAt":"2026-09-10T11:27:09.370Z"}]},"firstSeenAt":"2026-09-10T11:27:09.370Z","updatedAt":"2026-09-10T11:28:31.136Z"}