Aider MCP 서버 - 실험적
AI 코딩 작업을 Aider에 오프로드하여 개발 효율성과 유연성을 향상시키는 모델 컨텍스트 프로토콜 서버입니다.
개요
이 서버를 통해 Claude Code는 AI 코딩 작업을 최고의 오픈소스 AI 코딩 어시스턴트인 Aider에 위임할 수 있습니다. 특정 코딩 작업을 Aider에 위임함으로써 비용을 절감하고, 코딩 모델을 제어하며, Claude Code를 더욱 체계적으로 운영하여 코드 검토 및 수정 작업을 수행할 수 있습니다.
설정
- 저장소를 복제합니다.
지엑스피1
- 종속성 설치:
- 환경 파일을 만듭니다.
- Aider에서 사용하려는 모델에 필요한 API 키를 갖도록
.env
파일에서 API 키를 구성하세요(또는 mcpServers "env" 섹션을 사용하세요):
.mcp.json
을 프로젝트 루트에 복사하여 입력하고--directory
를 이 프로젝트의 루트 디렉토리를 가리키도록 업데이트하고--current-working-dir
프로젝트 루트를 가리키도록 업데이트합니다.
테스트
gemini-2.5-pro-exp-03-25로 실행된 테스트
모든 테스트를 실행하려면:
특정 테스트를 실행하려면:
참고: AI 코딩 테스트에는 Gemini 모델에 대한 유효한 API 키가 필요합니다. 테스트를 실행하기 전에 .env
파일에 키를 설정하세요.
이 MCP 서버를 Claude Code에 추가하세요
gemini-2.5-pro-exp-03-25
로 추가
gemini-2.5-pro-preview-03-25
로 추가
quasar-alpha
로 추가
llama4-maverick-instruct-basic
으로 추가
용법
이 MCP 서버는 다음과 같은 기능을 제공합니다.
- AI 코딩 작업을 Aider에 오프로드합니다 .
- 프롬프트와 파일 경로를 사용합니다.
- Aider를 사용하여 요청된 변경 사항을 구현합니다.
- 성공 또는 실패를 반환합니다.
- 사용 가능한 모델 목록 :
- 하위 문자열과 일치하는 모델 목록을 제공합니다.
- 지원되는 모델을 검색하는 데 유용합니다.
사용 가능한 도구
이 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 요청 내):
클로드 코드 프롬프트:
결과:
보고:
- 간단한 사전: {success, diff}
success
: boolean - 작업이 성공했는지 여부.diff
: 문자열 - 파일에 적용된 변경 사항의 차이점입니다.
2. list_models
이 도구는 주어진 하위 문자열과 일치하는 Aider가 지원하는 사용 가능한 AI 모델을 나열합니다.
매개변수:
substring
(문자열, 필수): 사용 가능한 모델 이름 내에서 검색할 하위 문자열입니다.
예시 사용(MCP 요청 내):
클로드 코드 프롬프트:
결과:
보고:
- 제공된 하위 문자열과 일치하는 모델 이름 문자열 목록입니다. 예:
["gemini/gemini-1.5-flash", "gemini/gemini-1.5-pro", "gemini/gemini-pro"]
건축학
서버는 다음과 같이 구성되어 있습니다.
- 서버 계층 : MCP 프로토콜 통신을 처리합니다.
- 원자층 : 개별적이고 순수한 기능적 구성 요소
- 도구 : 특정 기능(AI 코딩, 모델 목록)
- 유틸리티 : 상수 및 도우미 함수
- 데이터 유형 : Pydantic을 사용한 유형 정의
모든 구성품은 신뢰성을 위해 철저히 테스트되었습니다.
코드베이스 구조
이 프로젝트는 다음과 같은 주요 디렉토리와 파일로 구성됩니다.
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)가 예상대로 작동하는지 확인합니다.
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Claude Code가 AI 코딩 작업을 Aider에 위임하여 비용을 절감하고 특정 코딩 작업을 처리하는 모델을 보다 효과적으로 제어할 수 있도록 합니다.
Related MCP Servers
- -securityAlicense-qualityProvides code manipulation, execution, and version control capabilities. It allows AI assistants to read, write, and execute code while maintaining a history of changes.Last updated -8PythonMIT License
- -securityAlicense-qualityAI-powered assistant that connects Claude to video encoding workflows, translating cryptic errors into plain English and providing actionable solutions for troubleshooting encoding jobs.Last updated -1PythonMIT License
Code MCP Serverofficial
-securityAlicense-qualityEnables AI agents and assistants like Goose or Claude to interact with VS Code through the Model Context Protocol.Last updated -14TypeScriptApache 2.0- -securityFlicense-qualityConnects Claude AI to QGIS through the Model Context Protocol, allowing Claude to directly interact with and control QGIS for tasks like project creation, layer manipulation, and code execution.Last updated -286Python