Skip to main content
Glama

Aider MCP 서버 - 실험적

AI 코딩 작업을 Aider에 오프로드하여 개발 효율성과 유연성을 향상시키는 모델 컨텍스트 프로토콜 서버입니다.

개요

이 서버를 통해 Claude Code는 AI 코딩 작업을 최고의 오픈소스 AI 코딩 어시스턴트인 Aider에 위임할 수 있습니다. 특정 코딩 작업을 Aider에 위임함으로써 비용을 절감하고, 코딩 모델을 제어하며, Claude Code를 더욱 체계적으로 운영하여 코드 검토 및 수정 작업을 수행할 수 있습니다.

Related MCP server: MCP Unified Server

설정

  1. 저장소를 복제합니다.

지엑스피1

  1. 종속성 설치:

uv sync
  1. 환경 파일을 만듭니다.

cp .env.sample .env
  1. Aider에서 사용하려는 모델에 필요한 API 키를 갖도록 .env 파일에서 API 키를 구성하세요(또는 mcpServers "env" 섹션을 사용하세요):

GEMINI_API_KEY=your_gemini_api_key_here OPENAI_API_KEY=your_openai_api_key_here ANTHROPIC_API_KEY=your_anthropic_api_key_here ...see .env.sample for more
  1. .mcp.json 을 프로젝트 루트에 복사하여 입력하고 --directory 를 이 프로젝트의 루트 디렉토리를 가리키도록 업데이트하고 --current-working-dir 프로젝트 루트를 가리키도록 업데이트합니다.

{ "mcpServers": { "aider-mcp-server": { "type": "stdio", "command": "uv", "args": [ "--directory", "<path to this project>", "run", "aider-mcp-server", "--editor-model", "gpt-4o", "--current-working-dir", "<path to your project>" ], "env": { "GEMINI_API_KEY": "<your gemini api key>", "OPENAI_API_KEY": "<your openai api key>", "ANTHROPIC_API_KEY": "<your anthropic api key>", ...see .env.sample for more } } } }

테스트

gemini-2.5-pro-exp-03-25로 실행된 테스트

모든 테스트를 실행하려면:

uv run pytest

특정 테스트를 실행하려면:

# Test listing models uv run pytest src/aider_mcp_server/tests/atoms/tools/test_aider_list_models.py # Test AI coding uv run pytest src/aider_mcp_server/tests/atoms/tools/test_aider_ai_code.py

참고: AI 코딩 테스트에는 Gemini 모델에 대한 유효한 API 키가 필요합니다. 테스트를 실행하기 전에 .env 파일에 키를 설정하세요.

이 MCP 서버를 Claude Code에 추가하세요

gemini-2.5-pro-exp-03-25 로 추가

claude mcp add aider-mcp-server -s local \ -- \ uv --directory "<path to the aider mcp server project>" \ run aider-mcp-server \ --editor-model "gemini/gemini-2.5-pro-exp-03-25" \ --current-working-dir "<path to your project>"

gemini-2.5-pro-preview-03-25 로 추가

claude mcp add aider-mcp-server -s local \ -- \ uv --directory "<path to the aider mcp server project>" \ run aider-mcp-server \ --editor-model "gemini/gemini-2.5-pro-preview-03-25" \ --current-working-dir "<path to your project>"

quasar-alpha 로 추가

claude mcp add aider-mcp-server -s local \ -- \ uv --directory "<path to the aider mcp server project>" \ run aider-mcp-server \ --editor-model "openrouter/openrouter/quasar-alpha" \ --current-working-dir "<path to your project>"

llama4-maverick-instruct-basic 으로 추가

claude mcp add aider-mcp-server -s local \ -- \ uv --directory "<path to the aider mcp server project>" \ run aider-mcp-server \ --editor-model "fireworks_ai/accounts/fireworks/models/llama4-maverick-instruct-basic" \ --current-working-dir "<path to your project>"

용법

이 MCP 서버는 다음과 같은 기능을 제공합니다.

  1. AI 코딩 작업을 Aider에 오프로드합니다 .

    • 프롬프트와 파일 경로를 사용합니다.

    • Aider를 사용하여 요청된 변경 사항을 구현합니다.

    • 성공 또는 실패를 반환합니다.

  2. 사용 가능한 모델 목록 :

    • 하위 문자열과 일치하는 모델 목록을 제공합니다.

    • 지원되는 모델을 검색하는 데 유용합니다.

사용 가능한 도구

이 MCP 서버는 다음 도구를 제공합니다.

1. aider_ai_code

이 도구를 사용하면 제공된 프롬프트와 지정된 파일을 기반으로 AI 코딩 작업을 수행하기 위해 Aider를 실행할 수 있습니다.

매개변수:

  • ai_coding_prompt (문자열, 필수): AI 코딩 작업을 위한 자연어 지침입니다.

  • relative_editable_files (문자열 목록, 필수): Aider가 수정할 수 있는 파일 경로 목록( current_working_dir 기준)입니다. 파일이 없으면 자동으로 생성됩니다.

  • relative_readonly_files (문자열 목록, 선택 사항): Aider가 컨텍스트를 위해 읽을 수 있지만 수정할 수는 없는 파일 경로 목록( current_working_dir 기준)입니다. 기본값은 빈 목록 [] 입니다.

  • model (문자열, 선택 사항): Aider가 코드 생성에 사용해야 하는 기본 AI 모델입니다. 기본값은 "gemini/gemini-2.5-pro-exp-03-25" 입니다. list_models 도구를 사용하여 사용 가능한 다른 모델을 찾을 수 있습니다.

  • editor_model (문자열, 선택 사항): Aider가 코드 편집/개선에 사용해야 하는 AI 모델입니다. 특히 아키텍트 모드를 사용할 때 유용합니다. 이 값을 지정하지 않으면 Aider의 내부 로직에 따라 기본 model 사용될 수 있습니다. 기본값은 None 입니다.

