虚拟宠物模拟器

MCPet是一款基于Model Context Protocol的虚拟宠物模拟器,提供宠物收养、喂养、清洁和互动游戏等功能,适用于数字宠物爱好者和AI技术爱好者。

  • by shreyaskarnik
  • TypeScript
  • 本地部署
  • 13 星标
  • 更新于
在 GitHub 查看 shreyaskarnik/mcpet

使用说明

MCPet

MCPet:人工智能时代的怀旧虚拟宠物体验!这 模型上下文协议(MCP) 服务器允许您收养、培养和玩您自己的数字伴侣,它会根据您的护理而发展。喂它们,打扫它们,一起玩游戏,看着它们从婴儿成长为成年人。即使你不在,你的宠物的统计数据也会随着时间的推移而变化——就像经典的Tamagotchi玩具一样,但通过模型上下文协议由现代人工智能提供支持。今天就收养你的数字朋友吧!

这是一个基于TypeScript的MCP服务器,实现了一个虚拟宠物模拟系统。它通过提供宠物护理和互动工具来展示MCP的核心概念。

特性

虚拟宠物类型

  • 从四种宠物类型中选择:
    • 猫-有点喜怒无常,但很可爱
    • 狗-精力充沛,总是很高兴见到你
    • 龙-独特而火热的个性
    • 外星人-神秘而好奇

宠物生命周期

  • 观察你的宠物经历四个阶段:
    • 婴儿-小而脆弱
    • 儿童-成长和玩耍
    • 青少年-充满活力和发展
    • 成年人-完全成熟且聪明

统计管理

  • 通过管理五个关键数据来照顾你的宠物:
    • 饥饿-让你的宠物吃饱
    • 快乐-和你的宠物一起玩,让他们快乐
    • 健康-受其他统计数据影响的整体幸福感
    • 能量-活动耗尽,休息补充
    • 清洁-定期洗澡让你的宠物保持新鲜

工具

  • create_pet -收养一只具有自定义名称和类型的新宠物
  • check_pet -查看宠物的当前状态和统计数据
  • feed_pet -给宠物喂食不同的食物选择:
    • 零食-轻微的饥饿感增强
    • 膳食-均衡营养
    • 盛宴-最大限度的喂养(但可能不健康)
  • play_with_pet -玩不同的游戏:
    • 球-轻度运动
    • Chase-高能量乐趣
    • 谜题-精神刺激
  • clean_pet -给宠物洗澡以恢复清洁
  • put_to_bed -让你的宠物睡觉以恢复能量

动画

  • 每种宠物类型和活动的动态ASCII艺术动画
  • 随机框架创造了一种生动有趣的体验
  • 特殊动画:
    • 吃不同的食物
    • 玩各种游戏
    • 沐浴
    • 睡觉
    • 生病了
    • 还有更多!

发展

安装依赖项:

npm install

构建服务器:

npm run build

对于自动重建的开发:

npm run watch

安装

通过Smithery安装

通过以下方式自动安装MCPet for Claude Desktop 史密瑟里:

npx -y @smithery/cli install @shreyaskarnik/mcpet --client claude

要与Claude Desktop一起使用,请添加服务器配置:

在MacOS上: ~/Library/Application Support/Claude/claude_desktop_config.json 在Windows上: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "mcpet": {
      "command": "node",
      "args": ["/path/to/mcpet/build/index.js"],
      "env": {
        "PET_DATA_DIR": "/path/to/writable/directory"
      }
    }
  }
}

注: PET_DATA_DIR 环境变量指定宠物数据的存储位置。确保这是一个具有写权限的目录。

调试

由于MCP服务器通过stdio进行通信,调试可能具有挑战性。我们建议使用 MCP检查员:

npx @modelcontextprotocol/inspector node /path/to/mcpet/build/index.js

检查员将提供一个界面,用于直接测试您的宠物互动。

使用示例

问克劳德以下问题:

  • “你能创造一个名为Whiskers的猫宠物吗?”
  • “我的宠物怎么样了?”
  • “你能给我的宠物喂顿饭吗?”
  • “我想和我的宠物玩追逐游戏”
  • “我的宠物看起来很脏,你能给它洗澡吗?”
  • “我的宠物看起来很累,你能把它放在床上吗?”