OpenCode MCP Server
Provides integration with the OpenCode AI coding agent, allowing users to programmatically execute CLI commands, manage and export coding sessions, and discover available AI models from various providers.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@OpenCode MCP Serverrefactor the login function in auth.py to be more efficient"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
OpenCode MCP Server
An MCP (Model Context Protocol) server that provides seamless integration with OpenCode, the open-source AI coding agent for the terminal.
Features
Execute OpenCode Commands: Run any OpenCode CLI command programmatically
Session Management: Create, continue, and export coding sessions
Model Discovery: List available AI models from all configured providers
Async Execution: Non-blocking command execution with timeout handling
JSON Lines Parsing: Robust parsing of OpenCode's streaming output format
Related MCP server: opencode-mcp
Tools Available
Tool | Description |
| Execute any OpenCode CLI command with full flexibility |
| Run OpenCode with a simple prompt message |
| Continue an existing OpenCode session |
| List available models, optionally filtered by provider |
| Export session data as JSON |
| Check OpenCode CLI availability and status |
Installation
Prerequisites
Python 3.10+
OpenCode CLI installed and configured
MCP-compatible client (Claude Desktop, etc.)
Install Dependencies
pip install -r requirements.txtConfigure MCP Client
Add to your MCP client configuration (e.g., ~/.claude.json or Claude Desktop settings):
{
"mcpServers": {
"opencode": {
"command": "python",
"args": ["-m", "src.services.fast_mcp.opencode_server"],
"cwd": "/path/to/opencode-mcp"
}
}
}Usage
Basic Usage
Once configured, the MCP tools are available through your MCP client:
# Run a coding task
opencode_run(message="Create a Python function that calculates fibonacci numbers")
# List available models
opencode_list_models(provider="anthropic")
# Continue a previous session
opencode_continue_session(session_id="abc123", message="Now add unit tests")
# Check status
opencode_get_status()Tool Parameters
execute_opencode_command
{
"prompt": str, # Required: The prompt/task for OpenCode
"model": str, # Optional: Model in provider/model format (e.g., "anthropic/claude-sonnet-4-20250514")
"agent": str, # Optional: Agent to use (e.g., "build", "plan")
"session": str, # Optional: Session ID to continue
"continue_session": bool, # Optional: Whether to continue last session
"timeout": int # Optional: Timeout in seconds (default: 300, max: 600)
}opencode_run
{
"message": str, # Required: Message/prompt to send
"model": str, # Optional: Model to use
"agent": str, # Optional: Agent to use
"files": [str], # Optional: Files to attach
"timeout": int # Optional: Timeout in seconds
}opencode_continue_session
{
"session_id": str, # Required: Session ID to continue
"message": str, # Optional: Follow-up message
"timeout": int # Optional: Timeout in seconds
}Configuration
Environment variables (prefix: OPENCODE_):
Variable | Default | Description |
|
| Path to OpenCode CLI |
| None | Default model to use |
| None | Default agent to use |
|
| Default timeout (seconds) |
|
| Maximum timeout (seconds) |
|
| Logging level |
Architecture
src/services/fast_mcp/opencode_server/
├── __init__.py
├── __main__.py # Entry point
├── server.py # MCP server & tool definitions
├── opencode_executor.py # CLI execution wrapper
├── models.py # Pydantic models
├── settings.py # Configuration
└── handlers/
├── __init__.py
├── execution.py # Run/continue operations
├── session.py # Session management
└── discovery.py # Model/status discoveryDevelopment
Running Tests
pytest tests/ -vCode Formatting
black src/
ruff check src/Roadmap
Planned features for v2.0:
opencode_import_session- Import sessions from JSON/URLopencode_list_sessions- List all sessions with filteringopencode_get_stats- Usage statistics and cost trackingopencode_list_agents- List available agentsopencode_github_run- GitHub Actions integration (async)opencode_pr_checkout- PR workflow support
Contributing
Contributions are welcome! Please read the contributing guidelines before submitting PRs.
License
MIT License - see LICENSE for details.
Related Projects
OpenCode - The AI coding agent this server integrates with
Model Context Protocol - The protocol specification
MCP SDK - Python SDK for MCP
Acknowledgments
This server cannot be deployed
Maintenance
Related MCP Connectors
Use AI models for chat, image, and video generation from Claude Code and other MCP hosts.
MCP server for OpenAI API (chat completions, image generation, embeddings) via AceDataCloud
Generate AI video, images and audio, and browse your history, from any MCP client.
The OpenRouter MCP server plugs OpenRouter into the AI tools you already use. Once connected, your assistant can pull live OpenRouter data (models, prices, your credits, rankings, and docs) and send quick test messages, all without leaving your editor.
Related MCP Servers
- FlicenseAqualityAmaintenanceAn MCP server that provides OpenCode's native tools (file read/write/edit, search, shell, web fetch/search, and more) to compatible Code CLIs like Codex and Claude Code.1118 npm-
- AlicenseNot gradedqualityAmaintenanceConnects MCP clients such as Claude, Cursor, and VS Code to OpenCode's headless API so users can delegate coding work — asking questions, implementing features, monitoring background jobs, answering prompts and permission requests, and reviewing changes across multiple projects. Supports synchronous runs, asynchronous jobs with polling and recovery, multi-project directory scoping, and configurable server authentication and tool profiles.24,321 npmMIT
- AlicenseNot gradedqualityAmaintenanceConnects MCP clients such as Claude, Cursor, and VS Code to OpenCode's headless API so users can ask questions, implement features, run background coding jobs, answer permission and question prompts, and review changes across multiple projects. It also exposes project-aware resources, prompts, and job monitoring tools with configurable provider and model defaults.24,321 npmMIT
- AlicenseNot gradedqualityAmaintenanceConnects MCP clients such as Claude, Cursor, and VS Code to an OpenCode server's headless API so coding work can be delegated, answered, and monitored. It supports asking questions, launching foreground or background jobs, supplying required input and permissions, and reviewing resulting changes across projects.24,321 npmMIT