예시 사용(MCP 요청 내):

클로드 코드 프롬프트:

Use the Aider AI Code tool to: Refactor the calculate_sum function in calculator.py to handle potential TypeError exceptions.

결과:

{ "name": "aider_ai_code", "parameters": { "ai_coding_prompt": "Refactor the calculate_sum function in calculator.py to handle potential TypeError exceptions.", "relative_editable_files": ["src/calculator.py"], "relative_readonly_files": ["docs/requirements.txt"], "model": "openai/gpt-4o" } }

보고:

  • 간단한 사전: {success, diff}

    • success : boolean - 작업이 성공했는지 여부.

    • diff : 문자열 - 파일에 적용된 변경 사항의 차이점입니다.

2. list_models

이 도구는 주어진 하위 문자열과 일치하는 Aider가 지원하는 사용 가능한 AI 모델을 나열합니다.

매개변수:

  • substring (문자열, 필수): 사용 가능한 모델 이름 내에서 검색할 하위 문자열입니다.

예시 사용(MCP 요청 내):

클로드 코드 프롬프트:

Use the Aider List Models tool to: List models that contain the substring "gemini".

결과:

{ "name": "list_models", "parameters": { "substring": "gemini" } }

보고:

  • 제공된 하위 문자열과 일치하는 모델 이름 문자열 목록입니다. 예: ["gemini/gemini-1.5-flash", "gemini/gemini-1.5-pro", "gemini/gemini-pro"]

건축학

서버는 다음과 같이 구성되어 있습니다.

  • 서버 계층 : MCP 프로토콜 통신을 처리합니다.

  • 원자층 : 개별적이고 순수한 기능적 구성 요소

    • 도구 : 특정 기능(AI 코딩, 모델 목록)

    • 유틸리티 : 상수 및 도우미 함수

    • 데이터 유형 : Pydantic을 사용한 유형 정의

모든 구성품은 신뢰성을 위해 철저히 테스트되었습니다.

코드베이스 구조

이 프로젝트는 다음과 같은 주요 디렉토리와 파일로 구성됩니다.

. ├── ai_docs # Documentation related to AI models and examples │ ├── just-prompt-example-mcp-server.xml │ └── programmable-aider-documentation.md ├── pyproject.toml # Project metadata and dependencies ├── README.md # This file ├── specs # Specification documents │ └── init-aider-mcp-exp.md ├── src # Source code directory │ └── aider_mcp_server # Main package for the server │ ├── __init__.py # Package initializer │ ├── __main__.py # Main entry point for the server executable │ ├── atoms # Core, reusable components (pure functions) │ │ ├── __init__.py │ │ ├── data_types.py # Pydantic models for data structures │ │ ├── logging.py # Custom logging setup │ │ ├── tools # Individual tool implementations │ │ │ ├── __init__.py │ │ │ ├── aider_ai_code.py # Logic for the aider_ai_code tool │ │ │ └── aider_list_models.py # Logic for the list_models tool │ │ └── utils.py # Utility functions and constants (like default models) │ ├── server.py # MCP server logic, tool registration, request handling │ └── tests # Unit and integration tests │ ├── __init__.py │ └── atoms # Tests for the atoms layer │ ├── __init__.py │ ├── test_logging.py # Tests for logging │ └── tools # Tests for the tools │ ├── __init__.py │ ├── test_aider_ai_code.py # Tests for AI coding tool │ └── test_aider_list_models.py # Tests for model listing tool
  • src/aider_mcp_server : 주요 애플리케이션 코드가 들어 있습니다.

    • atoms : 기본 구성 요소를 담습니다. 원자는 순수 함수 또는 최소한의 종속성을 가진 간단한 클래스로 설계되었습니다.

      • tools : 여기의 각 파일은 특정 MCP 도구( aider_ai_code , list_models )에 대한 핵심 논리를 구현합니다.

      • utils.py : 기본 모델 이름과 같은 공유 상수를 포함합니다.

      • data_types.py : 요청/응답 구조에 대한 Pydantic 모델을 정의하여 데이터 유효성 검사를 보장합니다.

      • logging.py : 콘솔 및 파일 출력에 대한 일관된 로깅 형식을 설정합니다.

    • server.py : MCP 서버를 오케스트레이션합니다. 서버를 초기화하고, atoms/tools 디렉터리에 정의된 도구를 등록하고, 수신 요청을 처리하고, 적절한 도구 로직으로 라우팅하고, MCP 프로토콜에 따라 응답을 반환합니다.

    • __main__.py : 명령줄 인터페이스 진입점( aider-mcp-server )을 제공하고 --editor-model 같은 인수를 구문 분석하며 server.py 에 정의된 서버를 시작합니다.

    • tests : src 디렉토리의 구조를 반영하는 테스트를 포함하고 있으며, 각 구성 요소(특히 Atom)가 예상대로 작동하는지 확인합니다.

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/disler/aider-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server