MCP와 함께 등장한 ‘VS Code 에이전트’
혼자서도 잘하는 AI 에이전트
최근 깃허브에서는 깃허브 코파일럿(이하 코파일럿)을 활용해 VS Code에서 에이전트(agent) 모드로 MCP 기능을 사용할 수 있다는 소식을 전했습니다.

기존 코파일럿에서는 두 가지 모드를 사용할 수 있었습니다. 먼저 질문(ask) 모드는 “XX는 뭐야?”와 같은 질문에 대한 답변을 제공하고, 편집(edit)모드는 VS Code에 열려 있는(인덱스 된) 파일을 수정하는 기능을 제공합니다. 이번에 새롭게 등장한 에이전트 모드는 사용자가 제공한 프롬프트의 최종 목표를 파악하고, 이에 필요한 도구를 호출하여 작업을 완료하는 기능으로, 작업 중인 IDE 외부로의 확장에 의미를 둘 수 있습니다.
에이전트 모드의 한 가지 사용 예시를 들면, 슬랙 MCP와 구글 캘린더 MCP를 VS Code에 연동하여 다음과 같은 시나리오의 작업이 가능합니다.
“내일 있을 회의 일정을 확인해서 내 캘린더에 일정으로 추가해 줘”
에이전트 모드는 사용자의 목적을 프롬프트로부터 파악하고, 코파일럿이 스스로 슬랙의 채널에서 ‘내일 회의 일정’과 연관된 메시지를 찾아 주제와 시간, 참가자 등의 필요한 내용을 파악하여 구글 캘린더에 추가하도록 합니다. 이번 글에서는 이 MCP 기능의 사용 과정을 위주로 다뤄보겠습니다. (MCP에 대한 더 자세한 설명은 요즘IT에 발행된 요즘 핫한 ‘MCP’, 정체가 뭘까?를 읽어보시면 좋습니다.)
MCP 그리고 VS Code
앞서 에이전트 모드의 핵심 기능은 외부 도구를 호출하는 것이라고 설명했는데 이를 위해서는 두 가지 기술이 필요합니다. 하나는 API와 같이 외부 도구를 사용자가 직접 호출하지 않고도 프로그래밍적으로 사용할 수 있게 하는 기술 이 필요하고, 다른 하나는 이 기술을 AI가 사용할 수 있게 알려주는 기술입니다.
이 중 첫 번째 기술은 자동화의 관점에서 AI보다 한참 전에 이미 구현되어 있었습니다. 그리고 두 번째 기술 MCP는 2024년 11월 말에 공개되었습니다. 물론 MCP 외에도 이 에이전트 프로토콜에는 구글의 A2A와 같은 방법들도 존재하지만, 글에서는 사실상 글로벌 표준으로 간주할 수 있는 MCP라는 단어를 사용하겠습니다.
한편, 앞서 소개한 MCP 글이 쓰일 당시, MCP는 사실상 클로드(Claude)의 전용 기술이라 할 수 있었습니다. 그도 그럴 것이 MCP 형식을 클로드를 개발한 앤트로픽(Anthropic)에서 제안한 만큼, 해당 서비스에서 제일 활발하게 사용되었으니까요. 시간이 지나며 MCP를 차용하는 서비스가 늘어나며 제가 사용하는 코파일럿과 VS Code에서도 MCP 기능을 지원하게 되었습니다.
에이전트 모드, 뭐가 다를까?
코파일럿이 기존에 제공하는 기능 중 질문(Ask) 모드는 이어지는 이미지와 같이 질문 > 답변의 형식을 따르고 있습니다. 그리고 이 역할을 기준으로 파일을 첨부하거나, 음성을 통해 사용자의 입력을 받거나, AI 모델을 선택하는 등 사용자 인터페이스(UI)가 설계되어 있습니다.
새로 나온 코파일럿의 에이전트 모드를 사용하기 위해서는 몇 가지 설정을 해야 합니다. 먼저 VS Code는 기본으로 코파일럿 기능을 제공하지 않기 때문에, 이를 사용할 수 있도록 코파일럿 익스텐션을 추가합니다. 이어서 VS Code의 설정에서 에이전트 모드를 활성화합니다.
설정은 왼쪽 아래의 기어 모양을 클릭하여 열 수 있으며, 이후 [Settings] 탭의 검색 창에 agent를 입력하여 [Chat > Agent] 를 Enabled로 설정합니다. 만약 이 설정이 나타나지 않는다면, 최신 버전의 VS Code로 업데이트해야 합니다.
마지막으로 화면을 검색 결과 창에서 더 내려, MCP의 [Edit in settings.json]을 클릭해 설정 구성 파일을 열어둡니다. 지금은 사용하지 않지만, VS Code에서 기본으로 제공하는 MCP 서버는 없기 때문에 코파일럿이 MCP를 사용할 수 있게 코드를 추가해야 합니다.

