Kimi Project Intelligence MCP
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Kimi Project Intelligence MCPFind where user authentication is implemented in my project"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Kimi Project Intelligence MCP (Kimi-PIMCP) v0.2.0 ๐
A Model Context Protocol (MCP) server for Kimi-CLI that provides semantic indexing, intelligent context retrieval, and dynamic skill selection for enhanced code assistance.
โจ Features
Core Features
Semantic Indexing - Index projects using ML embeddings (sentence-transformers)
Intelligent Retrieval - Find relevant code with cosine similarity + MMR for diversity
Skill Routing - Automatically detect user intent and select optimal skills
Caveman Compression - Heuristic-based text compression for token optimization
MCP Protocol - Full compatibility with Kimi-CLI via stdio JSON-RPC
New in v0.2.0
Incremental Indexing - Only reindex changed files (10x faster reindexing)
Query Caching - LRU cache for frequently used queries
File Watcher - Auto-reindex when files change
Dependency Graph - Analyze import relationships between files
Git Integration - Index only modified files vs HEAD
Code Summarization - Auto-summarize code chunks
Similar Code Detection - Find duplicate/similar code blocks
REST API - HTTP API for external integrations
Web UI - Beautiful web interface for managing indexes
Related MCP server: CodeAlive MCP
๐ Architecture
kimi-pimcp/
โโโ src/
โ โโโ indexer.py # Semantic indexing with embeddings (OPTIMIZED)
โ โโโ retriever.py # Context retrieval with MMR + caching
โ โโโ compressor.py # Caveman text compression with tiktoken
โ โโโ server.py # MCP stdio server (multi-project support)
โ โโโ file_watcher.py # File change monitoring
โ โโโ dependency_graph.py # Import/dependency analysis
โ โโโ git_integration.py # Git integration for incremental updates
โ โโโ code_summarizer.py # Code summarization and duplicate detection
โ โโโ rest_api.py # HTTP REST API
โ โโโ web_ui.py # Web interface
โ โโโ skills/
โ โโโ base.py # Base skill classes
โ โโโ router.py # Intent classification
โ โโโ prompts/ # System prompts
โโโ data/datasets/ # Training datasets
โโโ tests/ # Unit tests
โโโ notebooks/ # Validation notebooks
โโโ docs/ # Documentation๐ Installation
Linux/Mac
chmod +x install.sh
./install.shWindows
.\install.ps1Manual Installation
# Clone the repository
git clone <repository-url>
cd kimi-pimcp
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Pre-download models
python -c "from sentence_transformers import SentenceTransformer; SentenceTransformer('sentence-transformers/all-MiniLM-L6-v2')"๐ป Usage
Running the MCP Server
# Start the MCP server
python src/server.py
# Or use the installed command
kimi-pimcpThe server communicates via stdin/stdout using JSON-RPC 2.0 protocol.
Running the REST API
# Start the REST API server
python src/rest_api.py --host 0.0.0.0 --port 8000
# With auto-reload (development)
python src/rest_api.py --reloadThe API will be available at http://localhost:8000
Running the Web UI
# Start the web UI server
python src/web_ui.pyThen open http://localhost:8080 in your browser.
๐ ๏ธ Available Tools
Core Tools
1. Initialize Index
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "initialize_index",
"arguments": {
"project_path": "/path/to/project",
"force_reindex": false
}
}
}2. Query Context
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "query_context",
"arguments": {
"query": "authenticate user",
"top_k": 5,
"filter_ext": [".py", ".js"],
"use_mmr": true
}
}
}3. Select Skill
{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "select_skill",
"arguments": {
"query": "fix login bug"
}
}
}4. Compress Output
{
"jsonrpc": "2.0",
"id": 4,
"method": "tools/call",
"params": {
"name": "compress_output",
"arguments": {
"text": "Please help me fix this bug...",
"level": "full"
}
}
}New Tools in v0.2.0
5. Get Query History
{
"jsonrpc": "2.0",
"id": 5,
"method": "tools/call",
"params": {
"name": "get_query_history",
"arguments": {
"limit": 10
}
}
}6. Switch Project
{
"jsonrpc": "2.0",
"id": 6,
"method": "tools/call",
"params": {
"name": "switch_project",
"arguments": {
"project_path": "/path/to/other/project"
}
}
}7. Get Dependencies
{
"jsonrpc": "2.0",
"id": 7,
"method": "tools/call",
"params": {
"name": "get_dependencies",
"arguments": {
"filepath": "/path/to/file.py"
}
}
}8. Find Similar Code
{
"jsonrpc": "2.0",
"id": 8,
"method": "tools/call",
"params": {
"name": "find_similar_code",
"arguments": {
"filepath": "/path/to/file.py"
}
}
}9. Summarize Chunk
{
"jsonrpc": "2.0",
"id": 9,
"method": "tools/call",
"params": {
"name": "summarize_chunk",
"arguments": {
"content": "def hello(): print('world')",
"chunk_type": "function",
"language": "python"
}
}
}10. Export/Import Index
{
"jsonrpc": "2.0",
"id": 10,
"method": "tools/call",
"params": {
"name": "export_index",
"arguments": {
"output_path": "/path/to/export"
}
}
}๐ฏ Skills
Skill | Description | Use Cases |
debugger | Debug code issues | Errors, exceptions, crashes |
architect | System design | Architecture, patterns, scalability |
explainer | Explain code/concepts | Documentation, understanding |
tester | Testing & QA | Unit tests, integration tests |
caveman | Concise responses | Token-optimized output |
โ๏ธ Configuration
Edit config.yaml to customize:
models:
embedding_model: "sentence-transformers/all-MiniLM-L6-v2"
use_cross_encoder: true
indexer:
supported_extensions: [".py", ".js", ".ts"]
exclude_dirs: ["node_modules", ".git"]
max_file_size_mb: 10
compressor:
default_level: "auto"
performance:
query_cache_size: 100
model_cache_size: 2๐ Performance Targets
Operation | Target | v0.1.0 | v0.2.0 |
Indexing | <100ms/file | ~50ms | ~30ms (incremental) |
Query | <200ms | ~100ms | ~50ms (cached) |
Classification | <10ms | ~5ms | ~3ms |
Compression | <5ms | ~2ms | ~1ms |
Memory | <500MB | ~300MB | ~250MB |
๐งช Testing
# Run unit tests
python -m pytest tests/ -v
# Run with coverage
python -m pytest tests/ --cov=src --cov-report=html
# Run validation notebook
jupyter notebook notebooks/validation.ipynb๐ REST API Endpoints
Endpoint | Method | Description |
| GET | Health check |
| POST | Index a project |
| GET | Get indexing status |
| POST | Search code |
| POST | Compress text |
| POST | Detect skill |
| GET | List skills |
| GET | Get all stats |
| GET | Get file dependencies |
| GET | Dependency graph stats |
| GET | Git status |
| GET | Git changes |
| POST | Clear all caches |
๐ API Reference
Indexer Module
from indexer import ProjectIndexer, get_indexer
indexer = get_indexer(project_path="/path/to/project")
stats = indexer.index_project("/path/to/project")
print(f"Indexed {stats['files_indexed']} files")
print(f"Skipped {stats['files_skipped']} unchanged files")Retriever Module
from retriever import ContextRetriever, get_retriever
retriever = get_retriever()
retriever.load_index("/path/to/project")
results = retriever.query("authenticate user", top_k=5)
# Check cache stats
print(retriever.get_stats()['cache'])File Watcher
from file_watcher import ProjectFileWatcher
def on_change(event):
print(f"File {event.change_type.value}: {event.filepath}")
watcher = ProjectFileWatcher("/path/to/project", on_change)
watcher.start()Dependency Graph
from dependency_graph import DependencyGraph
graph = DependencyGraph("/path/to/project")
graph.build()
# Get dependencies
deps = graph.get_dependencies("/path/to/file.py")
dependents = graph.get_dependents("/path/to/file.py")
# Find circular dependencies
cycles = graph.find_circular_dependencies()Git Integration
from git_integration import GitIntegration
git = GitIntegration("/path/to/project")
# Get changed files since last commit
changes = git.get_changed_files_since("HEAD~1")
files_to_index, files_to_remove = git.get_files_to_index("HEAD~1")๐ค Contributing
Fork the repository
Create a feature branch (
git checkout -b feature/amazing-feature)Make your changes
Add tests
Submit a pull request
๐ License
MIT License - see LICENSE file for details.
๐ Acknowledgments
sentence-transformers for embeddings
FAISS for vector search
scikit-learn for classification
watchdog for file watching
FastAPI for REST API
This server cannot be deployed
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yoโฆ
A Model Context Protocol server for Wix AI tools
The Cortex MCP server provides read-only access to real-time engineering context from the Cortex developer portal, allowing AI coding assistants to answer natural language questions about your organization's catalog (microservices, libraries, domains, teams, infrastructure), scorecards (engineering standards and best practices), initiatives (goals and deadlines), and Engineering Intelligence metrics. It includes tools for querying documentation, tracking personal entities, and accessing AI-assisted insights across the entire Cortex ecosystem.
The Buildkite MCP server exposes Buildkite product data (pipelines, builds, jobs, and test data) to AI tools, editors, and agents through the Model Context Protocol. It provides capabilities including pipeline creation and management, build monitoring with specialized tools like 'wait_for_build', efficient log querying using Apache Parquet conversion and caching, and OAuth-based authentication for both read-write and read-only access to Buildkite's REST API.
Related MCP Servers
- FlicenseDqualityDmaintenanceA comprehensive Model Context Protocol server for advanced code analysis that provides tools for syntax analysis, dependency visualization, and AI-assisted development workflow support.287-

CodeAlive MCPofficial
AlicenseNot gradedqualityAmaintenanceA Model Context Protocol server that enhances AI agents by providing deep semantic understanding of codebases, enabling more intelligent interactions through advanced code search and contextual awareness.90MIT- AlicenseNot gradedqualityFmaintenanceA powerful Model Context Protocol server that creates intelligent graph representations of your codebase with comprehensive semantic analysis capabilities, supporting 11 languages and 26 MCP methods.13 npm122MIT
- AlicenseAqualityBmaintenanceA semantic code context server that connects your local repository to AI assistants via the Model Context Protocol, enabling dynamic codebase exploration without copy-pasting.523 npm3MIT