# ๐ Hello MCP(Model Context Protocol)
### "Claude Desktop MCP ์ค์ ๊ด๋ฆฌ์๋ฅผ ์ํ ๊ฐ์ด๋ ๋๊ตฌ"
[](https://nodejs.org/en/)
[](LICENSE)
## โจ ๊ฐ์
Hello-MCP๋ Claude Desktop์ด Model Context Protocol(MCP)์ ํตํด ์ธ๋ถ ๋๊ตฌ์ ์ํธ์์ฉํ ์ ์๊ฒ ํด์ฃผ๋ ์ ์ฉํ ์ ํธ๋ฆฌํฐ ๋๊ตฌ์
๋๋ค. ์ค์ ๊ณผ์ ์ ๊ฐ์ํํ๊ณ Claude AI์ ์ฌ์ฉ์ ์ง์ ๋๊ตฌ ๊ฐ์ ์ํํ ํตํฉ์ ์ ๊ณตํฉ๋๋ค.
## ๐ ๏ธ ๊ธฐ๋ฅ
- **๊ฐํธํ ์ค์ **: Claude Desktop MCP ํตํฉ์ ์ํ ๊ฐ๋จํ ์์ปค๋งจ๋ ์ค์
- **๋ค์ํ ๋ชจ๋**: ์ค์ ๋ง๋ฒ์ฌ, MCP ์๋ฒ, CLI ๋๊ตฌ๋ก ์คํ ๊ฐ๋ฅ
- **๋ด์ฅ ์ํ ๋๊ตฌ**: ์ด๋ฉ์ผ ์ ์ก ๋ฐ ๊ฐ๋จํ ๊ณ์ฐ๊ณผ ๊ฐ์ ๋ฏธ๋ฆฌ ๊ตฌ์ฑ๋ ๋๊ตฌ
- **ํ์ฅ์ฑ**: ์์ฒด MCP ๋๊ตฌ๋ฅผ ์ฝ๊ฒ ์ถ๊ฐ ๊ฐ๋ฅ
- **๋ค๊ตญ์ด ์ง์**: ์ฌ๋ฌ ์ธ์ด ์ง์(ํ๊ตญ์ด ๋ฐ ์์ด)
## ๐ ์๊ตฌ ์ฌํญ
- Node.js 14 ์ด์
- Claude Desktop ์ค์น ([์ฌ๊ธฐ์ ๋ค์ด๋ก๋](https://claude.ai/download))
- API ํค ์์ฑ์ ์ํ ์ธํฐ๋ท ์ฐ๊ฒฐ
## ๐ง ์ค์น
### Node.js ์ค์น
#### macOS/Linux
`asdf`๋ฅผ ์ฌ์ฉํ์ฌ Node.js ๋ฒ์ ์ ๊ด๋ฆฌํ ์ ์์ต๋๋ค:
```bash
# asdf ์ค์น (์์ง ์ค์น๋์ง ์์ ๊ฒฝ์ฐ)
git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.10.2
echo '. $HOME/.asdf/asdf.sh' >> ~/.bashrc
echo '. $HOME/.asdf/completions/asdf.bash' >> ~/.bashrc
# ๋๋ zsh์ ๊ฒฝ์ฐ
echo '. $HOME/.asdf/asdf.sh' >> ~/.zshrc
# Node.js ํ๋ฌ๊ทธ์ธ ์ค์น
asdf plugin add nodejs
asdf install nodejs 18.12.0 # ๋๋ 14 ์ด์์ ๋ฒ์
asdf global nodejs 18.12.0
```
#### Windows
๊ณต์ ์น์ฌ์ดํธ์์ ์ง์ Node.js๋ฅผ ๋ค์ด๋ก๋ํ์ฌ ์ค์นํ์ธ์:
1. [Node.js ๊ณต์ ๋ค์ด๋ก๋ ํ์ด์ง](https://nodejs.org/en/download/) ๋ฐฉ๋ฌธ
2. Windows ์ค์น ํ๋ก๊ทธ๋จ(.msi) ๋ค์ด๋ก๋
3. ์ค์น ํ๋ก๊ทธ๋จ์ ์คํํ๊ณ ์ค์น ๋ง๋ฒ์ฌ๋ฅผ ๋ฐ๋ฅด์ธ์
4. ๋ช
๋ น ํ๋กฌํํธ ๋๋ PowerShell์ ์ด๊ณ ๋ค์์ ์
๋ ฅํ์ฌ ์ค์น๋ฅผ ํ์ธํ์ธ์:
```
node --version
```
## ๐ ๋น ๋ฅธ ์์
npx๋ฅผ ์ฌ์ฉํ์ฌ ์ค์น ์์ด Hello-MCP๋ฅผ ์คํํ ์ ์์ต๋๋ค:
```bash
npx hello-mcp
```
์ด๋ ๊ฒ ํ๋ฉด ์ ์ฒด ๊ตฌ์ฑ ๊ณผ์ ์ ์๋ดํ๋ ์ค์ ๋ง๋ฒ์ฌ๊ฐ ์์๋ฉ๋๋ค.
## ๐ฎ ์ฌ์ฉ๋ฒ
Hello-MCP๋ ์ธ ๊ฐ์ง ๋ค๋ฅธ ๋ชจ๋๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค:
### 1๏ธโฃ ์ค์ ๋ชจ๋ (๊ธฐ๋ณธ)
```bash
npx hello-mcp
# ๋๋
npx hello-mcp setup
```
์ด ๋ํํ ๋ชจ๋๋ ๋ค์์ ์ํํฉ๋๋ค:
- Claude Desktop์ด ์ค์น๋์ด ์๋์ง ํ์ธ
- ์ด๋ฉ์ผ๊ณผ ์ฉ๋ ์์ฒญ
- API ํค ์์ฑ
- MCP์ฉ Claude Desktop ๊ตฌ์ฑ
- ๊ฐ๋ฅํ ๊ฒฝ์ฐ Claude Desktop ์๋ ์ฌ์์
### 2๏ธโฃ MCP ์๋ฒ ๋ชจ๋
```bash
npx hello-mcp mcp-server
```
์ด ๋ชจ๋๋ Hello-MCP๋ฅผ Claude Desktop์ด ์ฐ๊ฒฐํ ์ ์๋ MCP ์๋ฒ๋ก ์์ํฉ๋๋ค. ์๋ฒ๋ Claude๊ฐ ์์
์ ์ํํ๋ ๋ฐ ์ฌ์ฉํ ์ ์๋ ๋๊ตฌ๋ฅผ ์ ๊ณตํฉ๋๋ค.
### 3๏ธโฃ CLI ๋ชจ๋
```bash
npx hello-mcp cli [๋ช
๋ น์ด] [์ต์
]
```
์ฌ์ฉ ๊ฐ๋ฅํ ๋ช
๋ น์ด:
- `add`: ๋ ์ซ์ ๋ํ๊ธฐ
```bash
npx hello-mcp cli add 3 5
```
- `send-email`: ์ด๋ฉ์ผ ๋ณด๋ด๊ธฐ
```bash
npx hello-mcp cli send-email user@example.com "Hello-MCP์์ ๋ณด๋ธ ์๋
ํ์ธ์"
```
## ๐ API ํค
API ํค๋ `~/.garakrc`์ ์ ์ฅ๋๋ฉฐ ์ผ์ผ ์์ฒญ ํ๋๋ 50๊ฐ์
๋๋ค. ํค๋ Claude Desktop๊ณผ ํจ๊ป ์ฌ์ฉํ๋๋ก ์๋์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
## ๐ ๊ตญ์ ํ (i18n)
Hello-MCP๋ ๊ฐ๋ ฅํ ๊ตญ์ ํ ์ํคํ
์ฒ๋ฅผ ํตํด ์ฌ๋ฌ ์ธ์ด๋ฅผ ์ง์ํฉ๋๋ค.
**์ฃผ์ ๊ธฐ๋ฅ:**
- **์ธ์ด ํ์ผ:** `locales/` ๋๋ ํ ๋ฆฌ์ ๊ฐ ์ธ์ด๋ณ ๋ณ๋์ JSON ํ์ผ(์: `ko.json`, `en.json`).
- **์๋ ์ธ์ด ๊ฐ์ง:**
- ํ๊ฒฝ ๋ณ์(`LC_ALL`, `LANG`, `LANGUAGE`)๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ธ์ด ๊ฐ์ง.
- ์ด์ ์ฒด์ ์ค์ (macOS, Windows) ๊ฐ์ง.
- ์ฌ์ฉ์ ๊ตฌ์ฑ ํ์ผ(`.garakrc`)์ ์ ์ฅ๋ ์ธ์ด ๊ธฐ๋ณธ ์ค์ ์ฌ์ฉ.
- **ํ๋ ์ด์คํ๋ ์ง์:** ํ๋ ์ด์คํ๋๋ฅผ ์ฌ์ฉํ ๋์ ํ
์คํธ ์ฝ์
(์: `{variable}`).
- **์ธ์ด ์ ํ:**
- UI๋ฅผ ํตํด ์ธ์ด๋ฅผ ์ ํํ๋ `npx hello-mcp lang` ๋ช
๋ น์ด.
- ํ๊ฒฝ ๋ณ์๋ฅผ ์ฌ์ฉํ ๋น ๋ฅธ ์ธ์ด ์ ํ(์: `LC_ALL=en node index.js`).
## ๐ ์๊ฒฉ ๋ถ์
Hello-MCP๋ ์๋น์ค ๊ฐ์ ์ ์ํด ์ต๋ช
์ ์ฌ์ฉ ๋ฐ์ดํฐ๋ฅผ ์์งํฉ๋๋ค:
- ์ฌ์ฉ์ ์ํธ ์์ฉ ๋ฐ ์ฑ๋ฅ ์งํ
- ๋ชจ๋ ๋ฐ์ดํฐ๋ ์ต๋ช
ํ๋จ
- ๊ตฌ์ฑ์์ ์๊ฒฉ ๋ถ์์ ๋นํ์ฑํํ ์ ์์
## ๐ Claude์ ํจ๊ป ์ฌ์ฉํ๋ ํ
์ค์ ํ Claude์์ ๋ค์ ํ๋กฌํํธ๋ฅผ ์๋ํด ๋ณผ ์ ์์ต๋๋ค:
1. "1 add 1" (๊ฐ๋จํ ๊ณ์ฐ)
2. "Send an email to [your-email] with the result of 1 add 1" ([์ด๋ฉ์ผ]๋ก 1 add 1์ ๊ฒฐ๊ณผ๋ฅผ ์ด๋ฉ์ผ๋ก ๋ณด๋ด๊ธฐ)
## ๐ค ์ง์
๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ฉด help@garak.ai๋ก ๋ฌธ์ํ์ธ์.
## ๐ ๋ฌธ์ ํด๊ฒฐ ๊ฐ์ด๋
### ์ผ๋ฐ์ ์ธ ๋ฌธ์
#### Claude Desktop ์๋น์ค ์ค๋จ ๋ฉ์์ง
Claude Desktop์์ "Claude will return Soon, Claude AI is currently experiencing a temporary service disruption" ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ ๊ฒฝ์ฐ:
1. Claude Desktop ์ฑ์ ์์ ํ ์ข
๋ฃํ ํ ๋ค์ ์์ํด๋ณด์ธ์.
2. ์ธํฐ๋ท ์ฐ๊ฒฐ ์ํ๋ฅผ ํ์ธํ์ธ์.
3. [Anthropic ์๋น์ค ์ํ](https://status.anthropic.com/) ํ์ด์ง๋ฅผ ํ์ธํ์ธ์.
4. ๋ฌธ์ ๊ฐ ์ง์๋๋ฉด ๋ช ์๊ฐ ํ์ ๋ค์ ์๋ํด๋ณด์ธ์. ์๋น์ค ์ ๊ณต์์ ์ผ์์ ์ธ ๋ฌธ์ ์ผ ์ ์์ต๋๋ค.
#### ์น์ฌ์ดํธ ์ ์ ์ค๋ฅ
์น์ฌ์ดํธ์ ์ ์ํ ์ ์๋ ๊ฒฝ์ฐ:
1. ์ธํฐ๋ท ์ฐ๊ฒฐ ์ํ๋ฅผ ํ์ธํ์ธ์.
2. ๋ธ๋ผ์ฐ์ ์บ์๋ฅผ ์ญ์ ํ ํ ๋ค์ ์๋ํด๋ณด์ธ์.
3. ๋ค๋ฅธ ๋ธ๋ผ์ฐ์ ๋ฅผ ์ฌ์ฉํด๋ณด์ธ์.
4. ์๋ ์ฃผ์๋ก ์ง์ ์ ์ํด๋ณด์ธ์: https://garak.im/getting-started
#### ์ด๋ฉ์ผ ์ ์ก ์ค๋ฅ
์ด๋ฉ์ผ ์ ์ก ์ค ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ ๊ฒฝ์ฐ:
1. ์ด๋ฉ์ผ ์ฃผ์๊ฐ ์ฌ๋ฐ๋ฅธ์ง ํ์ธํ์ธ์.
2. API ํค๊ฐ ์ ํจํ์ง ํ์ธํ์ธ์. `npx hello-mcp` ๋ช
๋ น์ด๋ก ์ API ํค๋ฅผ ๋ฐ๊ธ๋ฐ์ ์ ์์ต๋๋ค.
3. ๋ฉ์์ง ๋ณธ๋ฌธ์ด ๋๋ฌด ๊ธธ๋ฉด(200์ ์ด์) ๋ถํ ํ์ฌ ์ ์กํด๋ณด์ธ์.
#### Windows์์ asdf ๊ด๋ จ ์ค๋ฅ
Windows์์๋ asdf ๋์ Node.js ๊ณต์ ์น์ฌ์ดํธ์์ ์ค์น ํ์ผ์ ๋ค์ด๋ก๋ํ์ฌ ์ค์นํ์ธ์:
1. [Node.js ๊ณต์ ๋ค์ด๋ก๋ ํ์ด์ง](https://nodejs.org/en/download/)๋ฅผ ๋ฐฉ๋ฌธํฉ๋๋ค.
2. Windows Installer(.msi)๋ฅผ ๋ค์ด๋ก๋ํฉ๋๋ค.
3. ์ค์น ๋ง๋ฒ์ฌ๋ฅผ ๋ฐ๋ผ ์ค์น๋ฅผ ์๋ฃํฉ๋๋ค.
## ๐ ๋ฌธ์
๋ ๋ง์ ์์ ์ ํ์ ๊ฐ์ด๋๋ฅผ ์ฐธ์กฐํ์ธ์:
[https://garak.im/getting-started](https://garak.im/getting-started)
## ๐ง ํ ์ผ
- ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ฑฐ๋ ์ ์ ์ฌํญ์ด ์์ผ๋ฉด GitHub Issues์ ์ด์๋ฅผ ์์ฑํด ์ฃผ์ธ์. ๋ฌธ์ ์ ๋ํ ์์ธํ ์ค๋ช
๊ณผ ์ฌํ ๋จ๊ณ๋ฅผ ์ ๊ณตํด ์ฃผ์ธ์. https://github.com/hongsw/hello-mcp/issues
- Windows ์ง์์ ํ์ฌ ํ
์คํธ ์ค์
๋๋ค.
## ๐ ๋ผ์ด์ ์ค
์ด ํ๋ก์ ํธ๋ MIT ๋ผ์ด์ ์ค์ ๋ฐ๋ผ ๋ผ์ด์ ์ค๊ฐ ๋ถ์ฌ๋ฉ๋๋ค. ์์ธํ ๋ด์ฉ์ LICENSE ํ์ผ์ ์ฐธ์กฐํ์ธ์.