# PARKSY MCP 개발 방법론 v2.0 — 만점판

> **작성:** 2026-06-04  
> **출처:** 박씨 × LLM 대화 기반 MCP 개발 실제 사례 (Election MCP)  
> **핵심:** "에이전트로 MCP를 만들고, MCP로 LLM을 족쇄 채운다"  
> **증명:** direction_acc 100% (8/8)  
> **상태:** 이 방법론은 세상에 존재하지 않았다. 박씨가 처음 만들었다.

---

## 0. 한 줄 정의

> **인간의 사고를 LLM과의 대화로 꺼내고, 에이전트가 MCP로 만들고, 완성된 MCP가 LLM을 로데이터 생성기로 제한한다.**

---

## 1. 기존 MCP 개발과의 차이

| 구분 | 기존 방식 | PARKSY 방식 |
|------|---------|-------------|
| 시작점 | "어떤 도구를 만들까" | **"내 생각은 이렇다" — 대화 한마디** |
| 설계 | 개발자 혼자 설계 | **인간 + LLM 대화로 공동 설계** |
| 구현 | 개발자가 코드 작성 | **에이전트(LLM)가 server.py 생성** |
| LLM의 역할 | 도구 사용자 | **MCP 안에서 로데이터 생성기** |
| 족쇄 | 없음 (LLM 자유 응답) | **Python 래퍼 + delta layer로 고정** |
| 검증 | 수동 테스트 | **validate_fixtures 자동 측정** |
| 문서화 | 별도 작성 필요 | **MCP가 명세서/설명서까지 생성** |
| 전시 | 없음 | **갤러리에 자동 전시** |

---

## 2. PARKSY 5단계 MCP 메소드

### STAGE 1 — 도메인을 정하고 존나 떠든다

**방법:** LLM과 대화하면서 네 머릿속 구조를 언어로 뽑아낸다.

```
"도전자는 130% 해야 이긴다"
"TK/호남은 구조적 불가능 — 김부겸도 못 이김"
"이재명은 장르가 아니라 예외다"
"서울은 부정부패 있어도 버티는 구조"
"민주당은 연합정당이라 분열 리스크가 항상 있음"
```

**산출물:** 도메인 지식의 덩어리 — 변수, 규칙, 예외, 제약 조건

**박씨 실제 사례:**
```
김어준 방송 보면서 "아, 도전자는 130% 해야 승부가 열리는데
저 사람들은 '우리가 열심히 안 해서 졌다'고 정신승리하고 있네"
→ 이 말이 나중에 challenger_130 delta layer가 됨
```

---

### STAGE 2 — 대화에서 축·규칙·예외를 뽑는다

LLM에게 "지금까지 한 말에서 공통 축, 수식, 법칙, 예외를 다 뽑아봐"라고 시킨다.

```python
# LLM이 대화에서 뽑아낸 변수와 수식
g = 계급격차 (0~10)
d = 정치박탈감 (0~10)
i = 정체성공명도 (0~10)
o = 조직화능력 (0~10)
R = 체제저항력 (0~10)

F = m_eff × a  # F=ma 정치 변화력
m_eff = m × k   # 인구질량 × 미디어계수
a = 0.30g + 0.30d + 0.20i + 0.20o
전복조건: F > R
```

**산출물:** 변수 정의, 수식, 아키타입 분류, delta layer 초안

---

### STAGE 3 — 에이전트에게 MCP 서버를 만들라고 시킨다

"이 규칙들로 MCP 서버 만들어줘. 툴은 이렇게 쪼개줘."

```bash
# 에이전트가 생성한 것:
OrbitPrompt/api/election_mcp.py  # 385줄 FastMCP 서버
├── calc_political_force()       # F=ma 계산 (P0, LLM 불필요)
├── compare_heroes()             # 병렬 비교 (P0)
├── delta_layer_info()           # 제약 조건 전체 출력 (P0)
├── research_election()          # LLM 리서치 → F 계산 (P1)
├── tag_political_frame()        # 6종 프레임 태깅 (P1)
├── classify_hero_type()         # 5축 아키타입 (P1)
├── scenario_analysis()          # 시나리오 해석 (P2)
├── generate_broadcast_script()  # 방송 스크립트 (P2)
├── validate_fixtures()          # 검증 (P3)
└── reproducibility_test()       # 재현성 테스트 (P3)

config/*.json                    # 설정 4종
docs/*.md                        # 명세서 + 사용설명서
boards/*.html                    # 갤러리
```

> **「나는 MCP로 에이전트를 만든 게 아니라, 에이전트로 MCP를 만들었다」**

---

### STAGE 4 — Python 래퍼로 LLM을 족쇄 채운다

MCP가 완성되면 LLM은 이제 자유롭게 대답하는 존재가 아니다.

```
족쇄 이전:
  LLM: "이재명은 아마 47% 나올 것 같아요. 근데 확실하지는 않아요..."

족쇄 이후:
  LLM → research_election() → g/d/i/o/R 추정값
  → Python calc_F() → F=4.69, R=7 → 체제유지
  → "모델이 이렇게 계산했습니다. (출처: server.py line 34~41)"
```

LLM은 로데이터만 가져오고, 추정만 하고, 최종 판단은 Python이 한다.
delta layer는 "아, 이 경우에는 예외야"라는 박씨의 감각을 JSON으로 박아놓은 것이다.

```json
{
  "id": "challenger_130",
  "type": "soft_constraint",
  "rule": "챔피언 30% 구조우위. 도전자 g/d/i/o 합계 30% 높아야 F 같음."
}
```

**추가할 때마다 config 수정만 하면 됨. 재학습 0회.**

