by CometixAI
Cometix Indexer — local code indexer for fast semantic code search. Index workspaces and run incremental searches with a
Provides semantic code search capabilities by indexing local workspaces through Cursor's backend RepositoryService. Enables fast semantic searches across your codebase with automatic synchronization.
Cometix Indexer is an official MCP server published by CometixAI that provides AI assistants with tools and capabilities via the Model Context Protocol. Cometix Indexer — local code indexer for fast semantic code search. Index workspaces and run incremental searches with a It is categorized under developer tools.
You can install Cometix Indexer in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
MIT
Cometix Indexer is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
Add new capabilities to Claude beyond text generation
Example
Access external data sources, execute code, interact with tools and services
Transform Claude from chatbot to action-taking agent
Provide Claude with access to relevant context and data
Example
Load project documentation, access knowledge bases, query databases
Get more accurate, context-aware responses
Automate multi-step workflows combining AI and external tools
Example
Research → Summarize → Create document → Send notification
Complete complex tasks end-to-end without manual steps
Share your MCP server with the developer community
According to our notes, Cometix Indexer benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.
Strong directory entry: Cometix Indexer surfaces stars and publisher context so we could sanity-check maintenance before adopting.
Cometix Indexer is a well-scoped MCP server in the explainx.ai directory — install snippets and categories matched our Claude Code setup.
We wired Cometix Indexer into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
Cometix Indexer reduced integration guesswork — categories and install configs on the listing matched the upstream repo.
Cometix Indexer is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.
Useful MCP listing: Cometix Indexer is the kind of server we cite when onboarding engineers to host + tool permissions.
Useful MCP listing: Cometix Indexer is the kind of server we cite when onboarding engineers to host + tool permissions.
We evaluated Cometix Indexer against two servers with overlapping tools; this profile had the clearer scope statement.
Cometix Indexer reduced integration guesswork — categories and install configs on the listing matched the upstream repo.
showing 1-10 of 30
语义代码搜索的本地索引与检索服务。该项目实现了一个基于 Model Context Protocol(MCP)的服务端,封装了对 Cursor 后端 RepositoryService 的建库、同步与搜索流程,通过两类 MCP 工具对外提供能力:项目索引(index_project)与语义搜索(codebase_search)。
{
"mcpServers": {
"cometix-indexer": {
"command": "npx",
"args": [
"-y",
"--package=git+https://github.com/CometixAI/Cometix-Indexer.git",
"cometix-indexer",
"start"
],
"env": {
"CURSOR_AUTH_TOKEN": "",
"CURSOR_BASE_URL": "https://api2.cursor.sh"
}
}
}
}
{
"mcpServers": {
"cometix-indexer": {
"command": "npm",
"args": [
"--prefix",
"<path>",
"run",
"start"
],
"env": {
"CURSOR_AUTH_TOKEN": "",
"CURSOR_BASE_URL": "https://api2.cursor.sh"
}
}
}
}
index_project
{ workspacePath: string; verbose?: boolean }verbose=true 时,额外返回本轮上传的相对路径文件列表。{ codebaseId, uploaded, batches, nextSyncAt }codebase_search
{ query: string; paths_include_glob?: string; paths_exclude_glob?: string; max_results?: number }{ total, hits: Array<{ path, score, startLine, endLine }> }示例(概念性):
{
"name": "index_project",
"arguments": { "workspacePath": "E:/project" }
}
{
"name": "codebase_search",
"arguments": { "query": "What is the xxx paper", "paths_include_glob": "src/**/*.rs", "paths_exclude_glob": "**/tests/**", "max_results": 50 }
}
src/index.ts:进程入口。解析 CLI/环境变量,创建 MCP Server 并接入 stdio 传输。src/server.ts:注册 MCP 工具:index_project 与 codebase_search。src/services/repositoryIndexer.ts:索引与同步核心逻辑(初次建库、分批上传、增量同步、定时器)。src/services/codeSearcher.ts:搜索逻辑(预同步、远端搜索、结果解密与规整)。src/services/fileWatcher.ts:文件变更监听,标记 pendingChanges。src/services/stateManager.ts:工作区状态持久化(state.json)。src/crypto/pathEncryption.ts:路径分段加解密方案与 Windows/Posix 互转。src/client/proto.ts:加载 proto/repository_service.proto 并以 protobuf 编解码发送 HTTP 请求。src/client/cursorApi.ts:封装调用的具体 RepositoryService 接口。src/utils/env.ts:配置解析、默认参数与请求头。src/utils/fs.ts:忽略规则、文件遍历与可嵌入文件清单读取。src/utils/semaphore.ts:并发控制与带重试的信号量。node_modules/、.git/、dist/ 等)并生成默认清单 embeddable_files.txt(每个工作区独立存放)。@anysphere/file-service 的 MerkleClient 构建目录 Merkle 树,获取 rootHash 与 simhash。pathKey),并以 V1MasterKeyedEncryptionScheme 对相对路径逐段加密。INITIAL_UPLOAD_MAX_FILES)执行完整流程:
FastRepoInitHandshakeV2 握手(返回 codebaseId)。FastUpdateFileV2)。EnsureIndexCreated 与 FastRepoSyncComplete 标记索引完成。codebaseId、pathKey、orthogonalTransformSeed 等持久化到工作区状态 state.json。chokidar 监听文件变更,只标记 pendingChanges = true(轻量)。SyncMerkleSubtreeV2 对目录节点进行比对,定位不匹配的子树与文件。EnsureIndexCreated/FastRepoSyncComplete。pendingChanges 标记并持久化。SearchRepositoryV2 并对返回的加密路径用本地 pathKey 解密为 Posix 相对路径,输出 { path, score, startLine, endLine }。proto/repository_service.proto 必须存在(仓库已附带)。npx -y --package=git+https://github.com/CometixAI/Cometix-Indexer.git cometix-indexer -- --auth-token "$CURSOR_AUTH_TOKEN" --base-url https://api2.cursor.sh
# 安装依赖并构建
npm install
npm run build
# 方式一:通过环境变量(PowerShell 示例)
$env:CURSOR_AUTH_TOKEN="你的Token"; npm run start
# 方式二:通过参数传递(-- 之后的参数会透传给脚本)
npm run start -- --auth-token 你的Token --base-url https://api2.cursor.sh --log-level info
# 开发模式(监听编译;运行需要另开终端执行 start)
npm run dev
# 另开一个终端
npm run start -- --auth-token 你的Token
可用环境变量:
CURSOR_AUTH_TOKEN(必需)CURSOR_BASE_URL(默认 https://api2.cursor.sh)LOG_LEVEL(debug | info | warning | error,默认 info)SYNC_CONCURRENCY(默认 4)SYNC_MAX_NODES(默认 2000)SYNC_MAX_ITERATIONS(默认 10000)SYNC_LIST_LIMIT(默认 1000)FILE_SIZE_LIMIT_BYTES(默认 2MB,超出将跳过)INITIAL_UPLOAD_MAX_FILES(默认 10,初次索引分批大小)PROTO_TIMEOUT_MS(默认 30000)PROTO_SEARCH_TIMEOUT_MS(默认 60000)AUTO_SYNC_INTERVAL_MS(默认 5 分钟)npm install
npm run build
%USERPROFILE%/.cometix/cursor-indexer/<safeName>-<hash>/
state.json:保存 codebaseId、pathKey、orthogonalTransformSeed 等。embeddable_files.txt:首次索引生成的可嵌入文件列表,可手动编辑以精确控制索引范围。aes-256-ctr)并在 Windows 相对路径(以 ./ 或 .\ 起始)层面进行,避免泄露真实目录结构。pathKey 解密为 Posix 相对路径,失败时回退为原始加密串。node_modules/、.git/、.cursor/、dist/、build/、coverage/ 等。FILE_SIZE_LIMIT_BYTES 的文件会被跳过。repository_service.proto not found:请确认项目根目录存在 proto/repository_service.proto。Missing CURSOR_AUTH_TOKEN:通过 --auth-token 传参或设置环境变量 CURSOR_AUTH_TOKEN。MIT
Prerequisites
Time Estimate
15-60 minutes depending on server complexity
Steps
Troubleshooting
✓ Do
✗ Don't
💡 Pro Tips
Architecture
Model Context Protocol standardizes how AI hosts (Claude, Cursor) communicate with external tools and data sources through server implementations.
Protocols
Compatibility
✓ Use when
Use when you need Claude to access external data, execute actions, or integrate with tools. Best for extending AI capabilities beyond conversation.
✗ Avoid when
Avoid when native integrations exist (use official APIs directly), for real-time critical systems, or when security/compliance requires zero external dependencies.