JetBrains MCP Server Plugin
by JetBrains
The JetBrains MCP Server Plugin enables seamless integration between Large Language Models (LLMs) and JetBrains IDEs. It provides the server-side implementation for handling MCP requests and exposes extension points for implementing custom tools.
Last updated: N/A
What is JetBrains MCP Server Plugin?
The JetBrains MCP Server Plugin is a server-side component that facilitates communication between Large Language Models and JetBrains IDEs via the Model Context Protocol (MCP). It allows developers to create custom tools that leverage LLMs within the IDE environment.
How to use JetBrains MCP Server Plugin?
To use the plugin, you need to install the JetBrains MCP Proxy and a JetBrains IDE. You can implement custom tools by extending AbstractMcpTool
and registering them as extensions in your plugin.xml. Follow the provided guidelines for tool implementation and argument definition.
Key features of JetBrains MCP Server Plugin
Seamless integration between LLMs and JetBrains IDEs
Server-side implementation for handling MCP requests
Extension point system for implementing custom tools
Support for Kotlin
Clear guidelines for tool implementation
Use cases of JetBrains MCP Server Plugin
Creating custom code completion tools powered by LLMs
Developing automated refactoring tools using LLMs
Building intelligent code analysis tools with LLM integration
Implementing context-aware documentation generators
FAQ from JetBrains MCP Server Plugin
What is MCP?
What is MCP?
MCP stands for Model Context Protocol, a protocol used for communication between LLMs and JetBrains IDEs.
What is the purpose of the MCP Proxy?
What is the purpose of the MCP Proxy?
The MCP Proxy acts as an intermediary between the IDE and the LLM, handling communication and data transfer.
How do I create a custom tool?
How do I create a custom tool?
Create a class that extends AbstractMcpTool
, implement the handle
method, and register it as an extension in your plugin.xml.
What are the guidelines for tool implementation?
What are the guidelines for tool implementation?
Tool names should be descriptive and lowercase, use a data class for arguments, and use the Response
class for results and errors.
Where can I find more information about contributing?
Where can I find more information about contributing?
Please submit a Pull Request with your contributions.