Command Palette

Search for a command to run...

UnylyUnyly
Browse all

DevPilot

FreeNot checked

An AI-powered development assistant that enables LLMs to securely interact with local development tools including Git, filesystem, Docker, PostgreSQL, and GitHu

GitHubEmbed

About

An AI-powered development assistant that enables LLMs to securely interact with local development tools including Git, filesystem, Docker, PostgreSQL, and GitHub via the Model Context Protocol.

README

Your Personal AI Development Assistant powered by the Model Context Protocol (MCP).

DevPilot MCP is a local AI-powered developer assistant that allows LLMs such as ChatGPT, Claude, or any MCP-compatible client to securely interact with your development environment.

Instead of manually running Git commands, searching files, checking Docker containers, or querying databases, DevPilot exposes these capabilities as MCP tools.

The long-term vision is to create an intelligent software engineering assistant that can understand natural language, invoke the correct tools, and automate everyday development workflows.


✨ Features

✅ Git Tools

  • Git Status // done
  • Current Branch //
  • Commit History //
  • Diff //
  • Show Commit
  • Checkout Branch
  • Create Branch
  • Commit Changes
  • Push / Pull
  • Stash Operations

📁 Filesystem Tools

  • Read File
  • Write File
  • Search Files
  • List Directory
  • Find TODOs
  • Rename Files
  • Delete Files

🐳 Docker Tools

  • List Containers
  • View Logs
  • Restart Containers
  • Stop Containers
  • List Images

🗄 Database Tools

  • Execute SQL Queries
  • Show Schema
  • Describe Tables
  • List Databases
  • Connection Information

🌐 GitHub Tools

  • Clone Repository
  • Create Pull Request
  • Create Issue
  • List Pull Requests
  • List Branches

🤖 AI Assistant (Upcoming)

Instead of

Choose Tool:
git_status

You'll simply ask

Show me the status of my data-api repository.

The assistant will

  • Understand your request
  • Choose the correct MCP tool
  • Execute it
  • Explain the result naturally

🧩 Planner Arg Extractors

Defined in client/agent/planner.py as ARG_EXTRACTORS.

Each key is a tool argument name. The value is a function that pulls that argument out of the user's natural-language prompt (or None until implemented).

Key Meaning
repo_path Absolute or relative path to a Git repository
path Filesystem path (file or directory)
symbol Code symbol name (class, function, etc.)
branch Git branch name
container Docker container name or ID
command Shell command to run (e.g. inside a container)
commit Git commit hash or ref (HEAD, abc123, …)
content Text content to write into a file
message Commit message or stash message
query Text search string
pattern Glob pattern for finding files
remote Git remote name (origin, upstream, …)
operation Stash operation (list, push, pop, apply, drop)
limit Max number of items (e.g. git log entries)
start_line First line number when reading a file
max_lines How many lines to read from a file
add_all Whether to git add -A before commit (true/false)
append Whether to append instead of overwrite a file (true/false)
checkout Whether to check out a branch after creating it (true/false)
staged Whether to show staged diffs only (true/false)

Example shape:

ARG_EXTRACTORS = {
    "repo_path": extract_repo_path,  # implemented
    "branch": None,                 # TODO: implement later
    ...
}

🏗 Architecture

                   User Prompt
                       │
                       ▼
                 Planner (Brain)
                       │
        ┌──────────────┼──────────────┐
        ▼              ▼              ▼
    Git Tools      FS Tools      Docker Tools
        │              │              │
        └──────────────┼──────────────┘
                       ▼
                Collect Results
                       │
                       ▼
                LLM Final Answer

---

# 📂 Project Structure

devpilot-mcp/ │ ├── README.md ├── pyproject.toml ├── .env │ ├── client/ │ ├── client.py │ ├── llm.py │ ├── prompt.py │ └── ui.py │ ├── server/ │ ├── server.py │ │ │ ├── git/ │ ├── filesystem/ │ ├── docker/ │ ├── postgres/ │ └── utils/ │ └── tests/


---

# �� Current Progress

## Phase 1 — MCP Fundamentals

- [x] MCP Server
- [x] MCP Client
- [x] Session Initialization
- [x] Tool Discovery
- [x] Tool Invocation

---

## Phase 2 — Git Tools

- [x] hello()
- [x] git_status()
- [x] git_branch()

### Upcoming

- [ ] git_log()
- [ ] git_diff()
- [ ] git_show()
- [ ] git_add()
- [ ] git_commit()
- [ ] git_push()

---

## Phase 3 — Filesystem

- [ ] read_file()
- [ ] write_file()
- [ ] search_files()
- [ ] list_directory()

---

## Phase 4 — Docker

- [ ] docker_ps()
- [ ] docker_logs()
- [ ] docker_restart()

---

## Phase 5 — PostgreSQL

- [ ] run_query()
- [ ] describe_table()
- [ ] list_tables()

---

## Phase 6 — GitHub

- [ ] create_pr()
- [ ] create_issue()
- [ ] clone_repo()

---

## Phase 7 — AI Assistant

- [ ] Natural language interface
- [ ] Automatic tool selection
- [ ] Context awareness
- [ ] Conversation memory

---

# 🛠 Installation

Clone the repository

```bash
git clone https://github.com/<your-username>/devpilot-mcp.git
cd devpilot-mcp

Install Poetry dependencies

poetry install

Activate the virtual environment

poetry shell

Run the server

poetry run python server/server.py

Run the client

poetry run python client/client.py

📖 Example

User

Show me my current Git branch.

Assistant

Calling git_branch(...)

Output

feature/devpilot

🎯 Vision

The goal of DevPilot MCP is to become a complete AI-powered development companion capable of understanding natural language and safely interacting with your local development environment.

Instead of memorizing terminal commands, developers should be able to simply describe what they want to accomplish.

Examples:

  • "Show me modified files."
  • "Create a new branch called feature/auth."
  • "Find all TODO comments."
  • "Restart my Docker containers."
  • "Run the database migration."
  • "Explain the last five commits."

DevPilot will determine which tools to use, execute them, and present the results in a human-friendly way.


📚 Tech Stack

  • Python
  • FastMCP
  • Model Context Protocol (MCP)
  • AsyncIO
  • Poetry
  • Git
  • Docker
  • PostgreSQL
  • OpenAI / Claude (Planned)

🤝 Contributing

Contributions, issues, and feature requests are welcome.

Feel free to open an issue or submit a pull request.


📜 License

MIT License


⭐ Roadmap

  • MCP Fundamentals
  • Git Automation
  • Filesystem Automation
  • Docker Integration
  • PostgreSQL Integration
  • GitHub Automation
  • AI Tool Selection
  • Memory
  • Multi-Agent Support
  • Voice Commands
  • VS Code Extension

from github.com/walianitin/Dev-Mcp

Installing DevPilot

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/walianitin/Dev-Mcp

FAQ

Is DevPilot MCP free?

Yes, DevPilot MCP is free — one-click install via Unyly at no cost.

Does DevPilot need an API key?

No, DevPilot runs without API keys or environment variables.

Is DevPilot hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install DevPilot in Claude Desktop, Claude Code or Cursor?

Open DevPilot on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare DevPilot with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs