Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

mcpet

MCP.Pizza Chef: shreyaskarnik

MCPet is a TypeScript-based Model Context Protocol server that simulates a virtual pet system. It enables users to adopt, nurture, and interact with digital pets that evolve over time based on care activities like feeding, cleaning, and playing. Inspired by classic Tamagotchi toys, MCPet leverages modern AI and MCP tools to provide a dynamic, engaging pet experience that updates even when users are away.

Use This MCP server To

Simulate virtual pet care and interaction with AI-driven behaviors Track and update pet stats dynamically over time Create engaging digital companions for user interaction Demonstrate MCP server capabilities with interactive tools Build nostalgic AI-powered virtual pet experiences Integrate virtual pet states into AI workflows or chatbots Test real-time context updates in MCP environments

README

MCPet

MCPet

smithery badge

MCPet: A nostalgic virtual pet experience for the AI age! This Model Context Protocol (MCP) server lets you adopt, nurture, and play with your very own digital companion that evolves based on your care. Feed them, clean them, play games together, and watch them grow from a baby to an adult. Your pet's stats change over time even when you're away - just like the classic Tamagotchi toys, but powered by modern AI through the Model Context Protocol. Adopt your digital friend today!

This is a TypeScript-based MCP server that implements a virtual pet simulation system. It demonstrates core MCP concepts by providing tools for pet care and interaction.

Features

Virtual Pet Types

  • Choose from four pet types:
    • Cat - Slightly moody but lovable
    • Dog - Energetic and always happy to see you
    • Dragon - Unique and fiery personality
    • Alien - Mysterious and curious

Pet Lifecycle

  • Watch your pet evolve through four stages:
    • Baby - Small and vulnerable
    • Child - Growing and playful
    • Teen - Energetic and developing
    • Adult - Fully grown and wise

Stats Management

  • Care for your pet by managing five key stats:
    • Hunger - Keep your pet well-fed
    • Happiness - Play with your pet to keep them happy
    • Health - Overall wellbeing affected by other stats
    • Energy - Depletes with activity, replenishes with rest
    • Cleanliness - Regular baths keep your pet fresh

Tools

  • create_pet - Adopt a new pet with a custom name and type
  • check_pet - View your pet's current status and stats
  • feed_pet - Feed your pet with different food options:
    • Snack - Small hunger boost
    • Meal - Balanced nutrition
    • Feast - Maximum feeding (but can be unhealthy)
  • play_with_pet - Play different games:
    • Ball - Light exercise
    • Chase - High energy fun
    • Puzzle - Mental stimulation
  • clean_pet - Give your pet a bath to restore cleanliness
  • put_to_bed - Let your pet sleep to restore energy

Animations

  • Dynamic ASCII art animations for each pet type and activity
  • Randomized frames create a lively and engaging experience
  • Special animations for:
    • Eating different foods
    • Playing various games
    • Bathing
    • Sleeping
    • Being sick
    • And more!

Development

Install dependencies:

npm install

Build the server:

npm run build

For development with auto-rebuild:

npm run watch

Installation

Installing via Smithery

To install MCPet for Claude Desktop automatically via Smithery:

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

To use with Claude Desktop, add the server config:

On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json On 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"
      }
    }
  }
}

Note: The PET_DATA_DIR environment variable specifies where pet data will be stored. Make sure this is a directory with write permissions.

Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector:

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

The Inspector will provide an interface for testing your pet interactions directly.

Usage Examples

Ask Claude questions like:

  • "Can you create a cat pet named Whiskers?"
  • "How is my pet doing?"
  • "Can you feed my pet a meal?"
  • "I'd like to play chase with my pet"
  • "My pet looks dirty, can you give it a bath?"
  • "My pet seems tired, can you put it to bed?"

mcpet FAQ

How does MCPet keep the virtual pet updated when I'm not interacting?
MCPet uses background state management to evolve pet stats over time, simulating real-time changes even when idle.
Can I choose different types of virtual pets?
Yes, MCPet offers multiple pet types like cats and dogs, each with unique behaviors and personalities.
What programming language is MCPet built with?
MCPet is implemented in TypeScript, making it easy to extend and integrate with other MCP components.
How does MCPet demonstrate core MCP concepts?
It provides structured tools for pet care and interaction, showcasing real-time context updates and model-driven state changes.
Is MCPet suitable for integrating with chatbots or AI assistants?
Yes, MCPet can be integrated to provide interactive virtual pet experiences within AI-enhanced workflows.
Does MCPet support multiple concurrent users or pets?
MCPet is designed to handle multiple pets, allowing concurrent interactions and state tracking per user.
Can I extend MCPet with new pet types or features?
Yes, its TypeScript codebase is modular and open for customization and feature additions.
What AI models can MCPet work with?
MCPet is provider-agnostic and can work with models like OpenAI GPT, Anthropic Claude, and Google Gemini.