# 기본 구문
claude mcp add <name> <command> [args...]
# 예시: 로컬 서버 추가
claude mcp add my-server -e API_KEY=123 -- /path/to/server arg1 arg2
2. MCP SSE 서버 추가
# 기본 구문
claude mcp add --transport sse <name> <url>
# 예시: SSE 서버 추가
claude mcp add --transport sse sse-server https://example.com/sse-endpoint
# 예시: 사용자 정의 헤더가 있는 SSE 서버 추가
claude mcp add --transport sse api-server https://api.example.com/mcp -e X-API-Key=your-key
3. MCP HTTP 서버 추가
# 기본 구문
claude mcp add --transport http <name> <url>
# 예시: 스트리밍 가능한 HTTP 서버 추가
claude mcp add --transport http http-server https://example.com/mcp
# 예시: 인증 헤더가 있는 HTTP 서버 추가
claude mcp add --transport http secure-server https://api.example.com/mcp -e Authorization="Bearer your-token"
Context7 MCP를 설치하면 개발 프레임워크의 최신 공식 문서를 참조할 수 있습니다.
claude mcp add context7 -- npx -y @upstash/context7-mcp
2.MCP SSE 서버 추가
claude mcp add --transport sse context7 https://mcp.context7.com/sse
3.MCP HTTP 서버 추가
claude mcp add --transport http context7 https://mcp.context7.com/mcp
MCP 서버 관리하기
아래와 같은 command로 서버를 관리할 수 있습니다.
# 구성된 모든 서버 목록 표시
claude mcp list
# 특정 서버의 세부 정보 가져오기
claude mcp get my-server
# 서버 제거
claude mcp remove my-server
context7 설치 후 claude code에서 아래 명령어를 입력하면 다음과 같이 설치된 MCP를 확인할 수 있습니다.
/mcp list
MCP 서버 범위 설정
MCP는 local, project, user의 3가지 범위로 추가가 가능합니다.
이 범위는 어디에서 누가 사용을 할 수 있는가를 설정하는 것입니다.
-s 옵션을 사용하면 범위 설정이 가능합니다.
예를 들면,
claude mcp add --transport http context7 -s local https://mcp.context7.com/mcp
1. local
로컬 범위 서버는 기본 구성 수준을 나타내며 프로젝트별 사용자 설정에 저장됩니다. 이러한 서버는 사용자에게만 비공개로 유지되며 현재 프로젝트 디렉터리 내에서 작업할 때만 액세스할 수 있습니다. 이 범위는 개인 개발 서버, 실험적 구성 또는 공유되어서는 안 되는 민감한 자격 증명이 포함된 서버에 이상적입니다.
2. project
프로젝트 범위 서버는 프로젝트 루트 디렉터리의.mcp.json파일에 구성을 저장하여 팀 협업을 가능하게 합니다. 이 파일은 버전 제어에 체크인되도록 설계되어 모든 팀 구성원이 동일한 MCP 도구와 서비스에 액세스할 수 있도록 보장합니다. 프로젝트 범위 서버를 추가하면 Claude Code가 자동으로 이 파일을 생성하거나 적절한 구성 구조로 업데이트합니다.
3. user
사용자 범위 서버는 프로젝트 간 접근성을 제공하여 사용자 계정에 비공개로 유지하면서 설치된 컴퓨터의 모든 프로젝트에서 사용할 수 있게 합니다. 이 범위는 개인 유틸리티 서버, 개발 도구 또는 다양한 프로젝트에서 자주 사용하는 서비스에 적합합니다.
주요 MCP 서버 리스트
MCP 서버는 주로 Github을 통해 설치 방법을 공유하고 있습니다.
Context7
Context7 MCP는 LLM이 최신 문서와 코드 예제를 실시간으로 읽고 이해할 수 있도록 돕는 도구입니다. 이 도구를 사용하면 프롬프트에 "use context7"만 추가하는 것만으로 AI가 최신 공식 문서와 코드 예제를 자동으로 연결하여 답변을 생성할 수 있습니다.
Firecrawl MCP를 사용하여 다음 URL의 콘텐츠를 스크랩하고,
프로젝트 /documentation 폴더에 LLM.txt 파일을 생성해줘.
https://codegear.info
MCP 사용방법
Playwright MCP를 사용해서 e2e 테스트를 진행해 봅니다.
e2e 테스트는 end to end의 약자로 시스템이 사용자 관점에서 처음부터 끝까지 올바르게 작동하는지 확인하는 테스트 방법입니다. 즉, 실제 사용자가 애플리케이션을 사용하는 것처럼 모든 구성 요소(데이터베이스, 프런트엔드, 백엔드, 네트워크 등)가 제대로 통합되어 기능하는지 검증하는 테스트입니다.
playwirght는 내부적으로 크로미움(오픈소스 웹브라우저)을 실행해서 페이지 요소들을 확인할 수 있습니다.
클로드 코드에서 아래 프롬프트를 입력합니다.
playwright mcp를 사용해서 메인 화면이 정상적으로 오픈되는지 확인하는 e2e 테스트를 만들어줘
우선 VSCode를 실행하고, frontend와 backend의 상위 폴더인 codegear 폴더를 열어줍니다.
README.md
README.md 파일을 만들고 아래와 같이 작성합니다.
## 프로젝트 정의
- 이 프로젝트는 CodeGear의 유튜브 채널을 홍보하는 사이트 개발을 위해 만들어졌다.
- 이 프로젝트는 frontend와 backend로 구성되어 있다.
- /frontend 폴더는 next.js 기반의 프론트엔드 프로젝트이다.
- /backend 폴더는 nest.js 기반의 백엔드 프로젝트이다.
Claude 실행
터미널에claude를 입력합니다.
Claude 초기화
/init 명령으로 프로젝트를 초기화 합니다.
초기화가 완료되면 CLAUDE.md 파일이 생성됩니다.
구글 로그인 기능 추가
아래와 같은 프롬프트를 입력합니다.
구글 로그인 기능을 추가하려고 하는데 백엔드와 프론트엔드로 나누어서 각각 필요한 기능들을 추가해줘.
이렇게 하면 클로드코드가 frontend와 backend에 필요한 코드들을 생성하고 테스트까지 진행을 하게됩니다.
구글 로그인 기능 테스트
다음과 같은 순서로 테스트를 진행합니다.
프로그램 실행하기
프론트엔드 실행
frontend 폴더에서 "npm run dev" 를 실행합니다.
백엔드 실행
backend 폴더에서 "npm run start:dev"를 실행합니다.
브라우저에서 확인하기
브라우저 주소창에 http://localhost:3001을 입력하면 아래와 같은 화면이 보입니다.
우측 상단의 Google로 로그인 버튼을 클릭합니다.
로그인 하려는 계정을 클릭합니다.
CodeGear 서비스 로그인 안내창에서 "계속" 버튼을 클릭하면 로그인이 완료되고 로그인한 사용자 정보가 표시됩니다.
이 프로젝트 아키텍처는 실서비스에 사용할 수 있는 구조입니다.
백엔드와 프론트엔드로 나누어져 있어서 전문적인 서비스를 개발하는데 사용 가능합니다.
이 기반위에 여러가지 필요한 설정과 기능들을 추가해서 여러분의 서비스를 개발하시면 됩니다.
다른 부분은 프레임워크, Database 연동 등이 다르므로 requirement.md를 그에 맞게 작성하시면 됩니다.
requirement.md 예시
### 1. **개발 목적 및 대상 사용자**
- **사이트 목적:** 이 사이트는 codegear.info의 backend API 서비스를 담당한다
### 2. **프레임워크**
- Node.js 기반 프레임워크인 **Nest.js**를 사용한다.
- Database는 **MySQL**을 사용한다.
- Nest.js에서 ORM은 **TypeORM**을 사용한다.
### 3. **아키텍처 요구사항**
- **Swagger** 를 사용해서 API 테스트를 용이하게 한다.
- **컴포넌트** 기능을 최대한 활용할 것.
- **에러 핸들링:** API 에러 발생 시 어떻게 HTTP 상태 코드와 에러 메시지를 전달한다 (예: `{ "statusCode": 400, "message": "Bad Request" }`)
- **인증 및 인가:** Admin 사용자의 로그인 방식은 구글 로그인을 사용한다. 구글 로그인은 백엔드와 프론트에서 처리해야 할 부분을 나누어 처리하도록 한다. JWT 토큰 방식을 사용한다. Role은 normal 과 admin 두개만 사용한다.
- **배포 환경:** 로컬에서 개발 밑 테스트 후 운영 환경에 배포한다.
### 4. **구현계획**
- 한번에 사이트를 완성하지 말고, **단계별 계획**을 세워서 만들것.
- **plan.md**에 계획 내용을 작성해서 저장해서 실제 구현시 사용할것.
- **버전 관리:** Git을 사용하고 github의 repository를 사용한다.
### 5. **언어**
- 답변은 한국어로 할것