playcaller

playcaller

An MCP server that enables AI agents to play-test Unity games by capturing screenshots and simulating inputs like taps, drags, and key presses, acting as a Playwright for Unity.

Category
Visit Server

README

Playcaller

日本語はこちら

An MCP server that lets AI agents play-test Unity games like a real player. It provides screenshot capture, input simulation (tap, drag, flick, key press), Play Mode control, and more — all accessible from AI agents.

In short, it's a Playwright MCP for Unity.

Features

  • Game View screenshot capture
  • Tap, drag, flick, and key input simulation
  • Play Mode start / stop / pause
  • Scene GameObject hierarchy inspection
  • Console log retrieval
  • AssetDatabase refresh
  • Menu item execution
  • Editor state retrieval

Limitations

  • Not suited for testing fast-paced action games
  • Not suited for evaluating overall game experience
  • Not suited for judging visual effects quality

Requirements

  • Unity 2022.3 or later
  • Python 3.10 or later (uv recommended)

Setup

1. Install the Unity package

  1. Open Window > Package Manager in the Unity Editor menu bar
  2. Click the + button in the top-left corner
  3. Select Add package from git URL...
  4. Enter the following URL and click Add
https://github.com/takashicompany/playcaller.git

Newtonsoft.Json (com.unity.nuget.newtonsoft-json) will be installed automatically if not already present.

2. Register the MCP server

Run the following command:

claude mcp add playcaller -- uvx playcaller

If something doesn't work, try asking the AI for help.

3. Verify the connection

Launch Claude Code while the Unity Editor is open, and it will connect automatically.

Updating

Unity package

  1. Open Window > Package Manager
  2. Select Playcaller from the list
  3. Click Update

MCP server (PyPI)

uvx --upgrade playcaller

and restart Claude Code.

Notes

Run In Background

If the game does not progress after starting Play Mode via MCP, the project's "Run In Background" setting may be disabled. Enable it in Edit > Project Settings > Player > Resolution and Presentation > Run In Background, or set Application.runInBackground = true in your game code.

HDR projects

In URP/HDRP projects with HDR enabled, playcaller_screenshot may hang due to a known Unity issue. Use playcaller_read_gameview_pixels instead, which reads the GameView's internal buffer directly and works with HDR.

MCP Tools

Tool Description
playcaller_screenshot Capture a Game View screenshot
playcaller_read_gameview_pixels Capture Game View by reading internal buffer (HDR compatible)
playcaller_tap Tap at specified coordinates
playcaller_multi_tap Execute multiple taps in sequence
playcaller_drag Drag operation
playcaller_flick Flick (quick swipe) operation
playcaller_key_press Keyboard input
playcaller_playmode Start / stop / pause Play Mode
playcaller_wait Wait for a specified time or frame count
playcaller_console_log Retrieve Unity console logs
playcaller_refresh Refresh AssetDatabase
playcaller_get_hierarchy Get the GameObject hierarchy in the scene
playcaller_get_gameobject Get detailed info about a specific GameObject
playcaller_execute_menu_item Execute a Unity Editor menu item
playcaller_get_editor_state Get the current editor state
playcaller_game_query Send a custom query to the running game
playcaller_set_game_view_size Set the Game View resolution

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured