MCP Directory

IDE Index MCP Server

JetBrains IDE plugin exposing an MCP server so AI agents can use the IDE's indexing and refactoring.

Unverified
HTTP (remote)
No auth
Kotlin

Add to your client

Copy the config for your MCP client and paste it into its config file.

Install / run
claude mcp add --transport http --scope user intellij-index http://127.0.0.1:29170/index-mcp/streamable-http

Paste into ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "ide-index-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "http://127.0.0.1:29170/index-mcp/streamable-http"
      ]
    }
  }
}

Claude Desktop connects to remote servers through the `mcp-remote` proxy (installed on first run via npx). Restart Claude Desktop after saving.

Step-by-step guides: Add to Claude Desktop · Add to Cursor · Add to Windsurf

Before you start

  • JetBrains IDE 2025.1 or later (any IntelliJ Platform-based IDE)
  • JVM 21 or later
  • The IDE Index MCP Server plugin installed from JetBrains Marketplace (plugin 29174)
  • An MCP-compatible client supporting Streamable HTTP (MCP 2025-03-26), e.g. Claude Code, Codex, Cursor, Windsurf

About IDE Index MCP Server

A JetBrains IDE plugin (IntelliJ Platform) that exposes an embedded MCP server over HTTP, enabling AI coding assistants to leverage the IDE's indexing, semantic navigation, and refactoring capabilities. It supports multiple languages based on installed language plugins, provides 38 MCP tools across universal/extended/refactoring/lifecycle categories, and includes automatic project lifecycle management to conserve memory across many open projects. Installed from the JetBrains Marketplace; the server runs locally and is configured per-client by URL.

Tools & capabilities (36)

ide_find_references

Find all references to a symbol across the entire project.

ide_find_definition

Find the definition/declaration location of a symbol.

ide_find_class

Search for classes/interfaces by name with camelCase/substring/wildcard matching.

ide_find_file

Search for files by name using the IDE's file index.

ide_find_symbol

Search for symbols (classes, methods, fields, functions) by name with IntelliJ Go to Symbol matching (disabled by default).

ide_search_text

Text search using the IDE's pre-built word index with context filtering.

ide_diagnostics

Analyze file problems with fresh editor diagnostics for open files or batch diagnostics for closed files, plus optional build/test results.

ide_index_status

Check if the IDE is in dumb mode (indexing) or smart mode.

ide_sync_files

Force sync the IDE's virtual file system and PSI cache with external file changes.

ide_build_project

Build the project using the IDE's build system (JPS, Gradle, Maven) with structured errors (disabled by default).

ide_read_file

Read file content by path or qualified name, including library/jar sources (disabled by default).

ide_get_active_file

Get the currently active file(s) in the editor with cursor position (disabled by default).

ide_open_file

Open a file in the editor with optional line/column navigation (disabled by default).

ide_set_power_save_mode

Enable or disable IDE Power Save Mode; suspends background inspections while keeping the index operational (disabled by default).

ide_close_project

Close an open project window and free its memory; refuses to close the last open project (disabled by default).

ide_open_project

Open a project by absolute path and wait until indexing completes; returns immediately if already open (disabled by default).

ide_install_plugin

