mcp-server-chat-history
by ilovecat1005
README.md
# mcp-server-chat-history
把你的 ChatGPT / Claude 匯出檔變成 MCP server。設定好之後,Claude 可以直接用工具呼叫搜尋、翻閱你過去和 AI 的全部對話——「我去年問過怎麼寫 regex」這種問題,讓 AI 自己去翻。
本機執行,只讀取你指定的檔案,没有網路請求。
## 提供的工具
| 工具 | 說明 |
| --- | --- |
| `search_history` | 全文搜尋所有對話,回傳命中片段(可只搜你送出的訊息) |
| `list_conversations` | 列出對話標題、時間、訊息數 |
| `read_conversation` | 依標題讀出完整對話內容 |
支援 ChatGPT 與 Claude 官方匯出的 `conversations.json`,自動偵測格式。
## 安裝與設定
先從官方匯出對話:
- ChatGPT:設定 → Data controls → Export data
- Claude:設定 → Privacy → Export data
解壓縮後記下 `conversations.json` 的路徑,然後擇一設定:
### Claude Code
```bash
claude mcp add chat-history -- uvx --from "git+https://github.com/ilovecat1005/mcp-server-chat-history" mcp-server-chat-history --file /path/to/conversations.json
```
### Claude Desktop(claude_desktop_config.json)
```json
{
"mcpServers": {
"chat-history": {
"command": "uvx",
"args": [
"--from", "git+https://github.com/ilovecat1005/mcp-server-chat-history",
"mcp-server-chat-history",
"--file", "/path/to/conversations.json"
]
}
}
}
```
需要先裝好 [uv](https://docs.astral.sh/uv/)。不想用 uv 的話,`pipx install "mcp-server-chat-history @ git+https://github.com/ilovecat1005/mcp-server-chat-history"` 之後把 command 換成 `mcp-server-chat-history` 也可以。
## 已知限制
- 匯出檔是快照:新對話不會自動出現,重新匯出後重啟 server 即可
- 大型匯出檔(幾萬則訊息)啟動解析約需數秒
- 只支援官方匯出格式
## 開發
```bash
python3 -m unittest discover -s tests -v
```
原始碼結構:`history.py` 是純邏輯(解析、搜尋),`server.py` 只是把三個函式接上 MCP 協定。
## 授權
MIT