Design Patterns MCP Server
디자인 패턴 MCP 서버
하이브리드 검색(의미론적 + 키워드 + 그래프 증강)을 사용하여 디자인 패턴 추천을 제공하는 지능형 MCP(Model Context Protocol) 서버입니다. 고급 블렌디드 RAG 아키텍처를 갖춘 자연어 인터페이스를 통해 685개 이상의 디자인 패턴과 90개 이상의 카테고리에 액세스할 수 있습니다.
빠른 시작
# Clone and setup
git clone https://github.com/apolosan/design_patterns_mcp.git
cd design_patterns_mcp
# Install dependencies and build (using bun)
bun install
bun run db:setup
# Or using npm (if bun is not installed)
npm install --ignore-scripts
npx tsc
node dist/src/cli/migrate.js
node dist/src/cli/seed.js
node dist/src/cli/generate-embeddings.js
node dist/src/cli/setup-relationships.jsMCP 클라이언트(Claude Desktop, Cursor 등)에서 구성하고 자연어 쿼리를 통해 패턴을 찾아보세요.
Related MCP server: Acemcp
기능
기능 | 설명 |
하이브리드 검색 엔진 | 의미론적, 키워드(TF-IDF), 그래프 증강 검색을 결합한 블렌디드 RAG |
685개 이상의 패턴 | 12개의 주요 카테고리에 걸친 포괄적인 카탈로그 |
MCP 통합 | Claude, Cursor 및 기타 MCP 클라이언트와의 원활한 통합 |
다단계 캐싱 | L1 인메모리 + L3 SQLite 캐시, 95% 이상의 적중률 |
이벤트 버스 시스템 | pub/sub을 통한 분리된 서비스 통신 |
텔레메트리 및 상태 | 실시간 성능 지표 및 시스템 모니터링 |
SOLID 아키텍처 | 모범 사례를 따르는 깔끔하고 유지 관리 가능한 코드베이스 |
프로덕션 준비 완료 | 464개의 테스트 케이스, 100% 통과율 |
사용 가능한 패턴 카테고리
카테고리 | 개수 | 예시 |
클래식 GoF 패턴 | 34 | Factory, Builder, Observer, Strategy, Command |
아키텍처 패턴 | 56 | MVC, Clean Architecture, Hexagonal, DDD |
마이크로서비스 및 클라우드 | 39 | Circuit Breaker, Saga, Service Mesh |
데이터 엔지니어링 | 54 | Repository, CQRS, Event Sourcing |
AI/ML 및 MLOps | 46 | RAG, Fine-Tuning, Model Compression |
React 패턴 | 27 | Hooks, Server Components, Performance |
블록체인 및 Web3 | 115 | DeFi, NFTs, Smart Contracts, MEV |
동시성 및 반응형 | 45 | Producer-Consumer, Actor Model |
보안 | 21 | OAuth, RBAC, Zero Trust |
함수형 프로그래밍 | 26 | Monads, Functors, Higher-Order Functions |
아키텍처
src/
├── adapters/ # External service adapters (LLM, embeddings)
├── cli/ # CLI commands (migrate, seed, embeddings, setup-relationships)
├── core/ # DI Container, configuration builder
├── db/ # Database migrations
├── events/ # Event bus system
├── handlers/ # MCP request handlers (hybrid search, recommendations)
├── health/ # Health check services
├── repositories/ # Data access layer
├── search/ # Hybrid search engine
├── services/ # Business services (cache, telemetry, pattern service)
├── strategies/ # Strategy pattern implementations
├── types/ # TypeScript type definitions
└── mcp-server.ts # MCP server entry point
data/
├── patterns/ # 750+ JSON pattern definitions
└── design-patterns.db # SQLite database with embeddings사용법
패턴 찾기
MCP 클라이언트를 통해 자연어로 질문하세요:
"I need to create complex objects with many optional configurations"
→ Builder, Abstract Factory, Factory Method
"How to handle service failures gracefully in distributed systems?"
→ Circuit Breaker, Bulkhead, Retry, Fallback
"What pattern helps with state-dependent behavior in React?"
→ State Machine, Observer, useReducer
"How to implement secure authentication and authorization?"
→ OAuth 2.0, RBAC, JWT, Zero TrustMCP 도구
도구 | 설명 |
| 문제 설명을 사용하여 패턴을 찾는 하이브리드 검색 |
| 필터링이 포함된 키워드 또는 의미론적 검색 |
| 코드 예제가 포함된 포괄적인 패턴 정보 |
| 사용 가능한 패턴에 대한 통계 |
| 시스템 상태 및 서비스 상태 |
설치
사전 요구 사항
Node.js >= 18.0.0
Bun >= 1.0.0 (권장) 또는 npm >= 8.0.0
Bun으로 설정
bun install
bun run build
bun run db:setupnpm으로 설정
package.json의 prepare 스크립트는 bun을 필요로 합니다. bun이 설치되어 있지 않다면 --ignore-scripts를 사용하여 건너뛰고 수동으로 빌드하세요:
npm install --ignore-scripts
npx tsc
# Setup database
node dist/src/cli/migrate.js
node dist/src/cli/seed.js
node dist/src/cli/generate-embeddings.js
node dist/src/cli/setup-relationships.jsMCP 구성
MCP 클라이언트 구성(Claude Desktop, Cursor 등)에 추가하세요:
{
"mcpServers": {
"design-patterns": {
"command": "node",
"args": ["/absolute/path/to/design-patterns-mcp/dist/src/mcp-server.js"],
"env": {
"LOG_LEVEL": "info",
"DATABASE_PATH": "/absolute/path/to/design-patterns-mcp/data/design-patterns.db",
"ENABLE_HYBRID_SEARCH": "true",
"ENABLE_GRAPH_AUGMENTATION": "true",
"EMBEDDING_COMPRESSION": "true",
"ENABLE_FUZZY_LOGIC": "true",
"ENABLE_TELEMETRY": "true",
"ENABLE_MULTI_LEVEL_CACHE": "true"
}
}
}
}중요:
args와DATABASE_PATH모두에 절대 경로를 사용하세요. Cursor와 같은 MCP 클라이언트는cwd필드를 안정적으로 지원하지 않으므로, 상대 경로는 프로젝트 디렉토리가 아닌 사용자 홈 디렉토리를 기준으로 해석됩니다. 클라이언트별 구성 예시는 QUICKSTART.md를 참조하세요.
환경 변수
변수 | 기본값 | 설명 |
|
| 로깅 레벨 (debug, info, warn, error) |
|
| SQLite 데이터베이스 경로 |
|
| 블렌디드 RAG 검색 활성화 |
|
| 패턴 관계 탐색 활성화 |
|
| 차원 축소 |
|
| 퍼지 로직 결과 개선 |
|
| 성능 지표 |
|
| L1 + L3 캐싱 |
|
| 동시 요청 제한 |
|
| 캐시 크기 제한 |
|
| 캐시 TTL (밀리초) |
|
| 전송 모드 (stdio/http) |
|
| HTTP 포트 (http 모드) |
|
| MCP 엔드포인트 경로 |
|
| 상태 확인 경로 |
|
| 데이터베이스 설정 건너뛰기 |
Docker 배포
빠른 시작
# Build
docker build -t design-patterns-mcp .
# Run HTTP mode
docker run -p 3000:3000 -e TRANSPORT_MODE=http design-patterns-mcp
# Run stdio mode (default)
docker run design-patterns-mcpDocker Compose
docker compose up --build -d환경 변수
변수 | 기본값 | 설명 |
|
| 전송 모드 (stdio/http) |
|
| HTTP 포트 (http 모드) |
|
| MCP 엔드포인트 경로 |
|
| 상태 확인 경로 |
|
| SQLite 데이터베이스 경로 |
|
| 로깅 레벨 |
|
| 데이터베이스 설정 건너뛰기 |
엔드포인트 (HTTP 모드)
GET /health- 상태 확인POST /mcp- MCP JSON-RPC 엔드포인트
명령어
# Development
bun run build # Compile TypeScript
bun run dev # Development with hot reload
bun run start # Build and start production server
# Database
bun run db:setup # Complete database setup
bun run migrate # Run migrations
bun run seed # Seed pattern data
bun run generate-embeddings # Generate semantic embeddings
bun run setup-relationships # Setup pattern relationships
# Quality
bun run test # Run all tests
bun run lint # Check code quality
bun run lint:fix # Auto-fix linting issues
bun run typecheck # TypeScript type checking테스트
이 프로젝트는 41개의 테스트 파일에 걸쳐 464개의 테스트 케이스를 포함하며 100% 통과율을 기록합니다:
계약 테스트: MCP 프로토콜 준수 검증
통합 테스트: 구성 요소 상호 작용 테스트
성능 테스트: 검색 및 벡터화 벤치마크
단위 테스트: 개별 구성 요소 테스트
# Run all tests
bun run test
# Run specific test suites
bun run test:unit -- --grep "PatternService"
bun run test:integration -- --grep "database"
bun run test:performance -- --timeout 30000아키텍처 패턴
이 프로젝트는 문서화된 패턴을 직접 구현합니다:
패턴 | 구현 |
Repository |
|
Service Layer |
|
Object Pool |
|
Dependency Injection |
|
Strategy |
|
Event Bus |
|
Multi-Level Cache |
|
Builder |
|
기여
기여를 환영합니다! PR을 제출하기 전에 기여 가이드라인을 읽어주세요.
저장소 포크
기능 브랜치 생성
SOLID 원칙에 따라 변경 사항 적용
테스트 및 린팅 실행
풀 리퀘스트 제출
라이선스
MIT 라이선스 - 자세한 내용은 LICENSE를 참조하세요.
리소스
버전: 0.4.4
최종 업데이트: 2026년 2월
패턴: 685개 이상 (750개 이상의 JSON 파일)
테스트: 464개 테스트 케이스 | 100% 통과율
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceEnables semantic code search across projects using AI embeddings to find code by meaning rather than just text matching. Provides fast intelligent search, symbol analysis, and code similarity detection with multi-language support.MIT
- AlicenseAqualityFmaintenanceProvides code repository indexing and semantic search capabilities, allowing natural language queries to find relevant code snippets with automatic incremental indexing and multi-language support.137359ISC
- Flicense-qualityDmaintenanceEnables semantic search and knowledge management for storing and querying principles, patterns, and learnings using hybrid keyword and vector search.1
- Flicense-qualityFmaintenanceGives Claude semantic search superpowers to find and reuse existing patterns in your codebase.16
Related MCP Connectors
AI Agent with Architectural Memory. Impact analysis (free), tests and code from the graph (pro).
Multilingual semantic SVG icon search with previews for AI coding agents. 20,000+ icons.
A design-style library for AI agents: search real styles, fetch a ready-to-apply design spec.
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/apolosan/design_patterns_mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server