Skip to main content
Glama
AlexanderChen5966

kyoto-assistant-mcp

README.md
# 京都旅遊助理 (Kyoto Travel Assistant)

**版本**: v4.1 (LangChain v1.0 + LangGraph v1.0)  
**風格**: 完全仿照維也納旅遊助理

---

## 🎯 專案特色

- ✅ **Wikivoyage API** - 真實景點資料
- ✅ **營業檢查工具** - 模擬版本(可升級 Google Places)
- ✅ **ReAct 策略** - Think → Act → Observe
- ✅ **Planning 策略** - 動態調整行程
- ✅ **LangChain v1.0** - 最新穩定 API
- ✅ **LangGraph v1.0** - StateGraph 工作流
- ✅ **7 個 MCP 工具** - 完整協同
- ✅ **Claude Desktop** - 可重用 MCP Server

---

## 🚀 快速開始

### 1. 環境設置

```bash
# 建立虛擬環境
python -m venv venv
source venv/bin/activate  # macOS/Linux

# 安裝套件
pip install -r requirements.txt
```

### 2. 設定 API Keys

```bash
# 複製環境變數模板
cp .env.example .env

# 編輯 .env,填入你的 API Keys
```

### 3. 測試運行

```bash
# 測試 MCP Server(稍後實現)
python mcp_server/server.py

# 測試 CLI(稍後實現)
python main.py test
```

---

## 📂 專案結構

```
kyoto-assistant/
├── src/                    # Agent 相關
│   ├── agent/             # LangChain v1.0 Agent
│   ├── workflow/          # LangGraph v1.0 Workflow
│   └── cli/               # CLI 介面
├── mcp_server/            # MCP Server
│   └── tools/             # 7 個 MCP 工具
├── data/                  # 資料檔案
├── output/                # 輸出檔案
└── tests/                 # 測試腳本
```

---

## 🔧 技術棧

- **LLM**: Google Gemini 2.0 Flash (免費)
- **框架**: LangChain 1.0.x + LangGraph 1.0.x
- **MCP**: Model Context Protocol 1.3.2
- **Python**: 3.10+

---

## 📚 使用範例

```bash
# 規劃行程
python main.py plan --days 2 --budget 25000 --interests 寺廟

# 詢問問題
python main.py ask "清水寺現在營業嗎?"

# 互動模式
python main.py interactive
```

---

## 🎓 學習目標

- ✅ Wikivoyage API 整合
- ✅ LangChain v1.0 API
- ✅ LangGraph v1.0 StateGraph
- ✅ MCP Server 開發
- ✅ ReAct + Planning 策略

---

**開發中... 🚧**