About Code Buddy
Code Buddy is an MCP server published by Abhi-vish in the Developer Tools category: local-first AI coding agent for the terminal. 64 LLM providers, 30 of them free or local $0, with auto-failover. 220+ tools, a peer-to-peer fleet, and a desktop app. No API bill required.
The repository has 7 stars and 1 forks, with the last commit 10 months ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/Abhi-vish/code-buddyThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Code Buddy
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
- ✓License declaredUsable under a stated license.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
3 checks have not been run yet.
README
Code Buddy
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.
Features
File Operations
- Read, write, edit, delete files at any location
- Copy and move files with full path support
- Support for both absolute and relative paths
Directory Management
- Create, list, delete directories
- Recursive directory tree visualization
- Navigate project structures easily
Code Tools
- Analyze code structure and complexity
- Extract functions and classes
- Format code with Black
- Lint code with Ruff
Search & Replace
- Search patterns across files
- Find and replace text
- Bulk find-and-replace operations
Git Integration
- Git status, diff, log operations
- Support for external repositories
- Branch and commit management
Command Execution
- Run shell commands in any directory
- Execute Python scripts
- Custom working directory support
Demo
Watch the agent in action creating a motivational quote website:
https://github.com/user-attachments/assets/5bd48fab-73cc-4ea9-b28e-d52ff224fc2b
The agent automatically created the full project structure, HTML, CSS, and JavaScript with working API integration.
Current Status & Roadmap
✅ Completed Features
- 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
🚧 In Development
- CLI Agent (standalone interactive interface)
- Comprehensive test suite
- Error recovery mechanisms
- Performance optimizations
- Enhanced documentation and examples
📋 Planned Features
- Multi-language support beyond Python
- Database integration tools
- Docker and container management
- API testing tools
- Project scaffolding templates
- Plugin system for custom tools
Installation
Prerequisites
- Python 3.13 or higher
- uv package manager
- Claude Desktop (for MCP integration)
Setup
- 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
Usage with Claude Desktop
Configure Claude Desktop
-
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
Using the Tools
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.
CLI Agent (In Development)
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.py
Features planned:
- Conversational interface with streaming responses
- Direct tool access from terminal
- Multi-project support
- Interactive debugging
Available Tools
File Tools
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
Directory Tools
create_directory- Create directorieslist_directory- List directory contentsdelete_directory- Delete directoriesget_directory_tree- Get recursive tree structure
Search Tools
search_in_files- Search for patternsfind_replace- Find and replace in a filefind_replace_all- Bulk find and replace
Code Tools
analyze_code- Analyze code metricsget_functions- Extract function definitionsformat_code- Format with Blacklint_code- Lint with Ruff
Git Tools
git- Run git commandsgit_status- Get repository statusgit_diff- Show changesgit_log- View commit history
Command Tools
run_command- Execute shell commandsrun_python- Run Python scripts
Configuration
Environment Variables
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)
Server Configuration
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: true
Development
Project Structure
code-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
Running Tests
# Run tests (coming soon)
uv run pytest
Code Quality
# Format code
uv run black .
# Lint code
uv run ruff check .
Troubleshooting
Claude Desktop doesn't show tools
- Verify the configuration path is correct
- Check that
uvis in your PATH - Restart Claude Desktop completely
- Look for errors in Claude Desktop logs
Commands hang or timeout
- Increase timeout in tool parameters
- Check if the command requires user input
- Verify file paths are correct
Permission errors
- Ensure
ALLOW_EXTERNAL_PATHSis set totrue - Check file system permissions
- Run with appropriate user privileges
Known Issues & Limitations
- 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
Contributing
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
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- Built with the Model Context Protocol
- Powered by OpenAI and Anthropic Claude
- Uses uv for fast Python package management
Support
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.
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.