한편 ‘설정을 마친’ 에이전트 모드는, 질문 모드와는 다르게 @ 키워드를 사용할 수 없는 점과, 추가된 MCP 도구를 확인할 수 있는 UI 차이가 있습니다. 화면에는 @ to chat with extensions라는 문구가 표기되어 있지만, 의도대로 사용할 수는 없습니다.

VS Code에 MCP 연결하기
A라는 서비스의 MCP를 VS Code에 추가하는 과정은 크게 2단계로 나누어볼 수 있습니다.
- 먼저 A 서비스에 프로그래밍적으로 접근할 수 있도록 하는 키(API, Token 등)를 발급합니다.
- 발급받은 키를 포함하여 A에서 제공하는 MCP 서버의 코드를 VS Code에 추가합니다.
이제 코파일럿은 VS Code에 저장되어 있는 정보를 이용해 A 서비스에 직접 접근할 수 있습니다.

설명만으로는 와닿지 않을 수 있으니, 깃허브의 MCP를 예시로 사용해 보겠습니다.
깃허브 MCP를 확인하기 위해 구글에 github mcp server를 검색하면 검색결과에 이어지는 이미지와 같은 리포지토리를 확인할 수 있습니다. (github mcp를 검색해도 무방합니다.)

이 중 첫 번째 리포지토리를 사용합니다. 리포지토리의 리드미 파일에서 볼 수 있듯, 깃허브의 MCP는 다행히 딥링크 기능을 제공하기 때문에, 버튼 클릭만 하면 VS Code에 바로 추가할 수 있습니다.


딥링크를 사용하지 않고 VS Code에 수동으로 추가하려면, 아까 열었던 settings.json 파일에 아래와 같은 MCP 서버 코드의 내용을 추가하고, GITHUB_PSERONAL_ACCESS_TOKEN을 깃허브에서 발급받은 “ghp_…”로 시작하는 토큰값으로 변경합니다.
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "github_token",
"description": "GitHub Personal Access Token",
"password": true
}
],
"servers": {
"github": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}"
}
}
}
}
}
특이점으로 코드 중간에 “command”: “docker”라는 내용에서 알 수 있듯, MCP 서버 실행을 위해 도커를 사용하므로 사용자의 PC에 도커가 설치 및 실행되고 있어야 합니다.
설정을 저장한 후 VS Code를 재시작하면, 깃허브에서 제공하는 30개의 MCP 도구가 에이전트 모드에 추가된 것을 확인할 수 있습니다. 깃허브 외에도 많은 서비스들이 MCP 기능을 제공하고 있으며, 이전 검색 결과 화면의 두 번째 리포지토리, modelcontextprotocol/servers 리포지토리에서 확인할 수 있습니다. 이 리포지토리에는 공식, 비공식을 모두 포함해 다양한 서비스들의 MCP가 목록으로 있는 만큼 꼭 확인해 보기를 권장합니다.

이번에는 MCP의 또 다른 예시로 사용자 PC의 파일에 접근할 수 있도록 하는 Filesystem MCP를 추가해 보겠습니다.
MCP 서버를 실행하는 방식에는 도커 방식과 NPX 방식이 있는데, 도커 사용에 익숙하지 않다면 NPX 방법을 사용하는 것이 좋습니다. 이전에 깃허브 MCP는 도커 방식만 지원했기 때문에 이번 파일 시스템에서는 NPX 방식을 사용해 보겠습니다.
이전에 작업했던 설정 파일의 내용 중 “servers”:의 하위 항목으로 “github”: { … }에 이어 “filesystem”: {...} 코드를 작성합니다. 이때 코드의 ${workspaceFolder} 부분 대신 파일을 읽어올 디렉터리를 추가한 뒤, VS Code를 재실행하면 11개의 파일시스템 MCP 툴이 새롭게 추가되는 것을 확인할 수 있습니다.

