Skip to main content

AutoDev as MCP Server

How to Use​

  1. Enable the MCP server in AutoDev settings
  2. Use the MCP client to connect to the AutoDev server (We use JetBrains MCP Proxy Server to maintain protocol consistency)
{
"mcpServers": {
"AutoDev": {
"command": "npx",
"args": [
"-y",
"@jetbrains/mcp-proxy"
],
"disabled": false,
"autoApprove": []
}
}
}

Testing Sketch Calls​

Tool list: http://127.0.0.1:63342/api/mcp/list_tools

Ports for IDEA-related services range from 63342 to 63352, requiring trial and error

Example Call 1​

➜  ~ curl -X POST "http://127.0.0.1:63343/api/mcp/issue_or_story_evaluate" \
-H "Content-Type: application/json" \
-d '{"issue": "添加根据作者删除博客"}'

{
"status": "1. 在 `BlogRepository` 中添加根据作者删除博客的方法\n - [*] 添加 `deleteByAuthor` 方法\n2. 在 `BlogService` 中添加根据作者删除博客的业务逻辑\n - [*] 添加 `deleteBlogsByAuthor` 方法\n3. 在 `BlogController` 中添加根据作者删除博客的 API 端点\n - [*] 添加 `DELETE /blog/author/{author}` 端点"
}

Example Call 2​

➜  ~ curl -X POST "http://127.0.0.1:63342/api/mcp/issue_or_story_evaluate" \
-H "Content-Type: application/json" \
-d '{"issue": "检索代码库,总结 Sketch 的工作流程"}'

{
"status": "1. 定位核心工作流类\n - [✓] 搜索包含 \"Workflow\" 和 \"Sketch\" 的类定义\n - [✓] 分析 SketchRunner 的 execute 方法\n2. 解析 AI Flow 执行阶段\n - [✓] 识别上下文收集阶段\n - [✓] 分析工具调用决策模块\n - [✓] 跟踪代码生成流水线\n3. 验证工作流程完整性\n - [✓] 检查异常处理机制\n - [✓] 确认版本控制集成点"
}

Generated Plan Example:

  1. Locate core workflow classes
    • [✓] Search for class definitions containing "Workflow" and "Sketch"
    • [✓] Analyze SketchRunner's execute method
  2. Parse AI Flow execution phases
    • [✓] Identify context collection phase
    • [✓] Analyze tool invocation decision module
    • [✓] Track code generation pipeline
  3. Validate workflow integrity
    • [✓] Check exception handling mechanisms
    • [✓] Confirm version control integration points

Mermaid workflow:

graph TD
A[User Input] --> B[SketchToolWindow]
B --> C[SketchInputListener]
C --> D[SketchRunContext]
D --> E[Collect Context Information]
E --> F[LanguageSketchProvider]
F --> G{Task Type}
G -->|Go Language| H[GoLangPlaygroundSketch]
G -->|Terminal Command| I[TerminalSketch]
G -->|Others| J[ExtensionLangSketch]
H --> K[Execute Task]
I --> K
J --> K
K --> L[PlanLangSketch]
L --> M[Generate Task Plan]
M --> N[PlanController]
N --> O[Update Task Status]
O --> P[Save to AgentStateService]
P --> Q[Feedback Result]
Q --> B