MCP TypeScript SDK — MCP 프로토콜
MCP·Skill / MCP 프로토콜 / ts-sdk.html
TypeScript로 MCP 서버와 클라이언트를 만드는 공식 SDK
기본 정보
| 프로그램 이름 | MCP TypeScript SDK (MCP 타입스크립트 SDK) |
|---|---|
| 한 줄 소개 | TypeScript로 MCP 서버와 클라이언트를 만드는 공식 SDK |
| 개발·유지 | Model Context Protocol 프로젝트 |
| 공식 홈페이지 | https://modelcontextprotocol.io/docs/sdk |
| 공식 문서 | https://github.com/modelcontextprotocol/typescript-sdk |
| 설치·배포 | npm install @modelcontextprotocol/sdk |
| 동작 환경 | Node.js · Bun · Deno |
| 라이선스 | MIT 라이선스 |
| 안정 버전 | 1.32.1 (npm, 2026-10 확인) — 확인일 2026-10-18 |
| GitHub 저장소 | https://github.com/modelcontextprotocol/typescript-sdk |
| 분류 | MCP 프로토콜 (태그: MCP, SDK, TypeScript, 서버 개발, 클라이언트) |
이 프로그램은 무엇인가?
MCP TypeScript SDK는 MCP 서버와 클라이언트를 TypeScript로 만드는 공식 SDK입니다. 2026년에 Node.js에 종속되지 않도록 Web 표준(Web Standards) 기반으로 재작성되어 Bun·Deno·Cloudflare Workers에서도 동작합니다.
타입 안전한 툴 정의, stdio·Streamable HTTP 전송, OAuth 인증까지 프로토콜의 핵심 기능을 모두 제공합니다. Anthropic의 Claude를 포함한 다양한 MCP 호스트에 연결할 수 있는 서버를 만들 때 주로 사용합니다.
어떤 문제를 해결하는가?
- 외부 API나 내부 도구를 MCP 서버로 노출해야 하는 상황
- TypeScript 환경에서 타입 안전하게 MCP 클라이언트를 만들어야 하는 상황
- Node.js 외 런타임(Bun·Deno·Workers)에서도 동작하는 서버가 필요한 상황
주요 기능
타입 안전 서버 정의
Zod 스키마로 도구 입력·출력을 정의
- 활용 상황: 잘못된 호출을 컴파일 타임에 방지
- 얻는 결과: 자동 타입 추론으로 클라이언트 코드 생성
- 제한 사항: 스키마 설계 학습 필요
다중 전송
stdio·Streamable HTTP 전송을 내장 지원
- 활용 상황: 로컬·원격 서버 모두 구현
- 얻는 결과: 전송 교체 없이 배포 환경 선택
- 제한 사항: 원격 배포 시 CORS·인증 설정 필요
OAuth 지원
Bearer 토큰·리프레시 플로우 내장
- 활용 상황: 인증이 필요한 서버 구현
- 얻는 결과: 안전한 원격 접근
- 제한 사항: OAuth 공급자 설정이 필요할 수 있음
Web 표준 기반
Node.js에 묶이지 않는 크로스 런타임 지원
- 활용 상황: Bun·Deno·Workers에서 동작
- 얻는 결과: 번들 크기 감소·이식성 향상
- 제한 사항: 일부 Node 전용 API 사용 시 제한
설치 및 실행
npm
프로젝트에 SDK를 설치합니다.
npm install @modelcontextprotocol/sdk
Bun
Bun 패키지 관리자로 설치합니다.
bun add @modelcontextprotocol/sdk
Deno
JSR 또는 npm 호환으로 설치합니다.
deno add jsr:@modelcontextprotocol/sdk
실제 사용 예제
서버 생성
McpServer 인스턴스를 만들고 도구를 등록합니다.
new McpServer({name:'demo',version:'1.0.0'})
도구 등록
server.tool()로 도구와 스키마를 정의합니다.
server.tool('get_weather','City name',{city:z.string()},...)
전송 연결
StdioServerTransport 또는 StreamableHTTPServerTransport를 연결합니다.
await server.connect(new StdioServerTransport())
장점과 한계
장점
- MCP 공식 프로젝트, 가장 활발히 유지되는 SDK
- Web 표준 기반으로 Bun·Deno·Workers 호환
- 타입 안전 도구 정의와 자동 코드 생성
- MIT 라이선스
사용 전에 고려할 점
- 2026-07-28 사양 변경에 맞춘 SDK v2 마이그레이션 필요할 수 있음
- Zod·타입스크립트 학습 곡선
- 대형 서버는 번들 크기 관리 필요
비슷한 프로그램과 비교
| 프로그램 | 특징 | 이런 경우에 적합 |
|---|---|---|
| MCP Python SDK | Python 데코레이터 기반 공식 SDK | Python 백엔드·데이터 도구 |
| Go SDK | Go 21+ 기반 Tier 1 SDK | Go 인프라 팀 |
| mcp-use | Python 프레임워크, 서버·클라이언트 추상화 | 빠른 프로토타이핑 |
공식 자료 및 추가 학습
- 공식 홈페이지 — https://modelcontextprotocol.io/docs/sdk
- 공식 문서 / 지식베이스 — https://github.com/modelcontextprotocol/typescript-sdk
- 설치·배포 — npm install @modelcontextprotocol/sdk
- 릴리스 노트 — https://github.com/modelcontextprotocol/typescript-sdk/releases
- 소스 / 개발 자료 — https://github.com/modelcontextprotocol/typescript-sdk
버전·지원 환경 정보는 2026-10-18 기준으로 공식 사이트에서 확인한 값입니다. 설치 명령은 사용하는 배포판과 버전에 따라 달라질 수 있으므로 공식 설치 문서를 함께 확인하세요.
실제 실행 화면
합성 예시 — 실제 실행 결과가 아닙니다. 화면은 합성 예시이며 실제 실행 결과가 아닙니다.

실제 운영 중인 서버
이 문서는 화면 표시용 가상 디렉터리의 항목입니다. 실제 서버 파일시스템과 연결되지 않으며, 파일 실행이나 시스템 명령을 수행하지 않습니다.