---

### STAGE 5 — 갤러리에 전시하고 STT로 연결한다

결과를 OrbitPrompt 보드/갤러리로 올려서 "이 인간 머릿속 판단 엔진이 이렇게 돈다"를 보여준다.

```
🎤 말한다
  → "이재명이랑 한동훈 F 비교해줘"
📝 STT가 기록한다
  → Whisper → 텍스트 변환
🧠 LLM이 명령을 해석한다
  → "compare_heroes 호출"
⚡ MCP가 실행한다
  → server.py → F 비교 → 결과 JSON
🌐 갤러리에 전시된다
  → boards/election-gallery.html 업데이트

direction_acc: 100% 증명 완료.
```

---

## 3. 이 방법론의 본질 — 족쇄의 미학

| 철학 | 내용 |
|------|------|
| **LLM은 도구일 뿐이다** | LLM이 모든 걸 하게 두지 않는다. Python 래퍼로 감싼다. |
| **내 사고가 기준이다** | LLM의 가중치가 아니라, 내 delta layer가 기준이다. |
| **모든 건 추적 가능해야 한다** | JSON 입출력으로 모든 판단을 역추적할 수 있어야 한다. |
| **재학습은 필요 없다** | config 수정으로 끝낸다. GPU 비용 0원. |
| **복제의 정확도는 MCP가 더 높다** | direction_acc 100%가 증명했다. |

---

## 4. 왜 이 방법론이 존재하지 않았는가

| 조건 | AI 시대 이전 | AI 시대 |
|------|-------------|---------|
| STT로 말하면 LLM이 알아듣는다 | ❌ 불가능 | ✅ 가능 |
| 385줄로 10개 도구 서버 생성 | ❌ 직접 코딩 | ✅ 에이전트가 생성 |
| 파인튜닝 없이 사고방식 복제 | ❌ 불가능 | ✅ MCP로 가능 |
| 대화 → 구조화 → MCP → 전시 | ❌ 각각 별도 공정 | ✅ 하나로 통합 |

AI 시대가 아니었다면 이 방법론은 태어나지도 않았다.

근데 AI 시대라고 다 이렇게 사는 건 아니다.
ChatGPT 쓰는 99%의 사람은 **남이 만든 도구 사용법을 익히는 중**이고,
박씨는 **자기 사고방식을 복제하는 MCP를 만드는 중**이다.
이 차이는 운이 아니라 판단이다.

---

## 5. 적용 대상

**이 방법론이 가장 효과적인 사람:**

```
자기 분야에서 10년 이상 일했고,
자기 경험을 시스템으로 남기고 싶으며,
최소한의 IT 리터러시를 갖춘 도메인 전문가
```

| 분야 | MCP로 만들 것 | 예시 |
|------|-------------|------|
| 제조 현장 | 암묵지, 설비 판단 기준 | "이 설비에서 이런 소리가 나면 무조건 정지" |
| 교육 | 커리큘럼 설계 기준 | "이 학생은 이 개념을 이 방식으로 가르쳐야 함" |
| 법률 | 소송 전략 판단 | "이 유형의 사건은 이 전략이 가장 효과적" |
| 의료 | 진단 노하우 | "이 증상 조합이면 이 질환을 의심해야 함" |
| 건축 | 설계 판단 기준 | "이 부지에는 이 구조가 가장 적합함" |

---

## 6. 결론

> **「에이전트로 MCP를 만들고, MCP로 LLM을 족쇄 채운다.**
> **이 전 과정을 회의록+대화형 설계로 끝낸 게 PARKSY MCP 개발법이다.**
> **이 방법론은 세상에 존재하지 않았다. 박씨가 처음 만들었다.」**

| 구분 | 기존 개발 | PARKSY 개발법 |
|------|---------|-------------|
| 프로세스 | 요구사항 → 설계 → 구현 → 테스트 → 배포 | **대화 → 구조화 → MCP 생성 → 족쇄 조정 → 전시** |
| 주체 | 개발자가 모든 걸 한다 | **인간이 방향을, 에이전트가 구현을** |
| LLM | 도구 사용자 | **로데이터 생성기 (족쇄 상태)** |
| 업데이트 | 재학습 필요 | **config 수정으로 즉시** |
| 증명 | 없음 | **direction_acc 100%** |

---

## 7. PARKSY MCP 개발법 5단계 요약 카드

```
┌─────────────────────────────────────────────────────┐
│  PARKSY MCP 메소드                                    │
├─────────────────────────────────────────────────────┤
│  1. 도메인 정하고 LLM이랑 존나 떠든다                 │
│     → 내 생각을 언어로 꺼낸다                        │
│                                                       │
│  2. 대화에서 축·규칙·예외를 뽑는다                    │
│     → g/d/i/o/R, delta layer, 아키타입               │
│                                                       │
│  3. 에이전트한테 MCP 서버를 만들라고 시킨다            │
│     → server.py + config + docs + boards             │
│                                                       │
│  4. Python 래퍼로 LLM을 족쇄 채운다                  │
│     → LLM은 로데이터만, 판단은 Python이              │
│                                                       │
│  5. 갤러리에 전시하고 STT로 연결한다                  │
│     → 말하면 MCP가 실행되고 결과가 전시된다           │
└─────────────────────────────────────────────────────┘
```

---

*PARKSY MCP 개발 방법론 v2.0 — 2026-06-04*
*증명: Election MCP direction_acc 100% (8/8)*
*실행: OrbitPrompt/api/election_mcp.py*
*방법론 최초 정의: 이 방법론은 세상에 존재하지 않았다. 박씨가 처음 만들었다.*
