MCP 서버(NestJS)
NestJS 로 구축된 강력하고 확장 가능하며 확장 가능한 서버 측 애플리케이션입니다. 이 프로젝트는 MCP(Model Context Protocol) 서버 구현, 파일 관리, 인증, 그리고 게시물 및 사용자를 위한 모듈식 REST API를 제공합니다.
목차
Related MCP server: File Operations MCP Server
특징
MCP 서버 : 파일 작업 등을 위한 모델 컨텍스트 프로토콜을 구현합니다.
파일 관리 : REST 엔드포인트를 통해 파일을 업로드, 다운로드, 나열, 삭제합니다.
인증 : 로컬 전략을 적용한 JWT 기반 인증.
사용자 및 게시물 모듈 : DTO 및 엔터티를 갖춘 사용자 및 게시물을 위한 모듈형 구조입니다.
Swagger 통합 : 즉시 사용 가능한 API 문서.
확장성 : 새로운 모듈과 기능을 쉽게 추가할 수 있습니다.
건축학
NestJS : 효율적이고 안정적이며 확장 가능한 서버 측 애플리케이션을 구축하기 위한 프로그레시브 Node.js 프레임워크입니다.
MCP 통합 : 파일 작업을 위해 사용자 정의 FileBrowserMCP를 사용합니다.
모듈형 디자인 : 각 기능이 자체 모듈에 캡슐화되어 있습니다.
시작하기
필수 조건
설치
지엑스피1
환경 변수
비밀이나 구성 재정의를 위해 루트 디렉토리에 .env 파일을 만듭니다(선택 사항).
개발
서버 실행
# Start in development mode (with hot reload)
$ npm run start:dev
# Start in production mode
$ npm run start:prod유용한 명령어
# Compile TypeScript
$ npm run build
# Lint code
$ npm run lint테스트
단위 테스트 실행
$ npm run test종단간(e2e) 테스트 실행
$ npm run test:e2e테스트 범위
$ npm run test:cov전개
프로젝트를 빌드하세요:
$ npm run build서버를 시작합니다:
$ npm run start:prod고급 배포(Docker, 클라우드 등)에 대한 자세한 내용은 NestJS 배포 문서를 참조하세요.
API 참조
서버가 실행 중일 때 Swagger UI를 (활성화된 경우)
/api에서 사용할 수 있습니다.주요 종료점:
POST /auth/login— 인증하고 JWT 수신POST /files/upload— 파일 업로드GET /files/:id— 파일 다운로드DELETE /files/:id— 파일 삭제GET /files— 파일 목록POST /users— 사용자 생성POST /posts— 게시물 만들기
자세한 내용은 src/ 에 있는 컨트롤러 파일을 참조하세요.
프로젝트 구조
src/
app.module.ts # Root module
main.ts # Entry point
auth/ # Authentication (JWT, guards, strategies)
file/ # File management (upload, download, delete)
mcps/ # Model Context Protocol integration
posts/ # Posts module
users/ # Users module
database/ # Database connection (if used)
uploads/ # Uploaded files (local dev)기여하다
저장소를 포크하세요
기능 브랜치를 생성합니다(
git checkout -b feature/YourFeature)변경 사항을 커밋합니다(
git commit -am 'Add some feature')브랜치에 푸시(
git push origin feature/YourFeature)풀 리퀘스트 열기
코딩 표준
기존 코드 스타일을 따르세요(ESLint 구성 참조)
새로운 기능에 대한 단위 테스트와 E2E 테스트를 작성하세요
필요에 따라 코드를 문서화하고 README를 업데이트하세요.
Git 설정
이 프로젝트에서는 버전 제어를 위해 Git을 사용합니다. 원격 원본은 다음과 같이 설정됩니다.
https://github.com/Cstannahill/mcp-server-nestjs.git특허
Nest는 MIT 라이센스를 받았습니다 .
리소스 및 지원
질문, 문제 또는 기능 요청 사항이 있으면 문제를 제기하거나 관리자에게 문의하세요.