You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@resilientdb.apache.org by "Bismanpal-Singh (via GitHub)" <gi...@apache.org> on 2026/02/16 21:27:18 UTC
[I] ResInsight: AI-Driven Developer Ecosystem [incubator-resilientdb]
Bismanpal-Singh opened a new issue, #234:
URL: https://github.com/apache/incubator-resilientdb/issues/234
**Overview**
ResInsight is an ecosystem of tools built as a Model Context Protocol (MCP) server. It transforms Claude (or any LLM) into a repo-aware copilot that provides intelligent guidance for understanding, setting up, and navigating complex codebases, with specific focus on ResilientDB ecosystem and its projects.
**Motivation**
Modern business applications use complex, interleaved tech stacks that evolve rapidly. For new or junior developers, onboarding requires significant time from experienced developers. ResInsight addresses this by:
- Enabling quick functional understanding of codebases without extensive manual
- code/documentation browsing
- Providing guided installation and setup assistance with minimal expert intervention
- Offering human-in-the-loop AI guidance for resolving setup blockers
- Supporting private repository access for internal lab projects
- Delivering domain-specific knowledge for ResilientDB ecosystem
**What Makes ResInsight Unique**
Unlike typical LLM developer tools, ResInsight is tool-first, repo-aware, and domain-specific:
**1. Hybrid FAISS + Knowledge Graph Architecture**
- Combines semantic embedding search with relational file graphs using NetworkX
- Enables both content understanding and repository structure understanding
- Provides explicit memory and structure rather than generic LLM responses
**2. Deterministic, Reproducible AI**
- All insights pulled from explicit MCP tools, not LLM guesses
- Queries return data from actual GitHub repo state, eliminating hallucination
- Setup instructions, file summaries, and PR diffs are fact-based
**3. Private Repository Support**
- PAT authentication enables processing internal lab/classroom repos
- Access to repositories that commercial tools (Copilot, Sourcegraph) cannot reach
**4. Domain-Aware ResilientDB Knowledge Base**
- Categorizes queries (setup, architecture, consensus, apps, benchmarks)
- Returns structured answers using curated ResilientDB (and its applications) knowledge base
- Specifically designed for ResilientDB ecosystem onboarding
**5. Human-in-the-Loop Guidance**
- Setup tasks remain manual for security/privacy
- AI provides step-by-step guidance, log interpretation, and troubleshooting
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@resilientdb.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] ResInsight: AI-Driven Developer Ecosystem [incubator-resilientdb]
Posted by "Bismanpal-Singh (via GitHub)" <gi...@apache.org>.
Bismanpal-Singh closed issue #234: ResInsight: AI-Driven Developer Ecosystem
URL: https://github.com/apache/incubator-resilientdb/issues/234
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@resilientdb.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] ResInsight: AI-Driven Developer Ecosystem [incubator-resilientdb]
Posted by "Bismanpal-Singh (via GitHub)" <gi...@apache.org>.
Bismanpal-Singh commented on issue #234:
URL: https://github.com/apache/incubator-resilientdb/issues/234#issuecomment-3910587350
**Core Capabilities Implemented**
**1. MCP-Powered Repository Analyzer**
- GitHub repo ingestion via authenticated API (public + private repos)
- Large-scale code chunking with FAISS semantic embeddings
- 10+ integrated MCP tools for comprehensive analysis
**2. Implemented MCP Tools (Tested & Verified)**
| Tool | Functionality |
|------|---------------|
| `list_github_repo_files` | Navigate repository file structure |
| `Get_Repo_Summary` | Architectural overview and key components |
| `Ingest_Repo_Code` | Process and index codebase for analysis |
| `Semantic_Search` | Vector-based code search using embeddings |
| `SummarizeFunctions` | Extract and summarize code blocks |
| `KGraphQuery` | Knowledge graph traversal for dependencies |
| `ShowDependencyGraph` | Visualize module relationships |
| `CodeReviewAssistant` | Automated PR analysis and feedback |
| `SetupGuide` | Dockerfile-based installation instructions |
| `SearchResilientDBKnowledge` | Query ResilientDB-specific documentation |
**3. Real-World Testing**
Successfully tested on **Arrayan**, **Coinsensus** and **Debitable** repositories (React + ResilientDB):
- Built complete knowledge graph of component relationships
- Generated dependency diagrams showing file connections
- Performed semantic search to identify feature-related files: Data Upload related
- DataUploader.jsx
- InventoryPage.jsx
- ResDbApis.js
**Implementation Details**
**Location**
```
https://github.com/apache/incubator-resilientdb/ecosystem/ai-tools/mcp/ResInsight/
```
**File Structure**
```
ecosystem/ai-tools/mcp/ResInsight/
├── README.md # Comprehensive documentation
├── requirements.txt # Python dependencies
├── .gitignore # Git ignore rules
├── pyproject.toml # Project metadata
├── server.py # Main MCP server with 10+ tools
├── ResilientDBKnowledgeBase.py # Domain-specific KB integration
├── knowledge_graph_builder.py # NetworkX-based graph construction
└── add_license_headers.py # Apache license utility
```
**Technology Stack**
- **FastMCP**: MCP server framework
- **GitHub API (PyGithub)**: Repository data ingestion
- **FAISS**: Vector similarity search for semantic code understanding
- **NetworkX**: Knowledge graph for structural relationships
- **Sentence Transformers**: Semantic embeddings generation
**Architecture**
- **Chunking & Indexing**: Large codebases split into semantic chunks with vector embeddings
- **Hybrid Search**: Combines FAISS semantic search with NetworkX graph queries
- **Tool-Based Design**: All functionality exposed as discrete MCP tools
**Key Use Cases**
**1. New Developer First-Time Setup**
**Scenario**: Developer joining ExpoLab at UC Davis, assigned to ResilientDB-Ansible
- Repository discovery and architectural summary
- Prerequisites identification (Ansible, Docker, Bazel)
- Platform-specific configuration guidance
- Real-time log monitoring and error resolution using natural language commands
- Service validation and health checks
**2. Troubleshooting During Development**
**Scenario**: Developer encountering Bazel build errors
- Error pattern analysis and root cause identification
- Repository-specific build configuration cross-reference
- Environment variable and compiler flag suggestions from repository data
- Conversational troubleshooting with Claude's context retention
**3. Code Exploration & Feature Development**
**Scenario**: Adding authentication to GraphQL API
- Code navigation using semantic search
- Architecture understanding (data flow visualization)
- Integration point identification
- Implementation guidance following project conventions
**Security & Compliance**
**Authentication**
- Token-based MCP endpoint authentication
- GitHub PAT for secure API access
- Environment-based credential management
- No secrets committed to repository
**License Compliance**
- All Python files include Apache License 2.0 header
- Documentation files include appropriate license notices
- actual .env excluded via .gitignore
**Testing & Validation**
- Local testing with token authentication
- GitHub API integration verified on public repos
- Private repository access validated with PAT
- Arrayan, Coinsensus and Debitable repositories successfully ingested and analyzed
- All 10 MCP tools tested and functional
- Knowledge graph generation validated
- Semantic search accuracy confirmed
- ResilientDB knowledge base queries working
**Authentication Requirements**
ResInsight implements a two-layer authentication system:
**1. MCP Access Token (Required for all users)**
- Each user/client needs an MCP access token to authenticate with the server
- Token must be included in request headers: `Authorization: Bearer <MCP_TOKEN>` from env variable
- Prevents unauthorized access to the MCP server endpoints
- Stored securely in server-side `.env` file
- **Action Required**: Lab administrators need to generate and distribute MCP tokens to authorized users.
**2. GitHub Personal Access Token (Server-side)**
- Server uses a GitHub PAT for API access to repositories
- Enables both public and private repository analysis with minimal scopes: `repo` (for private repos) or `public_repo` (for public only)
- Stored securely in server-side `.env` file
- **Action Required**: Configure GitHub PAT with appropriate repository access
**Dependencies**
See `requirements.txt`. Key dependencies:
```
fastmcp >= 0.1.0
requests >= 2.31.0
sentence-transformers >= 2.2.0
numpy >= 1.24.0
networkx >= 3.0
```
**Documentation**
Comprehensive README includes:
- Project overview and motivation
- Installation and configuration guide
- Tool reference with usage examples
- Security best practices
- Use case walkthroughs
**Impact**
ResInsight significantly reduces onboarding and understanding time by:
- Eliminating manual README browsing and guesswork
- Providing instant, accurate answers about repository structure
- Offering guided troubleshooting for common setup issues
- Enabling self-service exploration of complex codebases
- Preserving expert developer time for research and development
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@resilientdb.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org