Install a plugin zip into the IDE, replacing any existing version; auto-detects build/distributions/*.zip (disabled by default).

ide_restart

Restart the IDE; terminates the MCP connection, call after ide_install_plugin (disabled by default).

ide_refactor_rename

Rename a symbol and update all references across the project (all languages).

ide_move_file

Move a file to a new directory, applying language-aware reference/package updates when a semantic move backend is available.

ide_reformat_code

Reformat code using project code style with import optimization (disabled by default).

ide_type_hierarchy

Get the complete type hierarchy (supertypes and subtypes). Languages: Java, Kotlin, Python, JS/TS, Go, PHP, Rust.

ide_call_hierarchy

Analyze method call relationships (callers or callees). Languages: Java, Kotlin, Python, JS/TS, Go, PHP, Rust.

ide_find_implementations

Find all implementations of an interface or abstract method. Languages: Java, Kotlin, Python, JS/TS, PHP, Rust.

ide_find_super_methods

Find the full inheritance hierarchy of methods a method overrides/implements. Languages: Java, Kotlin, Python, JS/TS, PHP.

ide_file_structure

Get hierarchical file structure (like the IDE's Structure view), including Markdown heading outlines (disabled by default). Languages: Java, Kotlin, Python, JS/TS, PHP, Markdown.

ide_convert_java_to_kotlin

Convert Java files to Kotlin using IntelliJ's built-in converter (disabled by default; requires Java + Kotlin plugins; IntelliJ IDEA/Android Studio only).

ide_refactor_safe_delete

Safely delete an element, checking for usages first (Java/Kotlin only).

ide_project_status

Combined snapshot of every open and managed project with open/managed/mode per row (enabled by default).

ide_set_project_mode

Set a project's lifecycle mode: active, background, dormant, or closed (disabled by default).

ide_get_project_modes

List all managed projects and their current modes, including closed ones (disabled by default).

ide_set_all_project_modes

Set all managed projects to the same mode at once (active/background/dormant) (disabled by default).

ide_enroll_all_projects

Enroll every currently open project in lifecycle management (disabled by default).

ide_release_project

Unenroll a project from lifecycle management (disabled by default).

ide_release_all_projects

Release every managed project (including closed ones) from lifecycle management (disabled by default).

ide_lifecycle_log

Query recent lifecycle events from a ring buffer; each event has a trigger field explaining the cause (disabled by default).

When to use it

  • Letting an AI coding agent find all references and jump to definitions using the IDE's real index instead of text grep
  • Performing safe cross-project rename and safe-delete refactorings with automatic reference updates and undo
  • Exploring type and call hierarchies and finding interface implementations in large multi-module codebases
  • Reading structured build/diagnostic results and checking index readiness before running tools
  • Working across a monorepo with many projects open while lifecycle management auto-sleeps idle ones

Security notes

The server binds to 127.0.0.1 by default and implements no authentication (it does not advertise auth capabilities). Changing Server Host to 0.0.0.0 exposes it for remote/WSL access without any auth, so restrict network access accordingly. Each JetBrains IDE uses a distinct default port to avoid conflicts when multiple IDEs run at once.

IDE Index MCP Server FAQ

How do I connect Claude Code to it?

Run the install command (adjust name and port for your IDE), e.g. `claude mcp add --transport http --scope user intellij-index http://127.0.0.1:29170/index-mcp/streamable-http`. You can also use the plugin's 'Install on Coding Agents' button in the tool window.

What port does it use?

Each JetBrains IDE has a distinct default port and server name to avoid conflicts: IntelliJ IDEA 29170 (intellij-index), Android Studio 29171, PyCharm 29172, WebStorm 29173, GoLand 29174, PhpStorm 29175, RubyMine 29176, CLion 29177, RustRover 29178, DataGrip 29179. The port is changeable in Settings > Tools > Index MCP Server.

Does it require authentication?

No. The server binds to 127.0.0.1 by default and does not implement or advertise authentication. If you change the host to 0.0.0.0 for remote/WSL access, it remains unauthenticated, so restrict access at the network level.

Which IDEs and languages are supported?

Fully tested on IntelliJ IDEA, Android Studio, PyCharm, WebStorm, GoLand, RustRover, and PhpStorm; may work on RubyMine, CLion, and DataGrip. Language-aware tools activate based on installed plugins for Java/Kotlin, Python, JS/TS, Go, PHP, Rust, and Markdown.

Why are some tools missing from my tool list?

Seven tools are disabled by default (e.g. ide_find_symbol, ide_build_project, ide_read_file, ide_file_structure, reformat, and others) to keep the list focused. Enable them in Settings > Tools > Index MCP Server. Extended tools also only appear when the relevant language plugin is installed.

Alternatives to IDE Index MCP Server

Compare all alternatives →

Microsoft's official browser-automation MCP using Playwright's accessibility tree (no vision model).

Featured
Verified
stdio (local)
No auth
TypeScript
12 tools
Updated 13 days agoRepo

Up-to-date, version-specific library documentation injected into your coding agent.

Verified
stdio (local)
API key
TypeScript
2 tools
Updated 17 days agoRepo

LSP-powered coding agent toolkit: semantic symbol search, references and structural edits.

Verified
stdio (local)
No auth
Python
11 tools
Updated 15 days agoRepo