Rovodev MCP Tool
Model Context Protocol server for Atlassian Rovo Dev CLI integration. This tool enables AI assistants like Claude to leverage Rovo Dev's powerful code analysis and capabilities through the MCP protocol.
Rovo Dev is a comprehensive AI coding assistant that already includes built-in MCP support. This tool allows Rovo Dev to be used as an external tool from other MCP-compatible AI assistants, creating a bridge between different AI tools.
Features
- Large Context Windows: Leverage Rovo Dev's powerful AI capabilities for analyzing large files and entire codebases
- File Analysis: Use
@filenameor@directorysyntax to include file contents in your queries - Multiple Models: Support for various AI models configured in Rovo Dev (default: anthropic.claude-sonnet-4-5-20250929-v1:0)
- Flexible Approval Modes: Control tool execution with plan/default/auto-edit/yolo modes
- MCP Protocol: Seamless integration with MCP-compatible AI assistants
- Rovo Dev Specific Features: Includes support for code mode, review mode, optimization suggestions, and detailed explanations
Prerequisites
- Node.js v16 or higher
- acli rovodev installed and configured (Atlassian Rovo Dev CLI)
Installation
Prerequisites
First, ensure you have Rovo Dev CLI installed and configured:
# Follow Rovo Dev installation instructions to install acli rovodev
# Configure your models and authentication in ~/.rovodev/config.yml
Quick Setup (Easiest - Recommended)
Use Claude Code's built-in MCP installer:
claude mcp add rovodev-cli -- npx -y @jaggerxtrm/rovodev-mcp-tool
This single command configures everything automatically!
Manual Configuration for Rovo Dev
Since Rovo Dev already has MCP support, you can add this tool to your existing Rovo Dev configuration:
Edit ~/.rovodev/config.yml and add to the allowedMcpServers list:
mcp:
allowedMcpServers:
- stdio:npx:-y @jaggerxtrm/rovodev-mcp-tool # Add this line
Or add to ~/.rovodev/mcp.json:
{
"mcpServers": {
"...": "...",
"rovodev-cli": {
"command": "npx",
"args": [
"-y",
"@jaggerxtrm/rovodev-mcp-tool"
]
}
}
}
From Source (Development)
- Clone and install dependencies:
git clone <repo-url>
cd rovodev-mcp-tool
npm install
- Build the project:
npm run build
- Link locally:
npm link
Available Tools
ask-rovodev
The main tool for interacting with Rovodev AI.
Parameters:
prompt(required): Your question or instruction- Use
@filenameto include a file's contents - Use
@directoryto include all files in a directory
- Use
model(optional): Model to use (default, advanced, basic, etc.)approvalMode(optional): Control tool execution approvalplan: Analyze tool calls without executingdefault: Prompt for approval (default behavior)auto-edit: Auto-approve file editsyolo: Auto-approve all tool calls
yolo(optional): Shortcut for approvalMode='yolo'allFiles(optional): Include all files in current directory as contextdebug(optional): Enable debug mode
Examples:
// Analyze a specific file
{
"prompt": "@src/main.ts Explain what this code does"
}
// Analyze entire codebase
{
"prompt": "@src/ Summarize the architecture of this codebase"
}
// Use specific features
{
"prompt": "Review my authentication system for security issues",
"reviewMode": true,
"explain": true
}
// Optimize code
{
"prompt": "How can I optimize this algorithm?",
"optimize": true,
"explain": true
}
ping
Simple echo test to verify the connection.
Parameters:
prompt(optional): Message to echo (defaults to "Rovodev Pong!")
Help
Display Rovodev CLI help information.
Parameters: None
Configuration
The tool uses the following default models:
- Primary: default
- Fallback: basic (used if primary hits quota limits)
You can override these by specifying the model parameter in your requests.
Usage with Claude Code
Once installed as an MCP server, you can use it within Claude Code:
Ask Rovodev to analyze the authentication system in @src/auth/
Claude will automatically use the ask-rovodev tool with the appropriate parameters.
Project Structure
rovodev-mcp-tool/
├── src/
│ ├── index.ts # MCP server entry point
│ ├── constants.ts # Configuration and constants
│ ├── tools/
│ │ ├── registry.ts # Tool registration system
│ │ ├── ask-rovodev.tool.ts # Main Rovodev interaction tool
│ │ ├── simple-tools.ts # Utility tools (ping, help)
│ │ └── index.ts # Tool exports
│ └── utils/
│ ├── commandExecutor.ts # Command execution utility
│ ├── rovodevExecutor.ts # Rovodev CLI wrapper
│ └── logger.ts # Logging utility
├── package.json
├── tsconfig.json
└── README.md
How It Works
- The MCP server listens for tool calls via stdio transport
- When a tool is called, the server validates the arguments using Zod schemas
- For
ask-rovodev, the prompt is passed to the acli rovodev run command with appropriate flags - File references (
@filename) are processed by Rovo Dev's built-in file processing - Output from Rovo Dev is captured and returned to the MCP client
- The tool integrates with Rovo Dev's existing configuration and model settings
Troubleshooting
"acli rovodev not found"
Make sure the acli rovodev command is installed and available in your PATH.
"Command timed out"
For very large files or codebases, the analysis may take longer than the default 10-minute timeout. Consider:
- Using
.rovodevignoreto exclude unnecessary files - Breaking down large queries into smaller chunks
- Using
approvalMode: "plan"to analyze without executing
"Invalid tool arguments"
Check that your arguments match the tool schema. Use the Help tool to see available options.
License
MIT
Contributing
Contributions are welcome! Please feel free to submit issues or pull requests.
Credits
Inspired by qwen-mcp-tool and gemini-mcp-tool.