글에서 다루지는 않지만, 만약 사용하려는 서비스의 MCP가 클로드 데스크탑에서 사용할 수 있는 코드를 기준으로만 설명되어 있다면, VS Code에서 사용하기 위해 “mcpServers”라는 값을 “servers”로 바꾸어 추가하거나, 이전 파일시스템에서 했던 것처럼 “servers”의 하위 항목으로 추가합니다.

MCP를 추가하는 방법을 다뤄보았으니 이제 에이전트 모드를 사용해 보겠습니다. 먼저 깃허브를 예시로 “최근 내가 멘션한 깃허브 이슈에는 어떤 것이 있지?”라는 질문을 코파일럿에 해보겠습니다.
이어서 코파일럿은 깃허브 MCP에서 제공하는 get_me와 search_issues 함수를 실행하려고 합니다. 만약 별다른 설정을 하지 않았다면, 이미지처럼 사용자가 에이전트의 활동을 확인해야만 이후 단계가 진행되도록 나타나지만, 세션과 워크스페이스(프로젝트 폴더)에서 혹은 항상 에이전트가 MCP를 자동으로 실행하도록 변경할 수도 있습니다.


예시에서 사용되는 두 함수 외에도 create_issue를 활용한 이슈 생성, merge_pull_request를 활용한 풀 리퀘스트 병합, create_pull_request_review를 사용한 코드 리뷰 작성 등 깃허브의 다양한 기능을 사용할 수 있습니다.
에이전트 모드는 깃허브의 예시처럼 코드를 다루는 개발 작업 외의 다른 ‘일반적인’ 작업도 사용 가능합니다. 예를 들어, 지메일 MCP와 구글 캘린더 MCP를 추가하면, 이어지는 이미지와 같이 코파일럿이 메일의 내용을 확인하고 이를 바탕으로 캘린더에 일정을 추가하는 ‘AI 비서’의 역할 또한 가능합니다.

만약 조금 더 개발 작업을 추가한다면, VS Code가 아닌 슬랙에서 특정 사용자들 간의 회의 일정을 캘린더를 기반으로 자동으로 조율하여, 이를 위한 구글 밋 링크를 생성해 초대하는 이메일을 보내는 기능까지도 에이전트 모드로 실행할 수 있습니다.

개발 도구는 넘어섰지만…
코파일럿의 에이전트 모드는 코파일럿의 역할을 단순한 코드 보조를 넘어, 독립적으로 작업을 수행할 수 있는 도구로 변화시키고 있습니다. 특히 MCP를 통해 API나 외부 도구 호출 등 IDE 외부의 내용에 접근하거나, 이벤트 생성 등의 영향을 줄 수 있는 점은 개발자의 생산성에 새로운 변화를 만들어낸다고 볼 수 있습니다.
하지만 현재의 MCP 도구들은 아직 초기 단계이기 때문에, 에이전트 모드에도 한계는 존재합니다.
MCP를 사용하며 제가 느낀 한계점은 다음과 같습니다.
- 도구 등록의 번거로움
새로운 도구를 VS Code에 연동하기 위해서는 각 서비스에서 제공하는 MCP 서버를 올바르게 등록해야 합니다. 글에서는 비교적 간단한 사례만 다루었지만, 대부분은 서비스에 접근하기 위한 인증(Auth)이나 API 발급 등의 별도 절차가 있기 때문에, 기존에 개발 경험이 적은 사람이라면 진입장벽이 될 수 있습니다.
- 보안 및 권한 문제
MCP는 시스템 명령어나 사용자가 등록한 API에 자유롭게 접근할 수 있습니다. 특히 모든 기능을 자동으로 허용하게 설정된 상태에서 AI가 MCP의 기능을 사용자의 의도와 다르게 잘못 사용한다면, 큰 문제가 발생할 수 있습니다. 의도하지 않은 파일 유출과 같은 보안 문제 또한 마찬가지입니다.
- AI 모델에 대한 의존성
이번 글에서는 깃허브 코파일럿을 사용했습니다. 저는 유료 요금제인 코파일럿 프로를 사용하고 있기 때문에 가능한 채팅에 제한이 없었지만, 무료 요금제라면 에이전트 모드를 포함해 사실상 하루에 2번 정도인, 월 50회의 채팅만 허용됩니다.

