AgentSkillsCN

mcp-jetbrains-ide

通过 MCP 控制 JetBrains IDE(IntelliJ、WebStorm、PyCharm)。在操作 IDE 文件、运行配置、搜索代码,或执行重构时,均可使用此功能。支持以下触发词:“在 IDE 中打开”、“运行配置”、“重构代码”、“IDE 搜索”、“JetBrains”。

SKILL.md
--- frontmatter
name: mcp-jetbrains-ide
description: Control JetBrains IDE (IntelliJ, WebStorm, PyCharm) via MCP. Use when manipulating IDE files, running configurations, searching code, or performing refactoring. Triggers on "open in IDE", "run configuration", "refactor code", "IDE search", "JetBrains".

JetBrains IDE Integration

MCP service at http://localhost:64342/sse (sse) with 22 tools.

Requirements

  • mh CLI must be installed. If not available, install with:
    bash
    curl -fsSL https://raw.githubusercontent.com/vaayne/mcphub/main/scripts/install.sh | sh
    
  • JetBrains IDE must be running with MCP plugin enabled

Usage

List tools: mh -u http://localhost:64342/sse -t sse list Get tool details: mh -u http://localhost:64342/sse -t sse inspect <tool-name> Invoke tool: mh -u http://localhost:64342/sse -t sse invoke <tool-name> '{"param": "value"}'

Notes

  • Run inspect before invoking unfamiliar tools to get full parameter schema
  • Timeout: 30s default, use --timeout <seconds> to adjust
  • SSE port may vary - check IDE MCP plugin settings if connection fails
  • All file paths are relative to project root unless absolute

Tools

File Operations

ToolDescription
createNewFileCreate a new file at specified path, auto-creates parent directories
getFileTextByPathRead file contents by project-relative path
replaceTextInFileReplace text in file with flexible find/replace options
reformatFileApply code formatting rules to a file
openFileInEditorOpen a file in the IDE editor
getAllOpenFilePathsGet paths of all currently open files

Search

ToolDescription
findFilesByNameKeywordFind files by name keyword (case-insensitive)
findFilesByGlobFind files matching glob pattern (e.g. **/*.ts)
searchInFilesByTextSearch for text substring across project files
searchInFilesByRegexSearch with regex pattern across project files

Code Intelligence

ToolDescription
getSymbolInfoGet documentation/info about symbol at position
getFileProblemsAnalyze file for errors and warnings
renameRefactoringRename symbol across entire project

Project

ToolDescription
listDirectoryTreeTree view of directory structure
getProjectModulesList all project modules with types
getProjectDependenciesList all project dependencies
getRepositoriesList VCS roots in project

Execution

ToolDescription
getRunConfigurationsList available run configurations
executeRunConfigurationRun a specific run configuration
executeTerminalCommandExecute shell command in IDE terminal

Other

ToolDescription
permissionPromptPermission prompt utility

Examples

bash
# List project structure
mh -u http://localhost:64342/sse -t sse invoke listDirectoryTree '{"path": "."}'

# Search for text in files
mh -u http://localhost:64342/sse -t sse invoke searchInFilesByText '{"query": "TODO"}'

# Read a file
mh -u http://localhost:64342/sse -t sse invoke getFileTextByPath '{"path": "src/index.ts"}'

# Rename a symbol
mh -u http://localhost:64342/sse -t sse invoke renameRefactoring '{"path": "src/utils.ts", "line": 10, "column": 5, "newName": "newFunctionName"}'

# Run a configuration
mh -u http://localhost:64342/sse -t sse invoke executeRunConfiguration '{"name": "Run Tests"}'