Cicada
CICADA is an MCP server that provides structured code indexing for AI code assistants. Through AST-level indexing, call site tracking, and semantic search, it provides efficient context compression for Elixir, Python, and Erlang code repositories, reducing token usage and improving the quality of code understanding.
2.5 points
4.7K

What is CICADA?

CICADA is a context compression tool specifically designed for AI code assistants. It solves the problem of AI assistants wasting a large amount of context space for blind searches when analyzing code. Through AST-level code indexing, complete call site tracking, and semantic search functions, CICADA enables AI to obtain a more comprehensive understanding of code with fewer token consumptions.

How to use CICADA?

CICADA integrates with various AI code assistants through the Model Context Protocol (MCP). After installation, it automatically indexes your code repository and provides structured responses when the AI assistant needs to query code information. You can directly ask code-related questions in the AI assistant, and CICADA will return accurate and concise answers.

Applicable scenarios

CICADA is particularly suitable for the following scenarios: 1. Exploration and understanding of large code repositories 2. Code refactoring and dependency analysis 3. New developers quickly familiarizing themselves with the code repository 4. AI-assisted code review 5. Dead code detection and cleanup

Main features

AST-level indexing
Deeply parse the abstract syntax tree of the code, extract the definitions, signatures, specifications, and documentation comments of modules, functions, and classes, and establish a complete code structure index.
Complete call site tracking
Track all function calls, alias references, imports, and dynamic references, provide a complete code dependency graph, and support bidirectional dependency analysis.
Semantic search
Intelligent search based on keyword extraction, capable of finding relevant code based on concepts rather than literal matching. For example, searching for 'authentication' can find the verify_credentials function.
Git and PR traceability
Integrate Git history and GitHub PR information, capable of tracing the modification history of code, PR discussions, and review comments, helping to understand the background of code changes.
Dead code detection
Intelligently identify potentially unused functions and code, providing three confidence levels: high, medium, and low, to help safely clean up code.
Multi-language support
Automatically detect and support Elixir, Python, Erlang, and TypeScript projects, providing a unified query interface and consistent response format.
Automatic monitoring mode
Monitor file changes in real-time and automatically incrementally re-index to ensure that the index is always synchronized with the latest code without manual triggering.
Advantages
Improved context efficiency: Reduce waiting time by 50% and save 70% of token usage.
Intelligent code discovery: Semantic search enables AI to understand the intent of code rather than just match literals.
Fully local: All indexing and processing are performed locally to protect code privacy.
Zero-configuration integration: One-click installation allows integration with mainstream AI code assistants.
Incremental indexing: Only re-index changed files, significantly improving efficiency.
Structured responses: Return precise code snippets rather than complete files, reducing context pollution.
Limitations
Time required for initial indexing: The initial indexing of large code repositories may take several minutes.
Memory usage: Indexing large code repositories requires a certain amount of memory space.
Limited language support: Currently, it mainly supports Elixir and Python, and support for other languages is still being improved.
Requires a local environment: It must be installed and run in the development environment.
Python indexing depends on Node.js: Python projects require a Node.js environment to run the SCIP indexer.

How to use

Install the uv tool
If uv is not installed yet, you need to install this Python package management tool first.
Install the CICADA MCP server
Use uv to install the CICADA MCP server.
Enter the project directory and configure
Enter your code project directory and select the corresponding configuration command according to the AI assistant you are using.
Start using
After configuration is complete, you can directly ask code-related questions in the AI assistant.

Usage examples

Explore a new code repository
When you need to quickly understand the structure and main components of a new code repository.
Find function call relationships
When you need to understand how a function is used in the code repository.
Dependency analysis before code refactoring
Before modifying an important function, understand its dependencies and scope of influence.
Understand code change history
When you need to understand the background and reasons for code modifications.
Clean up unused code
Identify potentially unused functions during the code cleanup process.

Frequently asked questions

Will CICADA collect my code data?
Which programming languages does CICADA support?
How long does it take to index a large code repository?
How to update the index to reflect code changes?
Will CICADA affect my development environment?
What conditions are required for the PR traceability function?
Why does Python indexing require Node.js?
How to uninstall CICADA?

Related resources

GitHub repository
CICADA's source code, issue tracking, and contribution guidelines.
MCP tool reference documentation
Detailed description of MCP tool parameters and output formats.
Workflow examples
Examples of actual usage scenarios and best practices.
Model Context Protocol official website
Official documentation and specifications of the MCP protocol.
Change log
Version update records and function changes of CICADA.