- AI의 한계
에이전트 모드의 한계라기보단, AI 모델의 한계라고 볼 수 있는 부분으로, AI가 프롬프트에서 사용자의 맥락을 정확하게 이해하는 것이 어려운 경우도 있습니다. 이는 사용자가 더 프롬프트를 자세하고 구체적으로 제공하는 방법으로 해결하는 방법도 있고, 모델이 발전하면서 더 자연스러운 MCP 연동이 되는 방법도 있습니다.

- UI 연동 미비
현재는 대부분의 작업이 VS Code의 Chat 화면에서 이뤄집니다. 문제는 이 Chat 화면이 AI를 사용하는 것이 주된 목적이 아니라, 코드 작업을 주된 목적으로 하는 VS Code의 기능이라는 것이죠. 예를 들어, MCP에 슬랙을 등록했다면 슬랙 버튼을 만들어 클릭한 경우, MCP를 사용할 수 있게 한다면 훨씬 더 괜찮아질 것 같습니다.

- MCP 서버의 한계
개인적으로 가장 큰 한계점이라고 느꼈던 부분입니다. 어떤 도구가 AI에 연동되기 위해서는 앞서 등록했던 것들처럼 MCP 서버가 있어야 합니다. 점점 늘어나고는 있지만, 아직 이 MCP를 제공하는 서비스는 적습니다. 서비스가 있다고 해도 제한적으로 제공하고 있어, 이 부분은 사용자에게 큰 아쉬움이 될 수 있습니다. 예를 들어, 구글 드라이브 MCP는 API의 기능들 중 파일 조회(search)만 가능합니다.

- MCP 클라이언트의 한계
이 글의 주요 내용은 아니라 자세히 언급하진 않았지만, AI에서 MCP를 사용하기 위해 VS Code와 코파일럿을 실행해야 한다는 것은 개발자가 아니라면 낯설게 느껴질 수 있습니다. 예를 들어, 피그마 작업을 해야 하는 디자이너라면, VS Code가 아닌 ‘채팅 앱’에 가까운 클로드 데스크탑 혹은 슬랙과 같은 일반적인 툴에서의 사용이 훨씬 더 나은 선택이 될 수도 있습니다.
물론 이 한계점 중 일부는 VS Code가 아닌 이전에 소개했던 ‘트레이(Trae)’를 사용하는 방법 등으로 해결할 수 있습니다. 또한 MCP 클라이언트와 SDK, 혹은 서버를 자체적으로 개발하는 방법도 있지만, 굉장히 번거롭고 복잡합니다. 그러다 보니 MCP가 발전하기 위한 시간이나, MCP를 쉽게 사용할 수 있게 하는 또 다른 SaaS에 비용을 들이는 것은 큰 차이가 없다고 볼 수 있습니다.

앞으로 기대되는 점
이러한 한계점들이 있지만 에이전트 모드가 그려내는 코파일럿의 전망은 꽤 밝습니다. 코파일럿은 코드 생성기를 넘어, 사용자의 맥락을 이해하고 적절한 도구의 사용까지 책임지는 ‘AI 에이전트’로 진화하고 있으며, 그 중심에는 MCP와 VS Code가 큰 역할을 하고 있습니다. 앞으로는 더 다양한 기능의 도구들이 나타나고, 이를 등록하는 방법 또한 간편해질 텐데요. 어쩌면 조직의 레거시 코드와 데이터, 인사이트들을 활용하는 커스텀 MCP가 등장할 날도 머지않았습니다.
그리고 VS Code가 아닌, 사용자가 더 넓은 (ex.모바일 앱) 클라이언트를 자연스럽게 사용할 수 있는 날이 온다면 코파일럿은 정말로 함께 일하는 ‘파트너 에이전트’로 자리 잡을 수 있지 않을까요? 그때는 ‘내가 일한다’보다는 ‘AI가 일하도록 내가 AI를 관리한다’라는 표현이 더 적절해질 것 같은데요. 앞으로 더욱 발전할 ‘에이전트 코파일럿’과 첫 협업을 적극 추천하며, 글을 마칩니다.
©️요즘IT의 모든 콘텐츠는 저작권법의 보호를 받는 바, 무단 전재와 복사, 배포 등을 금합니다.