Skip to main content
Glama
PRD.mdβ€’7.46 kB
# πŸ“‹ PRD: WorkflowMCP λŒ€μ‹œλ³΄λ“œ API κ΅¬ν˜„ ## 🎯 ν”„λ‘œμ νŠΈ κ°œμš” ### ν”„λ‘œμ νŠΈ λͺ©μ  **WorkflowMCP λŒ€μ‹œλ³΄λ“œμ˜ API ν™•μž₯ 및 톡합**을 톡해 MCP 도ꡬ와 λŒ€μ‹œλ³΄λ“œ κΈ°λŠ₯을 API둜 μ ‘κ·Όν•  수 μžˆλŠ” 톡합 μΈν„°νŽ˜μ΄μŠ€ ꡬ좕 ### λ°°κ²½ - WorkflowMCP μ‹œμŠ€ν…œμ΄ κ΅¬μΆ•λ˜μ–΄ 있고 μ›Ή λŒ€μ‹œλ³΄λ“œκ°€ 운영 쀑 - λŒ€μ‹œλ³΄λ“œμ—μ„œ API μ‚¬μš© μ‹œ 맀우 μœ μ—°ν•œ λ™μž‘ 확인 - MCP 도ꡬ듀과 λŒ€μ‹œλ³΄λ“œ CRUD κΈ°λŠ₯을 API둜 톡합 제곡 ν•„μš” - κΈ°μ‘΄ κ΅¬ν˜„λœ APIλŠ” μœ μ§€ν•˜κ³ , λˆ„λ½λœ APIλŠ” μΆ”κ°€ κ΅¬ν˜„ ## 🎯 λΉ„μ¦ˆλ‹ˆμŠ€ λͺ©ν‘œ ### μ£Όμš” λͺ©ν‘œ 1. **API 톡합성**: λͺ¨λ“  MCP 도ꡬλ₯Ό REST API둜 μ ‘κ·Ό κ°€λŠ₯ 2. **λŒ€μ‹œλ³΄λ“œ 연동**: μ›Ή λŒ€μ‹œλ³΄λ“œ λͺ¨λ“  κΈ°λŠ₯을 API둜 제곡 3. **ν™•μž₯μ„±**: μƒˆλ‘œμš΄ MCP 도ꡬ μΆ”κ°€ μ‹œ μžλ™ API λ§€ν•‘ 4. **일관성**: ν†΅μΌλœ API μΈν„°νŽ˜μ΄μŠ€ 및 응닡 ν˜•μ‹ ### μ„±κ³Ό μ§€ν‘œ - **API 컀버리지**: MCP 도ꡬ λŒ€λΉ„ API 제곡 λΉ„μœ¨ 95% 이상 - **응닡 μ‹œκ°„**: 평균 API μ‘λ‹΅μ‹œκ°„ 500ms μ΄ν•˜ - **μ—λŸ¬μœ¨**: API 호좜 μ‹€νŒ¨μœ¨ 1% μ΄ν•˜ - **μ‚¬μš©μ„±**: λŒ€μ‹œλ³΄λ“œ λͺ¨λ“  κΈ°λŠ₯을 API둜 μˆ˜ν–‰ κ°€λŠ₯ ## πŸ‘₯ λŒ€μƒ μ‚¬μš©μž ### Primary Users - **Claude Code μ‚¬μš©μž**: MCP 도ꡬλ₯Ό HTTP API둜 μ ‘κ·Όν•˜λ €λŠ” 개발자 - **λŒ€μ‹œλ³΄λ“œ μ‚¬μš©μž**: μ›Ή μΈν„°νŽ˜μ΄μŠ€μ™€ APIλ₯Ό ν˜Όμš©ν•˜λŠ” ν”„λ‘œμ νŠΈ κ΄€λ¦¬μž - **톡합 개발자**: WorkflowMCPλ₯Ό λ‹€λ₯Έ μ‹œμŠ€ν…œκ³Ό μ—°λ™ν•˜λ €λŠ” 개발자 ### Secondary Users - **μžλ™ν™” 슀크립트**: CI/CDλ‚˜ μžλ™ν™” λ„κ΅¬μ—μ„œ API 호좜 - **λͺ¨λ°”일/λ°μŠ€ν¬ν†± μ•±**: λŒ€μ‹œλ³΄λ“œ λŒ€μ‹  λ„€μ΄ν‹°λΈŒ μ•± 개발자 - **μ¨λ“œνŒŒν‹° 도ꡬ**: WorkflowMCP 데이터λ₯Ό ν™œμš©ν•˜λ €λŠ” μ™ΈλΆ€ 도ꡬ ## πŸ”§ 핡심 κΈ°λŠ₯ μš”κ΅¬μ‚¬ν•­ ### 1. MCP 도ꡬ API λ§€ν•‘ #### 1.1 PRD 관리 API - `GET /api/prds` - PRD λͺ©λ‘ 쑰회 - `POST /api/prds` - μƒˆ PRD 생성 - `GET /api/prds/{id}` - PRD 상세 쑰회 - `PUT /api/prds/{id}` - PRD μ—…λ°μ΄νŠΈ - `DELETE /api/prds/{id}` - PRD μ‚­μ œ #### 1.2 Task 관리 API - `GET /api/tasks` - μž‘μ—… λͺ©λ‘ 쑰회 - `POST /api/tasks` - μƒˆ μž‘μ—… 생성 - `GET /api/tasks/{id}` - μž‘μ—… 상세 쑰회 - `PUT /api/tasks/{id}` - μž‘μ—… μ—…λ°μ΄νŠΈ - `DELETE /api/tasks/{id}` - μž‘μ—… μ‚­μ œ - `POST /api/tasks/{id}/dependencies` - μž‘μ—… μ˜μ‘΄μ„± μΆ”κ°€ #### 1.3 Document 관리 API - `GET /api/documents` - λ¬Έμ„œ λͺ©λ‘ 쑰회 - `POST /api/documents` - μƒˆ λ¬Έμ„œ 생성 - `GET /api/documents/{id}` - λ¬Έμ„œ 상세 쑰회 - `PUT /api/documents/{id}` - λ¬Έμ„œ μ—…λ°μ΄νŠΈ - `DELETE /api/documents/{id}` - λ¬Έμ„œ μ‚­μ œ - `GET /api/documents/search?q={query}` - λ¬Έμ„œ 검색 #### 1.4 ν”„λ‘œμ νŠΈ 뢄석 API - `GET /api/projects/{id}/dashboard` - ν”„λ‘œμ νŠΈ λŒ€μ‹œλ³΄λ“œ 데이터 - `GET /api/projects/{id}/analytics` - ν”„λ‘œμ νŠΈ 뢄석 데이터 - `GET /api/progress/timeline` - μ§„ν–‰λ₯  νƒ€μž„λΌμΈ ### 2. λŒ€μ‹œλ³΄λ“œ κΈ°λŠ₯ API #### 2.1 λŒ€μ‹œλ³΄λ“œ νŽ˜μ΄μ§€ 데이터 - `GET /api/dashboard/overview` - 전체 κ°œμš” 데이터 - `GET /api/dashboard/prds` - PRD 관리 νŽ˜μ΄μ§€ 데이터 - `GET /api/dashboard/tasks` - μž‘μ—… 관리 νŽ˜μ΄μ§€ 데이터 - `GET /api/dashboard/documents` - λ¬Έμ„œ 관리 νŽ˜μ΄μ§€ 데이터 #### 2.2 μ‹€μ‹œκ°„ μ—…λ°μ΄νŠΈ - `GET /api/events/stream` - Server-Sent Events둜 μ‹€μ‹œκ°„ μ—…λ°μ΄νŠΈ - `POST /api/events/trigger` - μˆ˜λ™ 이벀트 트리거 ### 3. 톡합 API κΈ°λŠ₯ #### 3.1 배치 μž‘μ—… - `POST /api/batch/prds` - μ—¬λŸ¬ PRD 일괄 생성/μ—…λ°μ΄νŠΈ - `POST /api/batch/tasks` - μ—¬λŸ¬ μž‘μ—… 일괄 생성/μ—…λ°μ΄νŠΈ - `POST /api/batch/documents` - μ—¬λŸ¬ λ¬Έμ„œ 일괄 생성/μ—…λ°μ΄νŠΈ #### 3.2 μ—°κ²° 관리 - `GET /api/connections` - μ—”ν‹°ν‹° κ°„ μ—°κ²° 관계 쑰회 - `POST /api/connections` - μ—”ν‹°ν‹° κ°„ μ—°κ²° 생성 - `DELETE /api/connections/{id}` - μ—°κ²° μ‚­μ œ ## πŸ”§ 기술적 μš”κ΅¬μ‚¬ν•­ ### API ν‘œμ€€ - **REST API**: HTTP/1.1 기반 RESTful μΈν„°νŽ˜μ΄μŠ€ - **JSON 포맷**: λͺ¨λ“  μš”μ²­/응닡은 JSON ν˜•μ‹ - **HTTP μƒνƒœ μ½”λ“œ**: ν‘œμ€€ HTTP μƒνƒœ μ½”λ“œ μ‚¬μš© - **API 버전**: URL κ²½λ‘œμ— 버전 포함 (`/api/v1/`) ### 응닡 ν˜•μ‹ ν‘œμ€€ν™” ```json { "success": true, "data": { /* μ‹€μ œ 데이터 */ }, "message": "μž‘μ—… μ™„λ£Œ", "timestamp": "2025-09-11T10:30:00Z", "version": "1.0" } ``` ### μ—λŸ¬ 처리 ```json { "success": false, "error": { "code": "VALIDATION_ERROR", "message": "ν•„μˆ˜ ν•„λ“œκ°€ λˆ„λ½λ˜μ—ˆμŠ΅λ‹ˆλ‹€", "details": ["title ν•„λ“œλŠ” ν•„μˆ˜μž…λ‹ˆλ‹€"] }, "timestamp": "2025-09-11T10:30:00Z" } ``` ## πŸ›‘οΈ λ³΄μ•ˆ μš”κ΅¬μ‚¬ν•­ ### 인증/인가 - **ν˜„μž¬ 단계**: 인증 μ—†μŒ (둜컬 개발 ν™˜κ²½) - **μΆ”ν›„ ν™•μž₯**: API ν‚€ 기반 인증 μ€€λΉ„ ### 데이터 보호 - **μž…λ ₯ 검증**: λͺ¨λ“  API μž…λ ₯에 λŒ€ν•œ μœ νš¨μ„± 검사 - **SQL μΈμ μ…˜ λ°©μ§€**: Prepared Statement μ‚¬μš© - **XSS λ°©μ§€**: 좜λ ₯ 데이터 μ΄μŠ€μΌ€μ΄ν”„ 처리 ## πŸ“Š μ„±λŠ₯ μš”κ΅¬μ‚¬ν•­ ### 응닡 μ‹œκ°„ - **단일 쑰회**: 100ms μ΄ν•˜ - **λͺ©λ‘ 쑰회**: 300ms μ΄ν•˜ - **볡합 μž‘μ—…**: 500ms μ΄ν•˜ - **배치 μž‘μ—…**: 2초 μ΄ν•˜ ### λ™μ‹œμ„± - **λ™μ‹œ API 호좜**: 50개 이상 처리 κ°€λŠ₯ - **λ°μ΄ν„°λ² μ΄μŠ€ μ—°κ²°**: Connection pooling 적용 - **λ©”λͺ¨λ¦¬ μ‚¬μš©**: νž™ λ©”λͺ¨λ¦¬ 500MB μ΄ν•˜ ## πŸ”— 톡합 μš”κ΅¬μ‚¬ν•­ ### κΈ°μ‘΄ μ‹œμŠ€ν…œ 연동 - **MCP μ„œλ²„**: κΈ°μ‘΄ MCP 도ꡬ와 μ™„μ „ ν˜Έν™˜ - **SQLite λ°μ΄ν„°λ² μ΄μŠ€**: κΈ°μ‘΄ μŠ€ν‚€λ§ˆ μœ μ§€ - **μ›Ή λŒ€μ‹œλ³΄λ“œ**: κΈ°μ‘΄ λŒ€μ‹œλ³΄λ“œμ™€ λ™μΌν•œ 데이터 μ ‘κ·Ό ### ν™•μž₯μ„± - **μƒˆ MCP 도ꡬ**: μžλ™ API μ—”λ“œν¬μΈνŠΈ 생성 - **ν”ŒλŸ¬κ·ΈμΈ μ•„ν‚€ν…μ²˜**: μƒˆ κΈ°λŠ₯ λͺ¨λ“ˆ μ‰½κ²Œ μΆ”κ°€ - **API λ¬Έμ„œ**: Swagger/OpenAPI μžλ™ 생성 ## ⚠️ μ œμ•½μ‚¬ν•­ 및 고렀사항 ### 기술적 μ œμ•½ - **κΈ°μ‘΄ μ½”λ“œ μˆ˜μ • κΈˆμ§€**: κΈ°μ‘΄ κ΅¬ν˜„μ€ μœ μ§€, μΆ”κ°€ κ΅¬ν˜„λ§Œ μ§„ν–‰ - **SQLite λ°μ΄ν„°λ² μ΄μŠ€**: ν˜„μž¬ μŠ€ν† λ¦¬μ§€ μ‹œμŠ€ν…œ μœ μ§€ - **Node.js ν™˜κ²½**: κΈ°μ‘΄ λŸ°νƒ€μž„ ν™˜κ²½ μœ μ§€ ### λΉ„μ¦ˆλ‹ˆμŠ€ μ œμ•½ - **ν•˜μœ„ ν˜Έν™˜μ„±**: κΈ°μ‘΄ MCP 도ꡬ λ™μž‘μ— 영ν–₯ μ—†μŒ - **μ„±λŠ₯ 영ν–₯**: λŒ€μ‹œλ³΄λ“œ μ„±λŠ₯ μ €ν•˜ μ—†μŒ - **데이터 일관성**: κΈ°μ‘΄ 데이터 무결성 μœ μ§€ ## 🎯 μš°μ„ μˆœμœ„ ### Phase 1 (High Priority) 1. **κΈ°μ‘΄ API 뢄석**: ν˜„μž¬ κ΅¬ν˜„λœ API μ—”λ“œν¬μΈνŠΈ νŒŒμ•… 2. **핡심 CRUD API**: PRD, Task, Document κΈ°λ³Έ CRUD μ™„μ„± 3. **API ν‘œμ€€ν™”**: 응닡 ν˜•μ‹ 및 μ—λŸ¬ 처리 톡일 ### Phase 2 (Medium Priority) 1. **κ³ κΈ‰ κΈ°λŠ₯ API**: 검색, 뢄석, λŒ€μ‹œλ³΄λ“œ 데이터 2. **배치 μž‘μ—… API**: 일괄 처리 κΈ°λŠ₯ 3. **μ‹€μ‹œκ°„ μ—…λ°μ΄νŠΈ**: SSE λ˜λŠ” WebSocket ### Phase 3 (Low Priority) 1. **API λ¬Έμ„œν™”**: Swagger λ¬Έμ„œ μžλ™ 생성 2. **μ„±λŠ₯ μ΅œμ ν™”**: 캐싱 및 μ΅œμ ν™” 3. **ν™•μž₯ κΈ°λŠ₯**: ν”ŒλŸ¬κ·ΈμΈ μ•„ν‚€ν…μ²˜ ## πŸ“ˆ 성곡 κΈ°μ€€ ### κΈ°λŠ₯적 성곡 κΈ°μ€€ - [ ] λͺ¨λ“  λŒ€μ‹œλ³΄λ“œ κΈ°λŠ₯을 API둜 μˆ˜ν–‰ κ°€λŠ₯ - [ ] κΈ°μ‘΄ MCP 도ꡬ와 100% ν˜Έν™˜μ„± μœ μ§€ - [ ] API 응닡 ν˜•μ‹ 일관성 100% ### 기술적 성곡 κΈ°μ€€ - [ ] API μ‘λ‹΅μ‹œκ°„ λͺ©ν‘œ 달성 (500ms μ΄ν•˜) - [ ] μ—λŸ¬μœ¨ 1% μ΄ν•˜ μœ μ§€ - [ ] κΈ°μ‘΄ μ‹œμŠ€ν…œ μ„±λŠ₯ 영ν–₯ μ—†μŒ ### μ‚¬μš©μž κ²½ν—˜ 성곡 κΈ°μ€€ - [ ] λŒ€μ‹œλ³΄λ“œμ™€ API κ°„ κΈ°λŠ₯ 동등성 - [ ] 직관적인 API μΈν„°νŽ˜μ΄μŠ€ - [ ] λͺ…ν™•ν•œ μ—λŸ¬ λ©”μ‹œμ§€ 및 κ°€μ΄λ“œ --- **μž‘μ„±μΌ**: 2025-09-11 **μž‘μ„±μž**: μš”κ΅¬μ‚¬ν•­ 뢄석가 (Claude Code) **승인자**: ν”„λ‘œμ νŠΈ κ΄€λ¦¬μž **버전**: 1.0 **μƒνƒœ**: μ΄ˆμ•ˆ μ™„λ£Œ

Latest Blog Posts

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/foswmine/workflow-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server