Token导航 LogoToken导航TokenDH.com
Code Index logo
开发工具stdio官方级别未说明来源级核验

Code Index

MCP Server

@modelcontextprotocol/inspector

Code Index MCP是一款为大型语言模型提供智能代码索引与分析服务的工具,支持多语言代码库的搜索、导航和深度分析。

工具数

13

提示词数

0

GitHub Stars

942

资源数

0
代码分析智能搜索PythonClaude代码导航Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

johnhuang316

提供方

johnhuang316

最后核验

2026/5/17 20:25

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx @modelcontextprotocol/inspector uv run code-index-mcp

详细介绍

代码索引MCP

![MCP Server](https://modelcontextprotocol.io) ![Python](https://www.python.org/) ![License](LICENSE) ![Sponsor](https://github.com/sponsors/johnhuang316)

大型语言模型的智能代码索引和分析

通过高级搜索、分析和导航功能,改变人工智能理解代码库的方式。

概述

代码索引MCP是 模型上下文协议 弥合人工智能模型和复杂代码库之间差距的服务器。它提供智能索引、高级搜索功能和详细的代码分析,帮助AI助手有效地理解和导航您的项目。

非常适合: 代码审查、重构、文档生成、调试协助和架构分析。

快速开始

🚀 推荐设置(大多数用户)

开始使用任何兼容MCP的应用程序的最简单方法:

先决条件: Python 3.10+和 紫外线

  1. 添加到MCP配置 (例如。, claude_desktop_config.json~/.claude.json):
   {
     "mcpServers": {
       "code-index": {
         "command": "uvx",
         "args": ["code-index-mcp"]
       }
     }
   }

> 可选:附加 --project-path /absolute/path/to/repoargs 因此,服务器 > 自动使用该存储库进行初始化(相当于调用 set_project_path > 启动后)。

  1. 重新启动应用程序uvx 自动处理安装和执行
  1. 开始使用 (向您的AI助手提供以下提示):
   Set the project path to /Users/dev/my-react-app
   Find all TypeScript files in this project  
   Search for "authentication" functions
   Analyze the main App.tsx file

*如果你用 --project-path,您可以跳过上面的第一个命令-服务器已经 知道项目位置。*

Codex CLI配置

如果您使用的是Anthropic的Codex CLI,请将服务器添加到 ~/.codex/config.toml. 在Windows上,该文件位于 C:\Users\\.codex\config.toml:

[mcp_servers.code-index]
type = "stdio"
command = "uvx"
args = ["code-index-mcp"]
您可以追加 --project-path C:/absolute/path/to/repoargs 列表以设置项目 启动时自动(与运行 set_project_path 工具)。

在Windows上, uvx 需要标准配置文件目录存在。 将环境覆盖保持在同一块中,以便MCP可靠启动:

env = {
  HOME = "C:\\Users\\",
  APPDATA = "C:\\Users\\\\AppData\\Roaming",
  LOCALAPPDATA = "C:\\Users\\\\AppData\\Local",
  SystemRoot = "C:\\Windows"
}

Linux和macOS已经公开了所需的XDG路径和 HOME,因此您通常可以省略 env 桌子在那里。 仅当在受限容器内运行CLI时,才添加覆盖。

FastMCP和发现清单

  • fastmcp run fastmcp.json 通过以下方式启动服务器 FastMCP 随着

正确的源入口点和依赖元数据。通过 --project-path (或致电 set_project_path 启动后的工具),以便索引针对正确的存储库启动。

  • 送达或复制 .well-known/mcp.json 共享符合标准的MCP清单。客户认为

支持 .well-known 惯例(例如,Claude Desktop、Codex CLI)可以导入此文件 直接创建配置,而不是手动创建配置。

  • 发布 .well-known/mcp.llmfeed.json 当您想公开更丰富的LLM Feed元数据时。

它引用了相同的内容 code-index 服务器定义加上文档/源链接 帮助注册表自动呈现描述、标签和功能。

共享清单时,提醒消费者提供 --project-path (或致电 set_project_path)因此,服务器对预期的存储库进行索引。

典型使用案例

代码审查:“使用旧API查找所有位置”\ 重构帮助:“此函数在哪里调用?”\ 学习项目:“向我展示这个React项目的主要组件”\ 调试:“搜索所有与错误处理相关的代码”

主要特点

🔍 智能搜索与分析

  • 双重战略架构:针对10种核心语言的专门树型解析,针对50多种文件类型的回退策略
  • 直接树保姆集成:专用语言没有正则表达式回退-快速失败,错误明显
  • 高级搜索:自动检测并使用最佳可用工具(ugrep、ripgrep、ag或grep)
  • 通用文件支持:从高级AST解析到基本文件索引的全面覆盖
  • 文件分析:运行后深入了解结构、导入、类、方法和复杂性度量 build_deep_index

🗂️ 多语言支持

  • 10种树型AST解析语言:Python、JavaScript、TypeScript、Java、Kotlin、C#、Go、Objective-C、Zig、Rust
  • 50多种具有回退策略的文件类型:C/C++、Ruby、PHP和所有其他编程语言
  • 文档和配置文件:Markdown、JSON、YAML、XML,并进行适当处理
  • Web前端:Vue、React、Svelte、HTML、CSS、SCSS
  • Java Web和构建:JSP/标记文件(.jsp, .jspx, .jspf, .tag, .tagx),Grails/GSP(.gsp)Gradle和Groovy构建(.gradle, .groovy), .properties,以及协议缓冲区(.proto)
  • 数据库:SQL变体、NoSQL、存储过程、迁移
  • 配置:JSON、YAML、XML、Markdown
  • 查看完整列表

实时监控和自动刷新

  • 文件监视器:文件更改时自动更新索引
  • 跨平台:本机操作系统文件系统监控
  • 智能处理:批量快速更改以防止过度重建
  • 浅层索引刷新:监视文件更改并保持文件列表最新;需要符号元数据时运行深度重建

性能和效率

  • 树保姆AST解析:用于精确符号提取的本机语法解析
  • 持久缓存:存储索引以实现闪电般快速的后续访问
  • 智能过滤:智能排除构建目录和临时文件
  • 内存效率高:针对大型代码库进行了优化
  • 直接依赖关系:无回退机制-快速失败,错误消息清晰

支持的文件类型

📁 Programming Languages (Click to expand)

具有专门树保姆策略的语言:

  • python (.py, .pyw)-具有类/方法提取和调用跟踪的完整AST分析
  • JavaScript (.js, .jsx, .mjs, .cjs)-ES6+类和函数解析树
  • TypeScript (.ts, .tsx)-使用接口完成类型感知符号提取
  • Java (.java)-完整的类层次结构、方法签名和调用关系
  • 科特林 (.kt, .kts)-使用方法和调用关系进行包感知符号提取
  • C (.cs)-使用调用关系进行命名空间感知类型/成员提取
  • (.go)-结构方法、接收器类型和功能分析
  • (.rs)-函数、模块感知名称、impl方法、结构/枚举/特征和基本调用关系
  • 内存管理 (.m, .mm)-用+/-符号区分类/实例方法
  • 之字形 (.zig, .zon)-使用树型AST进行函数和结构解析

所有其他编程语言: 所有其他编程语言都使用 后备解析策略 它提供基本的文件索引和元数据提取。这包括:

  • 系统和低级别: C/C++(.c, .cpp, .h, .hpp)
  • 面向对象: Scala(.scala),斯威夫特(.swift)
  • 脚本和动态: 红宝石(.rb),PHP(.php),壳牌(.sh, .bash)
  • 40多种文件类型 -所有这些都通过基本索引的回退策略进行处理

🌐 Web & Frontend (Click to expand)

框架和库:

  • 视图(.vue)
  • 斯维尔特(.svelte)
  • 星的.astro)

