Skip to content

A Model Context Protocol (MCP) server that helps large language models index, search, and analyze code repositories with minimal setup

License

Notifications You must be signed in to change notification settings

johnhuang316/code-index-mcp

Repository files navigation

Code Index MCP

MCP Server Python License

A Model Context Protocol server for code indexing, searching, and analysis.

What is Code Index MCP?

Code Index MCP is a specialized MCP server that provides intelligent code indexing and analysis capabilities. It enables Large Language Models to interact with your code repositories, offering real-time insights and navigation through complex codebases.

This server integrates with the Model Context Protocol (MCP), a standardized way for AI models to interact with external tools and data sources.

Key Features

  • Project Indexing: Recursively scans directories to build a searchable index of code files
  • Code Search: Find patterns, function definitions, and references across your codebase
  • File Analysis: Get detailed insights about file structure, imports, and complexity
  • Smart Filtering: Automatically ignores build directories, dependencies, and non-code files
  • Persistent Storage: Caches indexes for improved performance across sessions

Supported File Types

The server supports multiple programming languages and file extensions including:

  • Python (.py)
  • JavaScript/TypeScript (.js, .ts, .jsx, .tsx)
  • Java (.java)
  • C/C++ (.c, .cpp, .h, .hpp)
  • C# (.cs)
  • Go (.go)
  • Ruby (.rb)
  • PHP (.php)
  • Swift (.swift)
  • Kotlin (.kt)
  • Rust (.rs)
  • Scala (.scala)
  • Shell scripts (.sh, .bash)
  • Web files (.html, .css, .scss)
  • Documentation/Config (.md, .json, .xml, .yml, .yaml)

Installation

Prerequisites

  • Python 3.8 or higher
  • uv package manager (recommended)

Using uvx (recommended)

The easiest way to install and use code-index-mcp is with uvx:

uvx code-index-mcp

Using pip

Alternatively, you can install via pip:

pip install code-index-mcp

After installation, you can run it as a module:

python -m code_index_mcp

Integration with Claude Desktop

Add this to your Claude settings (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "code-index": {
      "command": "uvx",
      "args": [
        "code-index-mcp"
      ]
    }
  }
}

After adding the configuration, restart Claude Desktop and the Code Index MCP tools will be available.

Available Tools

Core Tools

  • set_project_path: Sets the base project path for indexing.
  • search_code: Searches for code matches within the indexed files.
  • find_files: Finds files in the project matching a given pattern.
  • get_file_summary: Gets a summary of a specific file, including line count, functions, imports, etc.
  • refresh_index: Refreshes the project index.
  • get_settings_info: Gets information about the project settings.

Utility Tools

  • create_temp_directory: Creates the temporary directory used for storing index data.
  • check_temp_directory: Checks the temporary directory used for storing index data.
  • clear_settings: Clears all settings and cached data.

Example Usage with Claude

Here are some examples of how to use Code Index MCP with Claude:

Setting a Project Path

Please set the project path to C:\Users\username\projects\my-python-project

Searching for Code Patterns

Search the code for all occurrences of "def process_data" in Python files

Getting a File Summary

Give me a summary of the main.py file in the project

Finding All Files of a Certain Type

Find all JavaScript files in the project

Development

Building from Source

  1. Clone the repository:
git clone https://github.com/username/code-index-mcp.git
cd code-index-mcp
  1. Install dependencies:
uv sync
  1. Run the server locally:
uv run code_index_mcp

Debugging

You can use the MCP inspector to debug the server:

npx @modelcontextprotocol/inspector uvx code-index-mcp

License

MIT License

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Languages

About

A Model Context Protocol (MCP) server that helps large language models index, search, and analyze code repositories with minimal setup

Resources

License

Stars

Watchers

Forks

Packages

No packages published