← AI Engineer
MCP · 툴 설계

다들 기본값만 썼다 — 깃허브가 MCP 툴을 100개에서 40개로 줄인 이유

깃허브 MCP 서버가 툴 100개를 넘기며 에이전트를 오히려 헷갈리게 만들던 시절, 툴셋과 동적 선택 같은 정교한 해법을 만들어놓고도 정작 다들 기본 설정만 썼다는 실패담부터 짚음. 목록 풀 리퀘스트 하나에서 출력 토큰 75%를 줄인 사례, 읽기 전용 모드를 쓰는 사용자가 17%인데 이를 노출하는 클라이언트가 없는 실태, 동적 클라이언트 등록을 거부한 이유, 주당 툴 호출 700만 건을 무상태 서버로 처리하는 구조까지 구체적으로 보여줌.

Sam Morrow GitHub발표 2026-05-2620분 26초AI Engineer

한줄 코멘트. 컨텍스트를 줄인 세 걸음이 이 발표의 알맹이다. 도구를 흔한 쓰임에 맞춰 좁혀 첫 적재를 49% 줄이고, 만들고 읽고 고치고 지우는 것을 묶어 기본 도구를 마흔 개쯤으로 낮추고, 응답에서 필요 없는 것을 걷어 목록 조회 하나에서 75%를 덜어냈다. 앞의 둘은 넣는 것을 줄이고 셋째는 나오는 것을 줄인다는 점이 갈린다.

1. 무엇을 겪은 이야기인가

깃허브에서 *MCP 서버 개발을 이끄는 사람이 발표한다. 원격 서버를 만들고 키우며 부딪힌 것과 그것을 어떻게 넘겼는지가 주제다.

시작은 도구를 너무 많이 낸 것이었다. 당시 100개가 넘는 도구를 골랐고 그것이 너무 많았다고 스스로 말한다.

2. 컨텍스트를 줄인 세 걸음

컨텍스트를 줄인 세 걸음

도구를 좁힌다흔한 쓰임에 맞춰 깎아 첫 적재를 49% 줄였다
묶는다만들고 읽고 고치고 지우는 것을 하나로. 기본 40개
출력을 걷어낸다목록 조회 하나에서 75%를 덜어냈다
컨텍스트를 줄인 세 걸음이다. 앞의 둘은 넣는 것을 줄이고 셋째는 나오는 것을 줄인다.

첫 걸음은 도구를 흔한 쓰임에 맞춰 깎은 것이다. 이것으로 첫 적재가 49% 줄었다.

둘째는 묶는 것이다. 만들고 읽고 고치고 지우는 *CRUD 도구를 하나로 묶어 더 줄였다. 기본 설정으로 쓰면 도구가 약 40개가 된다.

셋째가 앞의 둘과 결이 다르다. 도구 목록이 아니라 응답이 컨텍스트를 먹고 있었다. 목록 조회 도구 하나에서 나오는 것을 필요한 것만 남기자 출력 토큰이 75% 넘게 줄었다.

3. 정교한 해법을 만들어도 다들 기본값만 쓴다

발표에서 가장 값나가는 실패담이 이 대목이다.

도구가 많아 에이전트가 헷갈리는 것을 풀려고 도구 묶음이나 상황에 따라 고르는 방식 같은 장치를 만들어 뒀다. 그런데 정작 쓰는 사람들은 기본 설정만 썼다.

읽기 전용 모드도 같은 자리에 있다. 사용자의 약 17%가 쓰는데, 그 모드를 화면에 내주는 클라이언트가 없다고 말한다. 만들어 둔 것과 실제로 닿는 것 사이에 틈이 있다는 이야기다.

그래서 기본값을 잘 고르는 일이 정교한 선택지를 만드는 일보다 앞선다.

4. 권한이 모자랄 때

권한이 모자랄 때

부른다에이전트가 도구를 쓴다
모자란다권한이 미치지 않는다
묻는다사용자에게 허락을 구한다
이어간다허락하면 호출이 안 끊긴다
권한이 모자랄 때 무너지지 않게 하는 순서다. 모자라면 실패로 끝내지 않고 그 자리에서 묻는다.

권한을 다루는 방식도 같은 결이다. 에이전트가 도구를 부르는데 *스코프가 모자라면 거기서 실패로 끝내지 않는다.

모자란다는 신호를 돌려주고, 사용자에게 그 권한을 열어도 되는지 그 자리에서 묻는다. 허락이 오면 멈춰 있던 호출이 그대로 이어진다.

5. 요청마다 서버를 새로 만든다

규모를 감당하는 구조도 단순하다. 요청이 올 때마다 새 서버 인스턴스를 만들고, 그 시작 시점에 그 사용자의 설정과 권한에 맞는 도구만 붙인다. 그래서 사용자는 자기가 요청한 것이나 쓸 수 있는 것만 받는다.

같은 사용자를 같은 서버로 보내는 장치는 두지 않는다고 한다. 이 방식으로 주간 도구 호출 약 700만 건을 처리하는 규모까지 왔다.

6. 발표가 밝히지 않은 것과 어긋난 대목

주간 도구 호출 수가 발표 안에서 갈린다. 중반에는 약 700만 건이라 하고 끝부분에서는 800만 건에 가까워지고 있다고 말한다. 어느 쪽이 맞는지는 발표만으로 알 수 없다.

49%와 75%가 무엇을 기준으로 잰 값인지 좁혀지지 않는다. 49%는 첫 적재를 줄인 폭이고 75%는 도구 하나의 출력에서 줄인 폭인데, 둘을 합쳐 실제 대화 하나에서 얼마가 줄었는지는 나오지 않는다.

도구를 줄여서 에이전트가 실제로 더 잘하게 됐는지가 없다. 헷갈렸다는 것이 문제의 출발이었으니 줄인 뒤 성공률이 어떻게 달라졌는지가 있어야 하는데, 성공률 이야기는 95%가 넘는다는 현재 값 하나로만 나온다.

발표자가 스스로 밝히는 것 둘은 적어 둘 만하다. 모든 실패를 막을 수는 없다고 말한다. 에이전트는 자기가 어느 저장소에 쓸 권한이 있는지 모르고 여전히 없는 것을 지어내기 때문이다. 그리고 특정 대목을 설명하며 이건 이제 낡은 이야기라고 스스로 못 박는다.

용어

*MCP
에이전트가 바깥 도구나 자료에 붙는 방식을 정해 둔 규격
*CRUD
만들고 읽고 고치고 지우는 네 가지 기본 조작
*스코프
그 요청이 무엇까지 건드려도 되는지 정해 둔 권한 범위