造型:

  • CSS(.css, .scss, .less, .sass, .stylus, .styl)
  • HTML(.html)

模板:

  • 把手(.hbs, .handlebars)
  • EJS (.ejs)
  • 帕格(.pug)
  • FreeMarker(.ftl)
  • 芥末(.mustache)
  • 液体(.liquid)
  • ERB(.erb)

🗄️ Database & SQL (Click to expand)

SQL变体:

  • 标准SQL(.sql, .ddl, .dml)
  • 数据库特定(.mysql, .postgresql, .psql, .sqlite, .mssql, .oracle, .ora, .db2)

数据库对象:

  • 程序和功能(.proc, .procedure, .func, .function)
  • 视图和触发器(.view, .trigger, .index)

迁移和工具:

  • 迁移文件(.migration, .seed, .fixture, .schema)
  • 特定工具(.liquibase, .flyway)

NoSQL和现代:

  • 图形与查询(.cql, .cypher, .sparql, .gql)

📄 Documentation & Config (Click to expand)

  • Markdown(.md, .mdx)
  • 配置(.json, .xml, .yml, .yaml, .properties)

🛠️ 开发设置

为了促进或地方发展:

  1. 克隆并安装:
   git clone https://github.com/johnhuang316/code-index-mcp.git
   cd code-index-mcp
   uv sync
  1. 配置本地开发:
   {
     "mcpServers": {
       "code-index": {
         "command": "uv",
         "args": ["run", "code-index-mcp"]
       }
     }
   }
  1. 使用MCP检查器进行调试:
   npx @modelcontextprotocol/inspector uv run code-index-mcp

