# ๐ Work Memory MCP Server ์ค์น ๊ฐ์ด๋
์ด ๊ฐ์ด๋๋ Work Memory MCP Server์ ์ค์น๋ถํฐ ์ค์ ๊น์ง ์ ์ฒด ๊ณผ์ ์ ๋ค๋ฃน๋๋ค.
## ๐ ์์คํ
์๊ตฌ์ฌํญ
### ํ์ ์ํํธ์จ์ด
- **Node.js**: 18.0.0 ์ด์
- **npm**: 8.0.0 ์ด์
- **OS**: Windows 10+, macOS 10.15+, Linux (Ubuntu 20.04+)
### ๊ถ์ฅ ์ฌ์
- **RAM**: ์ต์ 2GB, ๊ถ์ฅ 4GB+
- **Storage**: ์ต์ 100MB ์ฌ์ ๊ณต๊ฐ
- **CPU**: x64 ํ๋ก์ธ์
## ๐ฆ ์ค์น ๋ฐฉ๋ฒ
### ๋ฐฉ๋ฒ 1: Git ํด๋ก (๊ถ์ฅ)
```bash
# 1. ๋ฆฌํฌ์งํ ๋ฆฌ ํด๋ก
git clone https://github.com/your-repo/work-memory-mcp.git
cd work-memory-mcp
# 2. ์์กด์ฑ ์ค์น
npm install
# 3. TypeScript ๋น๋
npm run build
# 4. ์ค์น ํ์ธ
node ./dist/index.js --version
```
### ๋ฐฉ๋ฒ 2: NPM ํจํค์ง ์ค์น
```bash
# NPM ๊ธ๋ก๋ฒ ์ค์น
npm install -g work-memory-mcp
# ๋๋ ๋ก์ปฌ ์ค์น
npm install work-memory-mcp
```
### ๋ฐฉ๋ฒ 3: ๋ฐ์ด๋๋ฆฌ ๋ค์ด๋ก๋
GitHub Releases์์ OS๋ณ ๋ฐ์ด๋๋ฆฌ๋ฅผ ๋ค์ด๋ก๋ํ ์ ์์ต๋๋ค.
```bash
# Windows
curl -o work-memory-mcp.exe https://github.com/your-repo/work-memory-mcp/releases/latest/download/work-memory-mcp-win.exe
# macOS
curl -o work-memory-mcp https://github.com/your-repo/work-memory-mcp/releases/latest/download/work-memory-mcp-macos
chmod +x work-memory-mcp
# Linux
curl -o work-memory-mcp https://github.com/your-repo/work-memory-mcp/releases/latest/download/work-memory-mcp-linux
chmod +x work-memory-mcp
```
## โ๏ธ MCP ์ค์
### Cursor ์ค์
1. **์ค์ ํ์ผ ์์น**
- Windows: `%APPDATA%\Cursor\User\globalStorage\cursor-mcp\mcp.json`
- macOS: `~/Library/Application Support/Cursor/User/globalStorage/cursor-mcp/mcp.json`
- Linux: `~/.config/Cursor/User/globalStorage/cursor-mcp/mcp.json`
2. **์ค์ ํ์ผ ์์**
```json
{
"mcpServers": {
"work-memory": {
"command": "node",
"args": ["/full/path/to/work-memory-mcp/dist/index.js"],
"cwd": "/full/path/to/work-memory-mcp",
"env": {
"WORK_MEMORY_DIR": "/path/to/data/directory",
"LOG_LEVEL": "INFO"
}
}
}
}
```
3. **Windows ๊ฒฝ๋ก ์์**
```json
{
"mcpServers": {
"work-memory": {
"command": "node",
"args": ["C:\\work-memory-mcp\\dist\\index.js"],
"cwd": "C:\\work-memory-mcp",
"env": {
"WORK_MEMORY_DIR": "C:\\work-memory-data",
"LOG_LEVEL": "INFO"
}
}
}
}
```
### Claude Desktop ์ค์
1. **์ค์ ํ์ผ ์์น**
- Windows: `%APPDATA%\Claude\claude_desktop_config.json`
- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
- Linux: `~/.config/claude-desktop/claude_desktop_config.json`
2. **์ค์ ํ์ผ ์์**
```json
{
"mcpServers": {
"work-memory": {
"command": "node",
"args": ["/full/path/to/work-memory-mcp/dist/index.js"],
"env": {
"WORK_MEMORY_DIR": "/path/to/data/directory",
"LOG_LEVEL": "INFO"
}
}
}
}
```
## ๐ง ํ๊ฒฝ ๋ณ์ ์ค์
### ํ์ ํ๊ฒฝ ๋ณ์
| ๋ณ์๋ช
| ์ค๋ช
| ๊ธฐ๋ณธ๊ฐ | ์์ |
|--------|------|--------|------|
| `WORK_MEMORY_DIR` | ๋ฐ์ดํฐ ์ ์ฅ ๋๋ ํ ๋ฆฌ | `./work_memory` | `/home/user/memory_data` |
### ์ ํ์ ํ๊ฒฝ ๋ณ์
| ๋ณ์๋ช
| ์ค๋ช
| ๊ธฐ๋ณธ๊ฐ | ๊ฐ๋ฅํ ๊ฐ |
|--------|------|--------|-----------|
| `LOG_LEVEL` | ๋ก๊ทธ ๋ ๋ฒจ | `INFO` | `DEBUG`, `INFO`, `WARN`, `ERROR` |
| `MAX_MEMORY_SIZE` | ์ต๋ ๋ฉ๋ชจ๋ฆฌ ํฌ๊ธฐ (๋ฐ์ดํธ) | `1048576` | ์ซ์ |
| `CACHE_TTL` | ์บ์ TTL (์ด) | `300` | ์ซ์ |
| `BACKUP_INTERVAL` | ๋ฐฑ์
๊ฐ๊ฒฉ (๋ถ) | `60` | ์ซ์ |
| `INDEX_REBUILD_THRESHOLD` | ์ธ๋ฑ์ค ์ฌ๊ตฌ์ฑ ์๊ณ๊ฐ | `1000` | ์ซ์ |
### ํ๊ฒฝ ๋ณ์ ์ค์ ๋ฐฉ๋ฒ
#### Windows
```cmd
# CMD
set WORK_MEMORY_DIR=C:\MyMemoryData
set LOG_LEVEL=DEBUG
# PowerShell
$env:WORK_MEMORY_DIR="C:\MyMemoryData"
$env:LOG_LEVEL="DEBUG"
```
#### macOS/Linux
```bash
# Bash/Zsh
export WORK_MEMORY_DIR="/home/user/memory_data"
export LOG_LEVEL="DEBUG"
# ์๊ตฌ ์ค์ (~/.bashrc ๋๋ ~/.zshrc์ ์ถ๊ฐ)
echo 'export WORK_MEMORY_DIR="/home/user/memory_data"' >> ~/.bashrc
echo 'export LOG_LEVEL="INFO"' >> ~/.bashrc
```
## ๐ ๋๋ ํ ๋ฆฌ ๊ตฌ์กฐ ์ค์
### ๊ธฐ๋ณธ ๋๋ ํ ๋ฆฌ ๊ตฌ์กฐ
```
work_memory/
โโโ current_work.json # ํ์ฌ ๋ฉ๋ชจ๋ฆฌ ๋ฐ์ดํฐ
โโโ search_index.json # ๊ฒ์ ์ธ๋ฑ์ค
โโโ history/ # ๋ณ๊ฒฝ ํ์คํ ๋ฆฌ
โ โโโ changes/ # ๋ณ๊ฒฝ ๋ก๊ทธ
โ โโโ versions/ # ๋ฒ์ ๋ฐ์ดํฐ
โโโ cache/ # ์บ์ ํ์ผ
โโโ backups/ # ๋ฐฑ์
ํ์ผ
โโโ logs/ # ๋ก๊ทธ ํ์ผ
```
### ๋๋ ํ ๋ฆฌ ๊ถํ ์ค์
#### Windows
```cmd
# ๋ฐ์ดํฐ ๋๋ ํ ๋ฆฌ์ ์ฐ๊ธฐ ๊ถํ ๋ถ์ฌ
icacls "C:\work_memory" /grant:r "%USERNAME%":(OI)(CI)F
```
#### macOS/Linux
```bash
# ๋๋ ํ ๋ฆฌ ์์ฑ ๋ฐ ๊ถํ ์ค์
mkdir -p ~/work_memory
chmod 755 ~/work_memory
# ํ์ ๋๋ ํ ๋ฆฌ ์์ฑ
mkdir -p ~/work_memory/{history/changes,history/versions,cache,backups,logs}
chmod 755 ~/work_memory/{history,cache,backups,logs}
chmod 644 ~/work_memory/history/{changes,versions}
```
## ๐ ์ค์น ๊ฒ์ฆ
### 1. ๊ธฐ๋ณธ ์คํ ํ
์คํธ
```bash
# ์๋ฒ ์์ (๊ฐ๋ฐ ๋ชจ๋)
npm run dev
# ๋๋ ํ๋ก๋์
๋ชจ๋
node ./dist/index.js
```
**์์ ์ถ๋ ฅ:**
```
[HH:MM:SS] INFO [MCP_SERVER] Initializing Work Memory MCP Server
[HH:MM:SS] INFO [MCP_SERVER] Work Memory MCP Server initialized successfully
[HH:MM:SS] INFO [MCP_SERVER] Starting MCP transport connection
๐ง Work Memory MCP Server v0.1.0 started
๐ Available tools: 12 memory management tools
๐ Ready for Claude/Cursor integration
```
### 2. MCP ์ฐ๊ฒฐ ํ
์คํธ
#### Cursor์์ ํ
์คํธ
1. Cursor ์ฌ์์
2. ์ ์ฑํ
์์ฑ
3. ๋ค์ ๋ช
๋ น์ด ํ
์คํธ:
```
๋ฉ๋ชจ๋ฆฌ ์์คํ
์ด ์๋ํ๋์ง ํ์ธํด์ฃผ์ธ์.
```
#### Claude Desktop์์ ํ
์คํธ
1. Claude Desktop ์ฌ์์
2. ๋ค์ ๋ช
๋ น์ด ํ
์คํธ:
```
work memory ์์คํ
์ํ๋ฅผ ํ์ธํด์ฃผ์ธ์.
```
### 3. ๊ธฐ๋ฅ ํ
์คํธ
```bash
# ํ
์คํธ ์ค์ํธ ์คํ
npm test
# ํน์ ํ
์คํธ ์คํ
npm run test:integration
```
## ๐จ ๋ฌธ์ ํด๊ฒฐ
### ์ผ๋ฐ์ ์ธ ์ค์น ๋ฌธ์
#### 1. Node.js ๋ฒ์ ๋ฌธ์
```bash
# Node.js ๋ฒ์ ํ์ธ
node --version
# Node.js ์
๋ฐ์ดํธ (Windows)
choco upgrade nodejs
# Node.js ์
๋ฐ์ดํธ (macOS)
brew upgrade node
# Node.js ์
๋ฐ์ดํธ (Linux)
sudo apt update && sudo apt upgrade nodejs npm
```
#### 2. ๊ถํ ๋ฌธ์
```bash
# npm ๊ถํ ๋ฌธ์ ํด๊ฒฐ (Linux/macOS)
sudo chown -R $(whoami) ~/.npm
sudo chown -R $(whoami) /usr/local/lib/node_modules
# Windows ๊ด๋ฆฌ์ ๊ถํ์ผ๋ก ์คํ
# PowerShell์ ๊ด๋ฆฌ์๋ก ์คํํ์ฌ ์ค์น
```
#### 3. ๋น๋ ์ค๋ฅ
```bash
# node_modules ์ ๋ฆฌ ํ ์ฌ์ค์น
rm -rf node_modules package-lock.json
npm install
# TypeScript ์ฌ๋น๋
npm run clean
npm run build
```
#### 4. ๊ฒฝ๋ก ๋ฌธ์
```bash
# ์ ๋ ๊ฒฝ๋ก ์ฌ์ฉ ํ์ธ
pwd # ํ์ฌ ๋๋ ํ ๋ฆฌ ํ์ธ
# Windows์์ ๊ฒฝ๋ก ๋ณํ
echo %CD% # ํ์ฌ ๋๋ ํ ๋ฆฌ
```
### MCP ์ฐ๊ฒฐ ๋ฌธ์
#### 1. ์๋ฒ๊ฐ ์์๋์ง ์์
- ํฌํธ ์ถฉ๋ ํ์ธ: `netstat -an | grep :3000`
- ๋ก๊ทธ ํ์ธ: `LOG_LEVEL=DEBUG node ./dist/index.js`
- ๋ฐฉํ๋ฒฝ ์ค์ ํ์ธ
#### 2. AI ๋๊ตฌ์์ ์ธ์ ์๋จ
- ์ค์ ํ์ผ ๊ฒฝ๋ก ํ์ธ
- JSON ๋ฌธ๋ฒ ๊ฒ์ฆ: [JSONLint](https://jsonlint.com/)
- AI ๋๊ตฌ ์ฌ์์
#### 3. ๊ถํ ์ค๋ฅ
```bash
# ๋ฐ์ดํฐ ๋๋ ํ ๋ฆฌ ๊ถํ ํ์ธ
ls -la ~/work_memory
# ๊ถํ ์์ (Linux/macOS)
chmod -R 755 ~/work_memory
```
### ๋ก๊ทธ ํ์ธ ๋ฐฉ๋ฒ
#### 1. ์๋ฒ ๋ก๊ทธ
```bash
# ๋๋ฒ๊ทธ ๋ชจ๋๋ก ์คํ
LOG_LEVEL=DEBUG node ./dist/index.js 2>&1 | tee server.log
```
#### 2. ์์คํ
๋ก๊ทธ
```bash
# Windows ์ด๋ฒคํธ ๋ก๊ทธ
eventvwr.msc
# macOS ์์คํ
๋ก๊ทธ
console.app
# Linux ์์คํ
๋ก๊ทธ
journalctl -f
```
## ๐ ์
๋ฐ์ดํธ
### Git ๊ธฐ๋ฐ ์
๋ฐ์ดํธ
```bash
# ์ต์ ์ฝ๋ ๊ฐ์ ธ์ค๊ธฐ
git pull origin main
# ์์กด์ฑ ์
๋ฐ์ดํธ
npm install
# ์ฌ๋น๋
npm run build
# ์๋ฒ ์ฌ์์
npm restart
```
### NPM ๊ธฐ๋ฐ ์
๋ฐ์ดํธ
```bash
# ํจํค์ง ์
๋ฐ์ดํธ
npm update work-memory-mcp
# ๊ธ๋ก๋ฒ ํจํค์ง ์
๋ฐ์ดํธ
npm update -g work-memory-mcp
```
## ๐ ๏ธ ๊ฐ๋ฐ ํ๊ฒฝ ์ค์
### ๊ฐ๋ฐ ๋๊ตฌ ์ค์น
```bash
# ๊ฐ๋ฐ ์์กด์ฑ ์ค์น
npm install --save-dev @types/node typescript ts-node nodemon
# ๊ฐ๋ฐ ์๋ฒ ์คํ
npm run dev
# ์๋ ์ฌ์์์ผ๋ก ๊ฐ๋ฐ
npm run dev:watch
```
### VS Code ์ค์
1. ํ์ฅ ํ๋ก๊ทธ๋จ ์ค์น:
- TypeScript
- ESLint
- Prettier
2. `.vscode/settings.json` ์ค์ :
```json
{
"typescript.preferences.includePackageJsonAutoImports": "auto",
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true
}
}
```
## ๐ ์ง์
### ๋ฌธ์
- [API ๋ ํผ๋ฐ์ค](./API.md)
- [์ฌ์ฉ์ ๊ฐ์ด๋](./USER_GUIDE.md)
- [FAQ](./FAQ.md)
### ์ปค๋ฎค๋ํฐ
- GitHub Issues: ๋ฒ๊ทธ ๋ฆฌํฌํธ ๋ฐ ๊ธฐ๋ฅ ์์ฒญ
- Discord: ์ค์๊ฐ ์ง์ ๋ฐ ํ ๋ก
- Wiki: ์ปค๋ฎค๋ํฐ ๋ฌธ์
### ๊ธฐ์
์ง์
๊ธฐ์
์ฉ ์ง์์ด ํ์ํ ๊ฒฝ์ฐ contact@example.com์ผ๋ก ๋ฌธ์ํด์ฃผ์ธ์.
---
> ๐ก **ํ**: ์ค์น ํ `get_server_status` ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ์์คํ
์ด ์ ์ ๋์ํ๋์ง ํ์ธํ์ธ์!