Startup Helper MCP
# ๐ Startup Helper MCP
<div align="center">
**AI ์ฐฝ์
์ปจ์คํดํธ - ์๊ถ๋ถ์๋ถํฐ ์ ์ฑ
์ง์๊ธ๊น์ง ์ฐฝ์
์ ๋ชจ๋ ๊ฒ**
[](https://startup-helper-mcp.onrender.com)
[](LICENSE)
[](https://modelcontextprotocol.io)
> "์ฐฝ์
์ค๋น, 4๊ฐ ์ฌ์ดํธ ๋์๋ค๋์ง ๋ง์ธ์. ํ ๋ฒ์ ๋ํ๋ก ๋๋ด์ธ์."
[๋ฐ๋ชจ ๋ณด๊ธฐ](#-๋ฐ๋ชจ) โข [์ค์นํ๊ธฐ](#-์ค์น-๋ฐ-์คํ) โข [์ฌ์ฉ๋ฒ](#-์ฌ์ฉ-์์)
</div>
---
## ๐ฏ ์ ๋ง๋ค์๋์?
### ์ฐฝ์
์ค๋น์ ํ์ค
์๋น ์ฐฝ์
์ ๊น์ฒญ๋
(29์ธ)์จ์ ํ๋ฃจ:
```
09:00 - ์๊ถ์ ๋ณด์์คํ
์์ ๊ฐ๋จ์ญ ์๊ถ ๊ฒ์... ํ์๊ฐ์
ํ์
10:00 - ์นด์นด์ค๋งต์์ ๊ฒฝ์ ์นดํ ํ๋ํ๋ ์ธ๊ธฐ... 23๊ฐ์งธ...
11:00 - ๊ธฐ์
๋ง๋น์์ ์ฒญ๋
์ฐฝ์
์ง์๊ธ ๊ฒ์... ๋ญ๊ฐ ์ด๋ ๊ฒ ๋ง์?
12:00 - ๊ตฌ์ฒญ ํํ์ด์ง์์ ์นดํ ์ธํ๊ฐ ์ ์ฐจ ํ์ธ... ์ด๋์์ง?
13:00 - ์์ง ์ ์ฌ๋ ๋ชป ๋จน์๋๋ฐ ์ ๋ณด๋ ๋ฐ๋ ๋ชป ๋ชจ์...
```
**4๊ฐ ์ฌ์ดํธ, ๋ฐ๋์ , ๊ทธ๋๋ ๋ถ์กฑํ ์ ๋ณด.**
---
## โจ Startup Helper MCP๋ฅผ ์ฐ๋ฉด
```
์ฌ์ฉ์: "๋ 29์ด์ธ๋ฐ ๊ฐ๋จ์ญ์์ ์นดํ ์ฐฝ์
ํ๋ ค๊ณ ํด. ์๋ณธ๊ธ 5์ฒ๋ง์ ์์ด."
AI: [12๊ฐ Tool ์๋ ํธ์ถ]
๐ ๊ฐ๋จ์ญ ์นดํ ์ฐฝ์
์ข
ํฉ ๋ฆฌํฌํธ
1๏ธโฃ ํธ๋ ๋: ์ผ๋ฐ ์นดํ -5% ํ๋ฝ์ธ, ์คํฐ๋์นดํ +15% ์์น
2๏ธโฃ ์๊ถ: ๋ฐ๋ฌ์๊ถ, ์นดํ ํฌํ๋ 87% (๋์)
3๏ธโฃ ๊ฒฝ์: ๋ฐ๊ฒฝ 300m ์นดํ 23๊ฐ, ํ๋์ฐจ์ด์ฆ 65%
4๏ธโฃ ์ง์๊ธ: ์ฒญ๋
์ฐฝ์
์ฌ๊ดํ๊ต ์ต๋ 1์ต, ์์ธ์ ์ฒญ๋
์ฐฝ์
3์ฒ๋ง์
5๏ธโฃ ์ธํ๊ฐ: ์์
์ ๊ณ ์ฆ, ์์๊ต์ก, ์๋ฐฉ์ ๊ฒ ํ์
๐ก ์ข
ํฉ: ๊ฐ๋จ์ญ์ ํฌํ ์ํ. ๋
ผํ์ญ ๋ฐฉ๋ฉด(ํฌํ๋ 62%) ๊ฒํ ์ถ์ฒ
```
**ํ ๋ฒ์ ๋ํ, 5๋ถ, ์๋ฒฝํ ๋ถ์.**
---
## ๐ Before vs After
| ๊ตฌ๋ถ | ๊ธฐ์กด ๋ฐฉ์ | Startup Helper MCP |
|------|----------|-------------------|
| **์์ ์๊ฐ** | ๋ฐ๋์ ~ํ๋ฃจ | 5๋ถ |
| **ํ์ ์ฌ์ดํธ** | 4๊ฐ+ | 0๊ฐ (๋ํ๋ง) |
| **์ ๋ณด ํตํฉ** | ์ง์ ์ข
ํฉ | AI๊ฐ ์๋ ๋ถ์ |
| **๋ง์ถค ์ถ์ฒ** | ์์ | ์กฐ๊ฑด๋ณ ๋ง์ถค ์ ๊ณต |
| **์ธ์ฌ์ดํธ** | ๋ฐ์ดํฐ๋ง | ์ก์
๊ฐ์ด๋ ํฌํจ |
---
## ๐ ๏ธ ์ ๊ณต Tool (12๊ฐ)
### ๐ ์๊ถ ๋ถ์ ๋๊ตฌ
#### 1. `analyze_commercial_area` - ์๊ถ ๋ถ์
ํน์ ์์น์ ์๊ถ์ ๋ถ์ํฉ๋๋ค. ์
์ข
๋ณ ๋ฐ์ง๋, ํฌํ๋, ์๊ถ ํน์ฑ์ ์ ๊ณตํฉ๋๋ค.
```json
{ "location": "๊ฐ๋จ์ญ", "business_type": "์นดํ", "radius": 500 }
```
#### 2. `compare_commercial_areas` - ์๊ถ ๋น๊ต (์ ๊ท)
์ฌ๋ฌ ์ง์ญ์ ์๊ถ์ ๋น๊ต ๋ถ์ํฉ๋๋ค. ์ด๋ค ์ง์ญ์ด ์ฐฝ์
์ ๋ ์ ํฉํ์ง ์์๋ฅผ ์ ๊ณตํฉ๋๋ค.
```json
{ "locations": ["๊ฐ๋จ์ญ", "ํ๋์
๊ตฌ", "๊ฑด๋์
๊ตฌ"], "business_type": "์นดํ" }
```
#### 3. `analyze_population` - ์๊ถ ์ธ๊ตฌ ๋ถ์ (์ ๊ท)
์๊ถ์ ์ ๋์ธ๊ตฌ, ์ฐ๋ น๋, ์ฑ๋ณ, ์๊ฐ๋๋ณ ๋ถํฌ๋ฅผ ๋ถ์ํฉ๋๋ค. ์
์ข
์ ํฉ๋ ์ ์ ์ ๊ณต. *(ํต๊ณ ๊ธฐ๋ฐ ์ถ์ )*
```json
{ "location": "๊ฐ๋จ์ญ", "business_type": "์นดํ", "radius": 500 }
```
### ๐ ๊ฒฝ์ ๋ถ์ ๋๊ตฌ
#### 4. `find_competitors` - ๊ฒฝ์์
์ฒด ๊ฒ์
์ฃผ๋ณ ๊ฒฝ์์
์ฒด๋ฅผ ๊ฒ์ํ๊ณ ๋ถ์ํฉ๋๋ค. SEMAS API ์ค์๊ฐ ๋ฐ์ดํฐ ์ฐ๋.
```json
{ "location": "ํ๋์
๊ตฌ", "business_type": "์์์ ", "radius": 300 }
```
### ๐ฐ ๋น์ฉ/์์ต์ฑ ๋ถ์ ๋๊ตฌ
#### 5. `calculate_startup_cost` - ์ฐฝ์
๋น์ฉ ๊ณ์ฐ๊ธฐ (์ ๊ท)
์
์ข
๋ณ, ์ง์ญ๋ณ, ๊ท๋ชจ๋ณ ์์ ์ฐฝ์
๋น์ฉ์ ๊ณ์ฐํฉ๋๋ค.
```json
{ "business_type": "์นดํ", "region": "๊ฐ๋จ", "size": 15, "premium_level": "standard" }
```
#### 6. `analyze_breakeven` - ์์ต๋ถ๊ธฐ์ ๋ถ์ (์ ๊ท)
์ ํ์ ๋งค์ถ, ์ผ ํ์ ๊ณ ๊ฐ์, ํฌ์ ํ์ ๊ธฐ๊ฐ, ์์ต ์๋๋ฆฌ์ค๋ฅผ ๋ถ์ํฉ๋๋ค.
```json
{ "business_type": "์นดํ", "region": "๊ฐ๋จ", "monthly_rent": 300, "size": 15 }
```
### ๐ ์ฐฝ์
์ค๋น ๋๊ตฌ
#### 7. `get_startup_checklist` - ์ฐฝ์
์ฒดํฌ๋ฆฌ์คํธ
์
์ข
๋ณ ํ์ ์ธํ๊ฐ, ์์ ๋น์ฉ, ์ค๋น ์์๋ฅผ ์๋ดํฉ๋๋ค. ์ค์๊ฐ ์๊ถ ๊ฒฝ์ ๋ฐ์ดํฐ ํฌํจ.
```json
{ "business_type": "์์์ ", "region": "์์ธ" }
```
#### 8. `recommend_policy_funds` - ์ ์ฑ
์ง์๊ธ ์ถ์ฒ
์ฐฝ์
์ ์กฐ๊ฑด์ ๋ง๋ ์ ๋ถ/์ง์์ฒด ์ ์ฑ
์ง์๊ธ์ ์ถ์ฒํฉ๋๋ค. ๊ธฐ์
๋ง๋น API ์ฐ๋.
```json
{ "business_type": "์นดํ", "stage": "์๋น์ฐฝ์
", "region": "์์ธ", "founder_type": "์ฒญ๋
" }
```
#### 9. `get_business_trends` - ์ฐฝ์
ํธ๋ ๋
์ต๊ทผ ์ฐฝ์
ํธ๋ ๋์ ์
์ข
๋ณ ์ฑ์ฅ/์ ํด ํํฉ์ ๋ถ์ํฉ๋๋ค. *(SEMAS + ํต๊ณ ๊ธฐ๋ฐ)*
```json
{ "region": "์ ๊ตญ", "category": "์นดํ", "period": "6months" }
```
### ๐ข ์
์ง/๋น์ฉ ๋ถ์ ๋๊ตฌ (์ ๊ท)
#### 10. `get_nearby_facilities` - ์ฃผ๋ณ ํธ์์์ค ๋ถ์
์๊ถ ์ฃผ๋ณ ํธ์์์ค์ ๋ถ์ํฉ๋๋ค. ์งํ์ฒ ์ญ, ๋ฒ์ค์ ๋ฅ์ฅ, ์ฃผ์ฐจ์ฅ, ์ํ, ํธ์์ ๋ฑ ์ ๊ทผ์ฑ ํ๊ฐ.
```json
{ "location": "๊ฐ๋จ์ญ", "radius": 500, "categories": ["์งํ์ฒ ์ญ", "์ฃผ์ฐจ์ฅ", "์ํ"] }
```
#### 11. `estimate_rent` - ์๋๋ฃ ์์ธ ์กฐํ
์ง์ญ๋ณ ์๊ฐ ์๋๋ฃ ์์ธ๋ฅผ ์กฐํํฉ๋๋ค. ๋ณด์ฆ๊ธ, ์ ์๋๋ฃ, ๊ด๋ฆฌ๋น ์ถ์ ๋ฐ ๋น์ฉ ์ ๊ฐ ํ. *(ํต๊ณ ๊ธฐ๋ฐ ์ถ์ )*
```json
{ "location": "๊ฐ๋จ์ญ", "size": 15, "floor": "1์ธต", "building_type": "์๊ฐ" }
```
#### 12. `simulate_revenue` - ๋งค์ถ ์๋ฎฌ๋ ์ด์
์
์ข
๋ณ ์์ ๋งค์ถ์ ์๋ฎฌ๋ ์ด์
ํฉ๋๋ค. ์ผ/์/์ฐ ๋งค์ถ, ๊ณ์ ๋ณ ๋ณ๋, ์์ ์์ด์ต ๋ถ์. *(ํต๊ณ ๊ธฐ๋ฐ ์ถ์ )*
```json
{ "business_type": "์นดํ", "region": "๊ฐ๋จ", "size": 15, "staff_count": 1, "operating_hours": 12 }
```
---
## ๐ฌ ์ฌ์ฉ ์์
### ์์ 1: ์ฒญ๋
์นดํ ์ฐฝ์
```
"๋ 29์ด์ธ๋ฐ ๊ฐ๋จ์ญ์์ ์นดํ ์ฐฝ์
ํ๋ ค๋๋ฐ ๋ถ์ํด์ค"
โ ํธ๋ ๋ + ์๊ถ + ๊ฒฝ์ + ์ง์๊ธ + ์ฒดํฌ๋ฆฌ์คํธ ์ข
ํฉ ๋ถ์
```
### ์์ 2: ์
์ข
๊ณ ๋ฏผ
```
"์์ฆ ๋ญ ์ฐฝ์
ํ๋ฉด ์๋ผ?"
โ ์ฑ์ฅ ์
์ข
TOP 7, ํ๋ฝ ์
์ข
, ํธ๋ ๋ ์ธ์ฌ์ดํธ
```
### ์์ 3: ์ง์๊ธ ๊ฒ์
```
"์ฒญ๋
์ฐฝ์
์ง์๊ธ ๋ญ ์์ด?"
โ ์กฐ๊ฑด๋ณ ๋ง์ถค ์ง์๊ธ ์ถ์ฒ
```
### ์์ 4: ๊ฒฝ์ ๋ถ์
```
"ํ๋ ๊ทผ์ฒ ์์์ ๊ฒฝ์ ์ด๋?"
โ ๊ฒฝ์์
์ฒด ์, ํ๋์ฐจ์ด์ฆ ๋น์จ, ์ง์
์ฌ์ง ๋ถ์
```
---
## ๐ฏ ํ๊ฒ ์ฌ์ฉ์
| ํ๋ฅด์๋ | ๋์ฆ | Startup Helper๊ฐ ์ฃผ๋ ๊ฐ์น |
|---------|------|---------------------------|
| **์๋น ์ฐฝ์
์** | ์ด๋์ ๋ญ ํด์ผ ํ ์ง ๋ชจ๋ฆ | ์์คํฑ ์ ๋ณด + ๊ฐ์ด๋ |
| **์์๊ณต์ธ** | ์๊ถ ์ด๋/์
์ข
์ ํ ๊ณ ๋ฏผ | ๋ฐ์ดํฐ ๊ธฐ๋ฐ ์์ฌ๊ฒฐ์ |
| **์ฐฝ์
์ปจ์คํดํธ** | ๊ณ ๊ฐ ์๋ด ์๋ฃ ํ์ | ๋น ๋ฅธ ๋ฆฌ์์น ์๋ํ |
| **ํ๋์ฐจ์ด์ฆ ๋ณธ์ฌ** | ์ ๊ท ์
์ ํ๋ณด์ง ๋ถ์ | ์๊ถ ์คํฌ๋ฆฌ๋ |
---
## โ๏ธ ๋ฐฐํฌ
### Render (ํ์ฌ ์ด์ ์ค)
```
https://startup-helper-mcp.onrender.com
```
### ๋ก์ปฌ ์ค์น
```bash
# ์ค์น
pnpm install
# ํ๊ฒฝ ๋ณ์ ์ค์
echo "KAKAO_API_KEY=your_key" > .env
# ์คํ
pnpm dev # stdio ๋ชจ๋
pnpm dev:http # HTTP/SSE ๋ชจ๋
```
### Claude Desktop ์ฐ๋
`%APPDATA%\Claude\claude_desktop_config.json`:
```json
{
"mcpServers": {
"startup-helper": {
"url": "https://startup-helper-mcp.onrender.com/sse"
}
}
}
```
---
## ๐ ์ฌ์ฉ API
| API | ์ฉ๋ | ๋ฐ์ดํฐ |
|-----|------|--------|
| **์นด์นด์ค๋งต ๋ก์ปฌ API** | ์ฅ์ ๊ฒ์, ์ขํ ๋ณํ, ๊ฒฝ์์
์ฒด ๊ฒ์ | ์ค์๊ฐ |
| **์์๊ณต์ธ๋ง๋น SEMAS API** | ์๊ถ์ ๋ณด, ์
์ข
๋ณ ์ ํฌ ์, ๊ฒฝ์ ๋ถ์ | ์ค์๊ฐ |
| ๊ธฐ์
๋ง๋น API | ์ ์ฑ
์ง์๊ธ ๊ฒ์ | ์ค์ค์๊ฐ |
> ๐ API ์บ์ฑ ์์คํ
์ ์ฉ: ๋์ผ ์์ฒญ 5๋ถ๊ฐ ์บ์ํ์ฌ ์๋ต ์๋ ํฅ์
---
## ๐ ๋ฐ์ดํฐ ์ ๋ขฐ๋
| ๋๊ตฌ | ๋ฐ์ดํฐ ์์ค | ์ ๋ขฐ๋ |
|------|-------------|--------|
| ์๊ถ ๋ถ์ | SEMAS + ์นด์นด์ค API | ๐ข ๋์ (์ค์๊ฐ) |
| ์๊ถ ๋น๊ต | ์นด์นด์ค API | ๐ข ๋์ (์ค์๊ฐ) |
| ๊ฒฝ์์
์ฒด ๊ฒ์ | SEMAS + ์นด์นด์ค API | ๐ข ๋์ (์ค์๊ฐ) |
| ์ ์ฑ
์ง์๊ธ | ๊ธฐ์
๋ง๋น API | ๐ข ๋์ (์ค์๊ฐ) |
| ์ฃผ๋ณ ํธ์์์ค | ์นด์นด์ค API | ๐ข ๋์ (์ค์๊ฐ) |
| ์ฐฝ์
์ฒดํฌ๋ฆฌ์คํธ | ์นด์นด์ค + ์ ์ | ๐ข ๋์ |
| ์ฐฝ์
๋น์ฉ | ํต๊ณ ๊ธฐ๋ฐ ์ถ์ | ๐ก ์ค๊ฐ |
| ์์ต๋ถ๊ธฐ์ | ํต๊ณ + ๊ฒฝ์ ๋ฐ์ดํฐ | ๐ก ์ค๊ฐ |
| ์๋๋ฃ ์์ธ | ํต๊ณ ๊ธฐ๋ฐ ์ถ์ | ๐ก ์ค๊ฐ |
| ๋งค์ถ ์๋ฎฌ๋ ์ด์
| ํต๊ณ ๊ธฐ๋ฐ ์ถ์ | ๐ก ์ค๊ฐ |
> โ ๏ธ ๐ก ์ค๊ฐ ์ ๋ขฐ๋ ๋๊ตฌ๋ ์
์ข
๋ณ ํ๊ท ํต๊ณ ๊ธฐ๋ฐ ์ถ์ ์น์
๋๋ค. ์ค์ ์ฐฝ์
์ ํ์ฅ ์กฐ์ฌ๋ฅผ ๊ถ์ฅํฉ๋๋ค.
---
## ๐ ํ๋ก์ ํธ ๊ตฌ์กฐ
```
src/
โโโ index.ts # MCP ์๋ฒ (stdio + HTTP/SSE)
โโโ constants.ts # ์์ ์ ์
โโโ types.ts # TypeScript ํ์
โโโ api/
โ โโโ kakao-api.ts # ์นด์นด์ค๋งต API (์บ์ฑ ์ ์ฉ)
โ โโโ semas-api.ts # ์์๊ณต์ธ๋ง๋น SEMAS API
โ โโโ bizinfo-api.ts # ๊ธฐ์
๋ง๋น API
โโโ data/
โ โโโ startup-cost-data.ts # ์ฐฝ์
๋น์ฉ ๋ฐ์ดํฐ
โ โโโ breakeven-data.ts # ์์ต๋ถ๊ธฐ์ ๋ฒค์น๋งํฌ
โ โโโ population-data.ts # ์๊ถ ์ธ๊ตฌ ๋ฐ์ดํฐ
โโโ tools/
โ โโโ commercial-area.ts # ์๊ถ ๋ถ์
โ โโโ competitors.ts # ๊ฒฝ์์
์ฒด ๊ฒ์ (SEMAS ์ฐ๋)
โ โโโ policy-funds.ts # ์ ์ฑ
์ง์๊ธ ์ถ์ฒ
โ โโโ startup-checklist.ts # ์ฐฝ์
์ฒดํฌ๋ฆฌ์คํธ
โ โโโ business-trends.ts # ์ฐฝ์
ํธ๋ ๋
โ โโโ startup-cost.ts # ์ฐฝ์
๋น์ฉ ๊ณ์ฐ๊ธฐ
โ โโโ breakeven.ts # ์์ต๋ถ๊ธฐ์ ๋ถ์
โ โโโ population.ts # ์๊ถ ์ธ๊ตฌ ๋ถ์
โ โโโ nearby-facilities.ts # ์ฃผ๋ณ ํธ์์์ค ๋ถ์ (์ ๊ท)
โ โโโ rent-estimate.ts # ์๋๋ฃ ์์ธ ์กฐํ (์ ๊ท)
โ โโโ revenue-simulation.ts # ๋งค์ถ ์๋ฎฌ๋ ์ด์
(์ ๊ท)
โโโ utils/
โ โโโ response-formatter.ts # ์๋ต ํฌ๋งทํฐ
โ โโโ cache.ts # API ์บ์ ์์คํ
โโโ tests/ # ํ
์คํธ ์ฝ๋ (74๊ฐ)
```
---
## โ
ํ์ง
| ํญ๋ชฉ | ์ํ |
|------|------|
| TypeScript | โ
ํ์
์์ |
| ESLint | โ
์ฝ๋ ํ์ง |
| Vitest | โ
74๊ฐ ํ
์คํธ ํต๊ณผ |
| Rate Limiting | โ
100 req/min |
| Error Handling | โ
ํ๊ธ ์๋ฌ ๋ฉ์์ง |
| Graceful Shutdown | โ
SIGTERM/SIGINT |
---
## ๐ ์ฐจ๋ณํ ํฌ์ธํธ
1. **์์คํฑ ์๋ฃจ์
** - 4๊ฐ ์ฌ์ดํธ ์ ๋ณด๋ฅผ ํ ๋ฒ์ ๋ํ๋ก
2. **์นด์นด์ค + SEMAS ์ฐ๋** - ์นด์นด์ค๋งต + ์์๊ณต์ธ๋ง๋น ์ค์๊ฐ ๋ฐ์ดํฐ
3. **์์ต์ฑ ๋ถ์** - ์์ต๋ถ๊ธฐ์ , ํฌ์ํ์๊ธฐ๊ฐ, ๋งค์ถ ์๋ฎฌ๋ ์ด์
4. **์
์ง ๋ถ์** - ์๋๋ฃ ์์ธ, ์ฃผ๋ณ ํธ์์์ค, ์ ๊ทผ์ฑ ํ๊ฐ
5. **๋ง์ถค ์ถ์ฒ** - ์ฐฝ์
์ ์กฐ๊ฑด๋ณ ์ง์๊ธ/์๊ถ ์ถ์ฒ
6. **API ์บ์ฑ** - ๋น ๋ฅธ ์๋ต + ๋น์ฉ ์ ๊ฐ
7. **ํ๊ธ UX** - ๋ชจ๋ ๋ฉ์์ง ํ๊ธํ
---
## ๐ ๋ผ์ด์ ์ค
MIT License
---
<div align="center">
**Kakao PlayMCP ๊ณต๋ชจ์ ์ถํ์**
Made with โค๏ธ for Korean Entrepreneurs
</div>
TDQS
Scored across 5 tools
Each tool has a clearly distinct purpose with no overlap: analyze_commercial_area focuses on location-based market analysis, find_competitors on competitor identification, get_business_trends on industry trends, get_startup_checklist on procedural steps, and recommend_policy_funds on financial support. An agent can easily distinguish between them based on their specific domains.
The tool names follow a consistent verb_noun pattern (e.g., analyze_commercial_area, find_competitors), with all using snake_case. However, get_business_trends and get_startup_checklist use 'get_' while others use different verbs like 'analyze_' and 'find_', which is a minor deviation from a strict verb consistency.
With 5 tools, the count is well-scoped for a startup helper server, covering key areas such as market analysis, competition, trends, checklists, and funding. Each tool earns its place without being too sparse or overwhelming, fitting typical server sizes of 3-15 tools.
The tool set provides comprehensive coverage for startup planning, including analysis, competitor research, trends, procedural guidance, and financial support. A minor gap exists in tools for ongoing operations or exit strategies, but agents can work around this for core startup needs.