Alternative: Manual pip Installation

如果您更喜欢传统的pip管理:

pip install code-index-mcp

然后配置:

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

可用工具

🏗️ 项目管理

工具说明
set_project_path初始化项目目录的索引
refresh_index文件更改后重建浅层文件索引
build_deep_index生成用于深度分析的完整符号索引
get_settings_info查看当前项目配置和状态

*跑 build_deep_index 当您需要符号级数据时;默认的浅索引支持快速文件发现。*

🔍 搜索与发现

工具说明
search_code_advanced默认匹配文字的智能搜索,可选 regex=True、模糊匹配、文件过滤和分页结果(默认每页10个);正则表达式模式需要一个本机搜索工具,因为基本回退仅限于文字
find_files使用glob模式定位文件(例如。, **/*.py)
get_file_summary分析文件结构、函数、导入和复杂性(需要深度索引)

🔄 监控和自动刷新

工具说明
get_file_watcher_status检查文件监视器状态和配置
configure_file_watcher启用/禁用自动刷新和配置设置

🛠️ 系统和维护

工具说明
create_temp_directory为索引数据设置存储目录
check_temp_directory验证索引存储位置和权限
clear_settings重置所有缓存的数据和配置
refresh_search_tools重新检测可用的搜索工具(ugrep、ripgrep等)

使用示例

🎯 快速启动工作流

1.初始化您的项目

Set the project path to /Users/dev/my-react-app

*自动为代码库建立索引并创建可搜索的缓存*

2.探索项目结构

Find all TypeScript component files in src/components

*使用: find_files 按照模式 src/components/**/*.tsx*

3.分析关键文件

Give me a summary of src/api/userService.ts

*使用: get_file_summary 显示功能、导入和复杂性* *提示:跑步 build_deep_index 首先,如果你得到一个 needs_deep_index 回应。*

🔍 高级搜索示例

Code Pattern Search

Search for all function calls matching "get.*Data" using `regex=True`

*发现: getData(), getUserData(), getFormData()等等。正则表达式搜索是可选的;安装本机搜索工具并使用 regex=True 因为基本回退仅保持字面意思。*

Fuzzy Function Search

Find authentication-related functions with fuzzy search for 'authUser'

*比赛: authenticateUser, authUserToken, userAuthCheck等等。*

Language-Specific Search

Search for "API_ENDPOINT" only in Python files

*使用: search_code_advanced 通过文字匹配和 file_pattern: "*.py" (默认为10场比赛;使用 max_results 扩大或 start_index 到页面)*

Auto-refresh Configuration

Configure automatic index updates when files change

*使用: configure_file_watcher 启用/禁用监控并设置去抖动定时*

Project Maintenance

I added new components, please refresh the project index

*使用: refresh_index 更新可搜索缓存*

故障排除

🔄 自动刷新不起作用

如果文件更改时自动索引更新不起作用,请尝试:

  • pip install watchdog (可能解决环境隔离问题)
  • 使用手动刷新:调用 refresh_index 更改文件后的工具
  • 检查文件监视器状态:使用 get_file_watcher_status 验证监控是否处于活动状态

macOS文件监视器选项

默认的FSEvents观察器适用于大多数项目。如果您遇到问题,可以通过以下方式切换到其他观察者 configure_file_watcher:

  • "auto" (默认):平台默认值(macOS上的FSEvents)
  • "kqueue":Kqueue观察器(macOS/BSD)
  • "fsevents":强制FSEvents(仅限macOS)
  • "polling":跨平台轮询回退

注意:Kqueue为每个关注的文件打开一个文件描述符。对于使用kqueue的大型项目,您可能需要增加限制: ulimit -n 10240

发展与贡献

🔧 从源代码构建

git clone https://github.com/johnhuang316/code-index-mcp.git
cd code-index-mcp
uv sync
uv run code-index-mcp

🐛 调试

npx @modelcontextprotocol/inspector uvx code-index-mcp

🤝 贡献

欢迎投稿!请随时提交拉取请求。

______________________________________________________________________

📜 许可证

MIT许可证

🌐 翻译

目录标签

目录标签

代码分析智能搜索PythonClaude代码导航本地部署AI辅助开发多语言支持

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

local-only

来源包(packageName,安装包名)

@modelcontextprotocol/inspector

工具数量(toolCount,工具数)

13

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononelocal-only

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP