Your AI-powered coding companion for Claude Desktop
Project Status: Work in Progress - Active Development
A powerful Model Context Protocol (MCP) server that provides AI assistants with comprehensive file system and development tools. Built to work seamlessly with Claude Desktop and other MCP-compatible clients.
Note: This project is under active development. Core features are functional, but some areas are still being refined and tested.
- Read, write, edit, delete files at any location
- Copy and move files with full path support
- Support for both absolute and relative paths
- Create, list, delete directories
- Recursive directory tree visualization
- Navigate project structures easily
- Analyze code structure and complexity
- Extract functions and classes
- Format code with Black
- Lint code with Ruff
- Search patterns across files
- Find and replace text
- Bulk find-and-replace operations
- Git status, diff, log operations
- Support for external repositories
- Branch and commit management
- Run shell commands in any directory
- Execute Python scripts
- Custom working directory support
Watch the agent in action creating a motivational quote website:
demo.mp4
The agent automatically created the full project structure, HTML, CSS, and JavaScript with working API integration.
- MCP server implementation with 23+ tools
- Claude Desktop integration
- File operations (read, write, edit, delete, copy, move)
- Directory management with tree visualization
- Git integration with external repository support
- Code analysis and formatting tools
- Search and replace functionality
- Command execution with custom working directories
- Real-time streaming responses
- Absolute path support for external projects
- CLI Agent (standalone interactive interface)
- Comprehensive test suite
- Error recovery mechanisms
- Performance optimizations
- Enhanced documentation and examples
- Multi-language support beyond Python
- Database integration tools
- Docker and container management
- API testing tools
- Project scaffolding templates
- Plugin system for custom tools
- Python 3.13 or higher
- uv package manager
- Claude Desktop (for MCP integration)
- Clone the repository:
git clone https://github.com/Abhi-vish/code-buddy.git
cd code-buddy- Install dependencies:
uv sync- Set up your OpenAI API key:
# Create .env file
echo "OPENAI_API_KEY=your-api-key-here" > .env-
Open your Claude Desktop configuration file:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- Windows:
-
Add the MCP server configuration:
{
"mcpServers": {
"code-buddy": {
"command": "uv",
"args": [
"--directory",
"C:\\path\\to\\code-buddy",
"run",
"python",
"-m",
"src.server.main"
],
"cwd": "C:\\path\\to\\code-buddy",
"env": {
"PROJECT_ROOT": "C:\\path\\to\\code-buddy",
"ALLOW_EXTERNAL_PATHS": "true"
}
}
}
}-
Replace
C:\\path\\to\\code-buddywith your actual project path -
Restart Claude Desktop
-
Look for the hammer icon (π¨) in Claude Desktop - this indicates MCP tools are available
Once configured, you can ask Claude to:
- "Read the main.py file and explain what it does"
- "Create a new React app at C:\Users\Projects\myapp"
- "Show me the git status of this project"
- "Format all Python files in the src directory"
- "Search for TODO comments in the codebase"
The agent will automatically use the appropriate tools to complete your requests.
An interactive command-line interface is currently under development. This will provide a standalone way to interact with the coding agent without Claude Desktop.
# Coming soon
uv run python chat_agent.pyFeatures planned:
- Conversational interface with streaming responses
- Direct tool access from terminal
- Multi-project support
- Interactive debugging
read_file- Read file contentswrite_file- Write or create filesedit_file- Find and replace contentdelete_file- Delete filesmove_file- Move or rename filescopy_file- Copy files
create_directory- Create directorieslist_directory- List directory contentsdelete_directory- Delete directoriesget_directory_tree- Get recursive tree structure
search_in_files- Search for patternsfind_replace- Find and replace in a filefind_replace_all- Bulk find and replace
analyze_code- Analyze code metricsget_functions- Extract function definitionsformat_code- Format with Blacklint_code- Lint with Ruff
git- Run git commandsgit_status- Get repository statusgit_diff- Show changesgit_log- View commit history
run_command- Execute shell commandsrun_python- Run Python scripts
OPENAI_API_KEY- Your OpenAI API key (required for CLI agent)PROJECT_ROOT- Default project root directoryALLOW_EXTERNAL_PATHS- Enable access to files outside project root (default:true)MAX_FILE_SIZE- Maximum file size in bytes (default: 1MB)MAX_DEPTH- Maximum directory traversal depth (default: 4)LOG_LEVEL- Logging level (default:INFO)
Edit config/default.yaml to customize server behavior:
name: "coding-agent"
version: "1.0.0"
max_file_size: 1048576 # 1MB
max_depth: 4
log_level: "INFO"
allow_external_paths: truecode-buddy/
βββ src/
β βββ client/ # Client-side code (CLI agent)
β β βββ agents/ # Agent implementations
β β βββ llm/ # LLM integrations
β β βββ ui/ # User interfaces
β βββ server/ # MCP server implementation
β β βββ tools/ # Tool implementations
β β βββ resources/ # Resource providers
β β βββ prompts/ # Prompt templates
β β βββ utils/ # Utility functions
β βββ shared/ # Shared code
βββ config/ # Configuration files
βββ assets/ # Demo videos and images
βββ pyproject.toml # Project dependencies
# Run tests (coming soon)
uv run pytest# Format code
uv run black .
# Lint code
uv run ruff check .- Verify the configuration path is correct
- Check that
uvis in your PATH - Restart Claude Desktop completely
- Look for errors in Claude Desktop logs
- Increase timeout in tool parameters
- Check if the command requires user input
- Verify file paths are correct
- Ensure
ALLOW_EXTERNAL_PATHSis set totrue - Check file system permissions
- Run with appropriate user privileges
- edit_file tool: Requires exact whitespace matching; use
write_filefor complex edits - Large files: Files over 1MB may have performance issues
- CLI Agent: Still in development; use Claude Desktop for production use
- Windows paths: Use forward slashes or double backslashes in paths
- Git operations: Some git commands may require manual input handling
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with the Model Context Protocol
- Powered by OpenAI and Anthropic Claude
- Uses uv for fast Python package management
If you encounter any issues or have questions:
- Open an issue on GitHub
- Check existing issues for solutions
- Review the troubleshooting section
Note: This is an active development project. Features and APIs may change. Contributions and feedback are welcome as we continue to improve and expand the tool suite.