CIE - Code Intelligence Engine
About
Local code analysis MCP server with 25+ tools: semantic search, call graph tracing, dependency analysis, and symbol navigation. Built with Tree-sitter and CozoDB. Supports Go, Python, JS, TS.
Details
- Author
- kraklabs
- Categories
- Developer Tools, Other, Knowledge Base, Search
Jump to
Setup
Install CIE - Code Intelligence Engine in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/kraklabs/cie
Follow the installation instructions in the repository README, then restart your MCP client.
Local code analysis MCP server with 25+ tools: semantic search, call graph tracing, dependency analysis, and symbol navigation. Built with Tree-sitter and CozoDB. Supports Go, Python, JS, TS.
20+ MCP tools that give AI agents semantic code search, call graph analysis, and endpoint discovery — 100% local, indexes 100k LOC in seconds.
In practice: Tracing a call graph through MIE's codebase, Claude Code needed 34 tool calls without CIE. With CIE, it needed 3. Results vary by query, but structured code intelligence consistently reduces agent round-trips.
Quick Start•Features•Documentation•Support
CIE indexes your codebase and provides semantic search, call graph analysis, and AI-powered code understanding through the Model Context Protocol (MCP).
- Semantic Search- Find code by meaning, not just text matching
- Call Graph Analysis- Trace execution paths including interface dispatch resolution
- MCP Native- Works seamlessly with Claude Code, Cursor, and any MCP client
- Fast- Indexes 100k LOC in seconds, queries in milliseconds
- Private- All data stays local, your code never leaves your machine
- Accurate- Keyword boosting ensures relevant results for function searches
# Ask: "Where is authentication middleware?" # Use cie_semantic_search tool via MCP
[95%] AuthMiddleware (internal/http/auth.go:42) [76%] ValidateToken (internal/auth/jwt.go:103)
Trace how execution reaches any function:
# Question: "How does main() reach database.Connect()?" # Use cie_trace_path tool
main → InitApp → SetupDatabase → database.Connect ├─ File: cmd/server/main.go:25 ├─ File: internal/app/init.go:42 └─ File: internal/database/setup.go:18
[GET] /api/v1/users → HandleGetUsers [POST] /api/v1/users → HandleCreateUser [DELETE] /api/v1/users/:id → HandleDeleteUser
Supports Go, Python, JavaScript, TypeScript, and more through Tree-sitter parsers.
curl -sSL https://raw.githubusercontent.com/kraklabs/cie/main/install.sh | sh
Manual download:Download fromGitHub Releases
cd /path/to/your/repo cie init -y # Initialize project configuration cie index # Index the codebase (works without Ollama too)
Project: your-repo-name Files: 1,234 Functions: 5,678 Types: 890 Last indexed: 2 minutes ago
Note:CIE works without Ollama -- you'll have access to 20+ tools including grep, call graph, function finder, and more. Semantic search requires embeddings from Ollama or another provider.
CIE can run as an MCP server for integration with Claude Code:
{ "mcpServers": { "cie": { "command": "cie", "args": ["--mcp"] } } }
CIE uses a YAML configuration file (.cie/project.yaml):
version: "1" project_id: my-project embedding: provider: ollama base_url: http://localhost:11434 model: nomic-embed-text
Embeddings are optional.CIE works without Ollama or any embedding provider. You get full access to all structural tools (grep, call graph, function finder, etc.). Only semantic search (cie_semantic_search) requires embeddings.
You can also configure an LLM forcie_analyzenarrative generation:
# Optional: LLM for cie_analyze narrative generation llm: enabled: true base_url: http://localhost:11434 # Ollama model: llama3 # For OpenAI: base_url: https://api.openai.com/v1, model: gpt-4o-mini
Note:Thellmsection is optional. Without it,cie_analyzereturns raw analysis data. With it configured, you get synthesized narrative summaries.
When running as an MCP server, CIE provides 20+ tools organized by category:
For detailed documentation of each tool with examples, seeTools Reference
CIE stores indexed data locally in<local_data_dir>/<project_id>/(default:~/.cie/data/<project_id>/) using embedded CozoDB with RocksDB backend. This ensures:
- Your code never leaves your machine
- Fast local queries
- Persistent index across sessions
CIE supports multiple embedding providers:
CIE uses an embedded architecture -- a single binary handles indexing, querying, and MCP serving with no external services required:
┌──────────────────────────────────────────────────────────────┐ │ Host Machine │ │ ┌──────────────────────────────────────────────────────┐ │ │ │ CLI cie │ │ │ │ - cie init → Creates .cie/project.yaml │ │ │ │ - cie index → Parses code, writes to local CozoDB │ │ │ │ - cie --mcp → Reads from local CozoDB │ │ │ │ │ │ │ │ Data: <local_data_dir>/<project>/ (RocksDB) │ │ │ └──────────────────────────────────────────────────────┘ │ │ │ │ ┌──────────────┐ (optional) │ │ │ Ollama │ For semantic search embeddings │ │ │ :11434 │ Install: brew install ollama │ │ └──────────────┘ Model: nomic-embed-text │ └──────────────────────────────────────────────────────────────┘
- CIE CLI: Single binary handles indexing, querying, and MCP serving
- CozoDB + RocksDB: Embedded database stored locally at<local_data_dir>/<project>(default~/.cie/data/<project>)
- Ollama (optional): Local embedding generation for semantic search
- Tree-sitter: Code parsing for Go, Python, JS, TS
cie/ ├── cmd/cie/ # CLI tool with init, index, query, MCP commands ├── pkg/ │ ├── ingestion/ # Tree-sitter parsers and indexing pipeline │ ├── tools/ # 20+ MCP tool implementations │ ├── llm/ # LLM provider abstractions (OpenAI, Ollama) │ ├── cozodb/ # CozoDB wrapper for Datalog queries │ └── storage/ # Storage backend interface └── docs/ # Documentation
For in-depth architecture details, seeArchitecture Guide.
# Run all tests go test ./... # Run with short flag go test -short ./... # Run integration tests with CozoDB go test -tags=cozodb ./...
For detailed testing documentation, seedocs/testing.md.
Use the CIE testing helpers for easy test setup:
import cietest "github.com/kraklabs/cie/internal/testing" func TestMyFeature(t *testing.T) { backend := cietest.SetupTestBackend(t) cietest.InsertTestFunction(t, backend, "func1", "MyFunc", "file.go", 10, 20) result := cietest.QueryFunctions(t, backend) require.Len(t, result.Rows, 1) }
# Build all commands make build-all # Format code make fmt # Run linter make lint
- Documentation:docs/
- Report Issues:GitHub Issues
- Discussions:GitHub Discussions
- Email:support@kraklabs.com
- Check thetroubleshooting guide
- Searchexisting issues
- Include CIE version:cie --version
- Provide minimal reproduction steps
Scale code intelligence across your entire organization.
CIE Enterprise brings the power of semantic code search and call graph analysis to teams of any size. Built for organizations that demand reliability, security, and collaboration.
Distributed ArchitectureDeploy CIE across your infrastructure with a Primary Hub and Edge Caches. All team members connect to the same indexed codebase with millisecond-latency queries worldwide.
Team CollaborationShare code intelligence across your entire engineering organization. One index, one source of truth—no more siloed knowledge.
CI/CD IntegrationAutomatically keep your code index up-to-date with every commit. Native integration with GitHub Actions, GitLab CI, Jenkins, and more.
High-Fidelity EmbeddingsOpenAI-powered 1536-dimension embeddings for superior semantic search accuracy. Find exactly what you're looking for, even in massive codebases.
Integrated LLMsConnect your preferred LLM provider for enhanced code analysis, architectural insights, and natural language queries about your codebase.
Priority SupportDirect access to our engineering team. SLAs, dedicated support channels, and implementation assistance.
Schedule a demo to see how CIE Enterprise can transform your team's development workflow.
CIE is free and open source under theGNU Affero General Public License v3.0(AGPL v3).
- You're building open source software
- You can release your modifications under AGPL v3
- You're okay with the copyleft requirements
Need to use CIE in a closed-source product or service? We offer commercial licenses that remove AGPL requirements.
Commercial licensing is right for you if:
- You want to use CIE in a proprietary product
- You want to offer CIE as a managed service without releasing your code
- Your organization's policies prohibit AGPL-licensed software
- You want to modify CIE without releasing your modifications
Pricing:Contactlicensing@kraklabs.comfor details.
SeeLICENSE.commercialfor more information.
Why dual licensing?This model allows us to:
- Keep CIE free for the open source community
- Ensure improvements benefit everyone through AGPL's copyleft
- Sustainably fund development through commercial licensing
- Enable enterprise adoption without legal concerns
CIE includes some third-party components with their own licenses:
- CozoDB C Headers(MPL 2.0) - SeeTHIRD_PARTY_LICENSES.mdfor details
These components are compatible with AGPL v3 and retain their original licenses.
- CozoDB- The embedded database powering CIE
- Tree-sitter- Parser generator for code analysis
- MCP- Model Context Protocol specification
This is a web browser that enables your coding agent, such as Claude Code, to visit websites on your behalf and assist you in identifying bugs or creating UI test cases.
A local-first code indexer that enhances LLMs with deep code understanding. It integrates with AI assistants via the Model Context Protocol (MCP) and supports AI-powered semantic search.
A server for managing structured project context using SQLite, with support for vector embeddings for semantic search and Retrieval Augmented Generation (RAG).
MCP of MCPs is a meta-server that merges all your MCP servers into a single smart endpoint. It gives AI agents instant tool discovery, selective schema loading, and massively cheaper execution, so you stop wasting tokens and time. With persistent tool metadata, semantic search, and direct code execution between tools, it turns chaotic multi-server setups into a fast, efficient, hallucination-free workflow. It also automatically analyzes the tools output schemas if not exist and preserves them across sessions for consistent behavior.
Persistent memory for AI coding agents with semantic search, contradiction detection, memory decay, and cross-session learning. 25 MCP tools, local-first, #1 on LongMemEval (95.4%).
An MCP server for intelligent semantic search and automatic learning within codebases, allowing AI agents to efficiently query and index project artifacts.
Stdio MCP server that exposes zkShare tools to AI clients: store encrypted context, proofs, semantic search, sharing, and sandbox calls via POST /api/v1/context with ZKSHARE_API_KEY.
Embeddings, vector search, document storage, and full-text search with the open-source AI application database
Semantic search through Dickens' classic tale. Find passages by meaning, theme, or concept - not just keywords.
An MCP server providing semantic search capabilities for APLCart data.
MCP server for Christian scholarship and research — scripture, Greek/Hebrew word data, cross-references, patristic texts, and semantic search,
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





