MCP architecture 는 삼각형. 세 역할, 세 책임, 누가 누구에게 말하는지 엄격한 룰.
- Host — user 가 실제로 쓰는 application. Claude Desktop, VS Code with Copilot, Cursor, custom assistant. UX 소유, LLM (또는 그 API 호출) 운영, user 한테 tool 승인 받는 등 security 결정 책임.
- Client — host 안의 한 server 와 MCP 말하는 코드 조각. 3 MCP server 쓰는 host 는 client 3 개 — server 마다 한 개. Client 는 server 와 1:1 — pool 안 해.
- Server — client 한테 tool, resource, prompt 노출하는 별도 process (또는 remote service). Weather server, GitHub server, Postgres server. Server 들 서로 모름; 각자 자기 client 와만 말.
엄격한 룰: server 는 다른 server 에 절대 말 안 하고, server 는 host 에 직접 닿지 않음. Cross-server 조율 다 host 경유. 의도적이야. 모든 server 의 blast radius 가 bounded — 악의적이거나 buggy server 가 할 수 있는 최악은 자기 host 한테만 misbehave. Host 가 security 경계; protocol 이 topology 로 강제.
두 결과: 첫째, capability 합성 은 host 의 일 — user 가 'Postgres 에서 user 찾아 요약을 Slack 에 post' 라고 하면, host 가 Postgres server 에 한 호출, Slack server 에 한 호출 orchestrate. Server 들 서로 모름. 둘째, 권한은 server 별: GitHub server 에 'read code' 부여가 filesystem server 에 같은 권한 부여 안 함, vice versa. 삼각형이 trust 모델.