Installation

Copy the following command to your Client for configuration
{
  "mcpServers": {
    "cicada": {
      "command": "cicada-mcp",
      "args": ["--watch"],
      "env": {
        "CICADA_CONFIG_DIR": "/home/user/.cicada/projects/<hash>"
      }
    }
  }
}
Note: Your key is sensitive information, do not share it with anyone.

Alternatives

C
Claude Context
Claude Context is an MCP plugin that provides in - depth context of the entire codebase for AI programming assistants through semantic code search. It supports multiple embedding models and vector databases to achieve efficient code retrieval.
TypeScript
5.1K
5 points
A
Acemcp
Acemcp is an MCP server for codebase indexing and semantic search, supporting automatic incremental indexing, multi-encoding file processing, .gitignore integration, and a Web management interface, helping developers quickly search for and understand code context.
Python
9.1K
5 points
B
Blueprint MCP
Blueprint MCP is a chart generation tool based on the Arcade ecosystem. It uses technologies such as Nano Banana Pro to automatically generate visual charts such as architecture diagrams and flowcharts by analyzing codebases and system architectures, helping developers understand complex systems.
Python
8.3K
4 points
M
MCP Agent Mail
MCP Agent Mail is a mail - based coordination layer designed for AI programming agents, providing identity management, message sending and receiving, file reservation, and search functions, supporting asynchronous collaboration and conflict avoidance among multiple agents.
Python
8.6K
5 points
M
MCP
The Microsoft official MCP server provides search and access functions for the latest Microsoft technical documentation for AI assistants
13.1K
5 points
A
Aderyn
Aderyn is an open - source Solidity smart contract static analysis tool written in Rust, which helps developers and security researchers discover vulnerabilities in Solidity code. It supports Foundry and Hardhat projects, can generate reports in multiple formats, and provides a VSCode extension.
Rust
8.7K
5 points
D
Devtools Debugger MCP
The Node.js Debugger MCP server provides complete debugging capabilities based on the Chrome DevTools protocol, including breakpoint setting, stepping execution, variable inspection, and expression evaluation.
TypeScript
9.0K
4 points
S
Scrapling
Scrapling is an adaptive web scraping library that can automatically learn website changes and re - locate elements. It supports multiple scraping methods and AI integration, providing high - performance parsing and a developer - friendly experience.
Python
10.9K
5 points
M
Markdownify MCP
Markdownify is a multi-functional file conversion service that supports converting multiple formats such as PDFs, images, audio, and web page content into Markdown format.
TypeScript
28.6K
5 points
N
Notion Api MCP
Certified
A Python-based MCP Server that provides advanced to-do list management and content organization functions through the Notion API, enabling seamless integration between AI models and Notion.
Python
16.6K
4.5 points
G
Gitlab MCP Server
Certified
The GitLab MCP server is a project based on the Model Context Protocol that provides a comprehensive toolset for interacting with GitLab accounts, including code review, merge request management, CI/CD configuration, and other functions.
TypeScript
17.6K
4.3 points
D
Duckduckgo MCP Server
Certified
The DuckDuckGo Search MCP Server provides web search and content scraping services for LLMs such as Claude.
Python
55.5K
4.3 points
F
Figma Context MCP
Framelink Figma MCP Server is a server that provides access to Figma design data for AI programming tools (such as Cursor). By simplifying the Figma API response, it helps AI more accurately achieve one - click conversion from design to code.
TypeScript
52.5K
4.5 points
U
Unity
Certified
UnityMCP is a Unity editor plugin that implements the Model Context Protocol (MCP), providing seamless integration between Unity and AI assistants, including real - time state monitoring, remote command execution, and log functions.
C#
23.5K
5 points
M
Minimax MCP Server
The MiniMax Model Context Protocol (MCP) is an official server that supports interaction with powerful text-to-speech, video/image generation APIs, and is suitable for various client tools such as Claude Desktop and Cursor.
Python
36.7K
4.8 points
C
Context7
Context7 MCP is a service that provides real-time, version-specific documentation and code examples for AI programming assistants. It is directly integrated into prompts through the Model Context Protocol to solve the problem of LLMs using outdated information.
TypeScript
76.1K
4.7 points
AIBase
Zhiqi Future, Your AI Solution Think Tank
© 2025AIBase