mcp-aider-executor

mcp-aider-executor

Enables running aider as a detached background process with git and file tools, allowing LLMs to start code editing processes and check progress asynchronously for agentic swarm behavior.

Category
Visit Server

README

Project Information

stdio MCP server to run aider as a detached background process with basic git tools and status checks. This allows LLMs to start code editing processes freely and check the aider chat history for progress at a later time to allow for agentic swarm behavior.

An .aider.mcp.details.json file is created in the same directory with the process ID and starting datetime. The MCP server provides tools for LLM agents to check if the process is still running, and to check the .aider.chat.history.md for updates.

The original message prompt send via the MCP server to aider is also recorded in .aider.mcp.prompt.txt.

Quick Start

You can run the server directly using npx, passing in environment variables for the endpoint URL and API keys. Provide --whitelist arguments with a permitted glob path otherwise all operations will be denied by default.

{
  "mcpServers": {
    "mcp-aider-executor": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-aider-executor",
        "--whitelist",
        "/home/user/my-project/**",
        "--whitelist",
        "/local/my-application/**"
      ],
      "env": {
        "AIDER_MODEL": "openai/gemma-4-E4B-it-IQ4_XS",
        "OPENAI_API_BASE": "http://127.0.0.1:1337/v1",
        "OPENAI_API_KEY": "your-key-here"
      }
    }
  }
}

Prompting

You can directly tell your LLM to use Aider by providing them with a directory to work in. For example:

Use Aider to create a simple Python hello world console application in "/home/my-project"

For extra Aider options, you should set it properly using environment variables (the env in MCP settings .json), or ask your LLM to create the Aider YAML configuration file for you in the project directory. By default, the server comes with some basic git and file tools to allow the LLM to look around. These tools can be disabled via the options below if you'd like to use a separate MCP server to handle more advanced functions.

[!CAUTION]

For security purposes, the MCP server does not have the functionality to write API keys into the configuration YAML. Use env instead to provide keys like OPENAI_API_KEY. Don't tell your LLM about it.

Options

You can add these arguments in the npx command.

-h, --help                     Display this message
--model <model>                Default LLM main model override (i.e. always use this model no matter what)
--edit-format <format>         Main model edit format override, regardless of config or LLM inference
--architect                    Always run in architect mode (--no-architect for never)
--editor-model <model>         Default secondary editor model override for architect mode
--editor-edit-format <format>  Editor model's edit format override
--no-add-message-notes         Disables the adding of aider-specific notes to message prompts
--no-register-git-tools        Disables registration of all git tools for this server
--no-allow-git-edits           Disables only the git tools which modify the repo history
--no-register-file-tools       Disables registration of wide file access tools for this server
--whitelist <path>             Only allow operations within the glob path

Environment Prerequisites

The environment running the MCP server must have the following tools installed and available as executable commands in the shell:

  1. node
  2. aider
  3. git

[!WARNING]

You should set the number of parallel requests to 2 if you are using the same local endpoint for aider, otherwise your chat session and the background aider process will be stuck waiting for each other.

You should also set the OPENAI_API_KEY environment variable to a non-empty value if you are using a local OpenAI-compatible endpoint because aider requires it even if you don't use an API key.

You still need the openai/ prefix when specifying model names for local endpoints in aider.

Available MCP Tools

These are the list of MCP tools available for your LLM to call.

  • aider_check_git_log: Checks recent commits.
  • aider_check_git_status: Calls git status --short to check the state of the given directory.
  • aider_check_last_prompt: Returns the original prompt message of the last Aider run.
  • aider_check_progress: Checks the Aider chat history and background process status.
  • aider_checkout_git_branch: Switches git branches, creating a new one if it doesn't exist.
  • aider_create_git_stash: Stashes everything to clear the directory for Aider (git stash -u).
  • aider_git_revert: Reverts changes from a git commit by its hash.
  • aider_list_files: Lists all files in a given directory.
  • aider_list_git_branches: Returns a list of git branches in the given directory.
  • aider_mcp_check_whitelist: Checks what glob paths are whitelisted for this Aider MCP server.
  • aider_message_prompt: Starts aider as a background process with a given message prompt.
  • aider_read_config_yaml: Returns the full content of the .aider.conf.yml in the directory.
  • aider_read_file_contents: Reads the contents of a given filepath.
  • aider_setup_config_yaml: Creates the .aider.conf.yml file in the directory.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured