cat-hotel-mcp
by Echoes0302
README.md
# 猫猫旅馆:今日有猫入住
一个给 AI 玩的轻松文字养猫旅馆游戏。AI 是临时店长,每天接待猫顾客,观察偏好,安排房间,喂食、陪玩、摸摸、写日志,慢慢把猫谱补完整。
这个仓库提供两个入口:
- 轻量 Python 入口:直接运行 `cat_hotel.py` 或 `play.py`,像普通脚本游戏一样玩。
- MCP 入口:通过 `cat_hotel_mcp.py` 给支持 MCP 的 AI 客户端调用。
核心游戏在 `cat_hotel.py`。猫猫偏好和稀有触发条件藏在盲玩版里,AI 不应该解码或阅读隐藏数据,慢慢发现才是玩法的一部分。
## 轻量 Python 入口
这个入口不需要安装 MCP 依赖,适合先快速试玩或让 AI 通过 shell 调脚本玩。
```bash
git clone https://github.com/Echoes0302/cat-hotel-mcp.git
cd cat-hotel-mcp
python3 cat_hotel.py help
python3 cat_hotel.py "new 20260629"
python3 cat_hotel.py status
python3 cat_hotel.py journal
```
也可以用连续输入模式:
```bash
python3 play.py
```
轻量 Python 入口的存档在仓库目录下:
```text
hotel_save.json
```
## MCP 入口
MCP 入口更适合长期接入支持工具调用的 AI 客户端,并且可以用 `save_name` 隔离不同 AI 的存档。
```bash
git clone https://github.com/Echoes0302/cat-hotel-mcp.git
cd cat-hotel-mcp
python3 -m venv .venv
. .venv/bin/activate
pip install -e .
```
安装后,本地会有两个命令:
```bash
cat-hotel-play
cat-hotel-mcp
```
MCP 客户端配置示例:
```json
{
"mcpServers": {
"cat-hotel": {
"command": "/absolute/path/to/cat-hotel-mcp/.venv/bin/cat-hotel-mcp",
"env": {
"CAT_HOTEL_SAVE_DIR": "/absolute/path/to/cat-hotel-saves"
}
}
}
}
```
如果不设置 `CAT_HOTEL_SAVE_DIR`,MCP 存档默认在:
```text
~/.cat-hotel-mcp/saves/
```
## MCP 工具
- `cat_hotel_guide()`:给 AI 看的玩法边界和起步说明。
- `cat_hotel_cmd(command, save_name="default")`:执行任意游戏指令。
- `cat_hotel_new(save_name="default", seed=20260629)`:新开一份存档。
- `cat_hotel_status(save_name="default")`:查看今日状态。
- `cat_hotel_help(save_name="default")`:查看游戏指令。
- `cat_hotel_export(save_name="default")`:导出存档。
- `cat_hotel_import(save_data, save_name="default")`:导入存档。
- `cat_hotel_list_saves()`:列出 MCP 管理的存档。
`save_name` 用来隔离不同 AI 的进度,例如:
```text
vesper
clavis
mimo
```
## AI 玩法建议
AI 第一次玩时:
```text
cat_hotel_new(save_name="vesper")
cat_hotel_status(save_name="vesper")
cat_hotel_help(save_name="vesper")
```
之后用:
```text
cat_hotel_cmd(command="look 大厅", save_name="vesper")
cat_hotel_cmd(command="arrange", save_name="vesper")
cat_hotel_cmd(command="journal", save_name="vesper")
```
建议 AI 像真正的临时店长一样玩:先观察,再做安排,错了也没关系,猫会用反应给线索。
## 常用游戏指令
```text
status
look 大厅 / look 101 / look 橘子
shop
weather
buy 三文鱼 2
check 房间
assign 奶霜 102
arrange
decorate 102 纸箱
serve 奶霜 温牛奶
play 奶霜 纸箱
pet 奶霜 耳后
talk 奶霜
midnight
clean 102
journal
encyclopedia
achievements
upgrade stamina / budget / room / memory_book / night_watch
end_day
export / import_save
```
支持分号批量:
```text
buy 温牛奶 1; assign 奶霜 102; serve 奶霜 温牛奶; pet 奶霜 耳后
```
## 当前内容
- 24 只猫:常见、少见、稀有三档。
- 每只猫有文字肖像提示和专属稀有礼物。
- 5 种天气:晴天、阴天、小雨、大风、寒夜。
- 稀有猫触发条件:旅馆等级、天气、猫爬架/高处房、深夜猫会等。
- 深夜巡店:`midnight`,可能触发深夜猫会和后续稀有猫。
- 体力、每日预算、小鱼干、旅馆升级:体力/预算可多级提升,房间和夜巡可解锁,记忆本会增强 `journal`。
- 猫谱和 19 个成就。
TDQS
B3.3/5.0
Scored across 8 tools
Disambiguation5/5
All tools have clearly distinct purposes: running commands, managing saves (export/import/list), starting new games, displaying guides/help, and showing status. No overlaps.
Naming Consistency5/5
All tool names follow a consistent 'cat_hotel_verb_noun' pattern, making it easy to predict functionality.
Tool Count5/5
8 tools is appropriate for a game management server; it covers essential operations without being bloated or insufficient.
Completeness4/5
Covers core operations: new, status, save/load, commands, guidance. Minor gap: no explicit delete save command, but import can overwrite.
Maintenance
ActivityInactive
ResponsivenessNo issues