This is a Sublime Text plugin that connects your editor to a local Model Context Protocol (MCP) server, letting you use OpenAI or Gemini-powered tools directly on selected code.
🔗 Model Context Protocol Introduction
- Generate code from plain-text prompts
- Review code for bugs, security flaws, or improvements
- Refactor code to enhance readability, maintainability, and performance
- Translate code between languages like Python, JavaScript, Bash, etc.
- Configurable settings for MCP server URL, timeouts, and model parameters
- Menu integration for easy access to all commands
- Robust error handling with user-friendly error messages
- Debug mode for troubleshooting
Here's what the plugin looks like in Sublime Text:
-
Download the plugin files from this repository
-
Copy to your Sublime Text User packages folder:
- Windows:
%APPDATA%\Sublime Text\Packages\User\
- macOS:
~/Library/Application Support/Sublime Text/Packages/User/
- Linux:
~/.config/sublime-text/Packages/User/
- Windows:
-
Restart Sublime Text
-
Configure your MCP server (see Configuration section below)
For complete installation instructions, see INSTALLATION.md.
Ensure your local MCP server is running and accessible at the configured URL (default: http://localhost:8000/mcp.json/
)
Open Sublime Text settings:
- Go to
Preferences > Package Settings > MCPHelper > Settings
- Or edit the settings file directly
Default settings:
{
"mcp_server_url": "http://localhost:8000/mcp.json/",
"timeout_seconds": 120,
"show_debug_output": false,
"default_model": "gpt-4o",
"default_temperature": 0.2,
"default_max_tokens": 512
}
Your MCP server should have tools configured like:
@mcp.tool(name="llm_generate_code_openai", description="Generate code using OpenAI")
async def generate_code_openai(params: dict) -> dict:
# Your OpenAI integration here
return {"results": [{"data": "generated_code"}]}
-
Select code in any file
-
Press
Ctrl+Shift+P
-
Choose one of:
MCP: Generate Code
MCP: Review Code
MCP: Refactor Code
MCP: Translate Code
- Select code in any file
- Go to
MCP Helper
menu - Choose your desired action
Add to your keybindings file (Preferences > Key Bindings
):
[
{
"keys": ["ctrl+shift+g"],
"command": "mcp_generate_code"
},
{
"keys": ["ctrl+shift+r"],
"command": "mcp_review_code"
},
{
"keys": ["ctrl+shift+f"],
"command": "mcp_refactor_code"
},
{
"keys": ["ctrl+shift+t"],
"command": "mcp_translate_code"
}
]
-
"Cannot connect to MCP server"
- Ensure your MCP server is running
- Check the URL in settings
- Verify the server is accessible at the configured endpoint
-
"MCP Tool Error"
- Check your MCP server logs
- Verify the tool names match your server configuration
- Ensure API keys are properly configured in your MCP server
-
"No text selected"
- Select some code before running commands
- Commands require text selection to work
Enable debug output in settings:
{
"show_debug_output": true
}
This will show detailed request/response information in the Sublime Text console.
View debug output:
- Go to
View > Show Console
- Look for messages starting with "MCP"
You can add new commands by subclassing McpBaseCommand
and customizing build_params()
:
class McpCustomCommand(McpBaseCommand):
TOOL_NAME = "your_custom_tool"
def build_params(self, selected_text, extra_input=None):
return {
"prompt": f"Custom prompt: {selected_text}",
"language": "python"
}
This project is licensed under the MIT License. See LICENSE for details.
David Donohue
Built to streamline LLM-assisted development with a local-first mindset.
⚠️ Important: This plugin requires a running MCP Server on your local machine. You must configure your own OpenAI or Gemini API keys in the MCP server. This plugin does not directly handle authentication or make API calls — it simply communicates with your local MCP server to trigger the tools you've defined.