Uses dotenv for loading configuration from .env files, allowing flexible environment configuration for the MCP server.
Parses and extracts information from GameMaker Studio 2 projects, providing access to project structure, GML code, and asset metadata. Includes tools for scanning project structure, retrieving file contents, analyzing game objects, rooms, sprites, and exporting project data in a readable format.
Provides integration with GitHub for project cloning and installation through the repository.
GMS2 MCP Server
MCP server for working with GameMaker Studio 2 projects in Cursor IDE.
What is this?
This MCP server parses and extracts information from GameMaker Studio 2 projects, providing developers and AI agents with quick access to project structure, GML code, and asset metadata.
Key features:
- 📊 For developers: export all project data in a readable format for study and analysis
- 🤖 For AI agents: rapid project structure understanding, significantly accelerating vibe-coding
- 🔍 Deep analysis: automatic scanning of objects, scripts, rooms, sprites and their relationships
- ⚡ Instant access: get information about any asset without opening GameMaker Studio 2
This solution makes working with GMS2 projects more efficient, especially when collaborating with neural networks.
Project Structure
Installation
1. Clone the repository
2. Create virtual environment
3. Install dependencies
Current dependencies:
mcp==1.11.0
- official Python SDK for Model Context Protocolpython-dotenv==1.1.1
- loading configuration from .env files
4. Cursor IDE configuration
Create a .cursor/mcp.json
file in your project root with the following content:
Complete configuration with project path (recommended):
⚠️ Important:
- Replace the path in
args
with the absolute path to your MCP server folder! - Replace the path in
env.GMS2_PROJECT_PATH
with the absolute path to your GMS2 project folder (contains .yyp file)! - Use forward slashes
/
even on Windows
Option 2: Global configuration (for all projects)
- In Cursor IDE, open settings
- Go to Tools & Integrations section
- Click New MCP Server button at the bottom
- This will open the global mcp.json file
- Add the same configuration there
Launch architecture:
- Cursor IDE directly launches
python mcp-serv/mcp_server.py
mcp_server.py
loads project path from environment variableGMS2_PROJECT_PATH
(set in mcp.json)- Parser
gms2_parser.py
provides functionality for working with GMS2 projects
5. Restart Cursor IDE
After configuring, restart Cursor IDE. In Cursor IDE: Open command palette and check MCP servers status.
Features
After successful installation, 7 tools will be available in Cursor IDE:
- 🔍 scan_gms2_project - scan GMS2 project structure (count assets, find GML files)
- 📄 get_gml_file_content - read content of specific GML file
- 🏠 get_room_info - get detailed information about rooms from .yy files
- 🎯 get_object_info - analyze objects and their events from .yy files
- 🖼️ get_sprite_info - sprite information (dimensions, frames, settings)
- 📊 export_project_data - export all project data to text format
- 📋 list_project_assets - list all assets by categories (Objects, Scripts, Rooms, Sprites, etc.)
Features:
- Support for projects with spaces in paths (via environment variables)
- Automatic project structure detection
- Export in human-readable format
- Full compatibility with .yyp and .yy file formats
- Simplified configuration through mcp.json only
Usage Example
In Cursor IDE (AI agent) you can ask:
System Requirements
- Python: 3.8+ (recommended 3.10+) - tested on 3.12
- GameMaker Studio 2: Any version with .yyp projects
- Cursor IDE: With MCP support
- OS: Windows 10/11 (tested)
Troubleshooting
MCP server shows red status
- Check absolute path in
.cursor/mcp.json
(bothargs
andenv.GMS2_PROJECT_PATH
) - Make sure venv is created and dependencies are installed
- Check project path in
env.GMS2_PROJECT_PATH
section of mcp.json
Server doesn't find the project
- Make sure the path in
env.GMS2_PROJECT_PATH
is correct - Path should point to folder with .yyp file
- Use forward slashes
/
even on Windows
Tools don't display (0 tools)
- Restart Cursor IDE
- Check that Python interpreter is accessible
- Test server manually:
python mcp-serv/mcp_server.py
Import errors or path issues
All import and path issues have been resolved in the current version:
gms2_parser.py
is now in the same directory asmcp_server.py
- Project path is configured directly in
.cursor/mcp.json
via environment variables - No config files or wrapper scripts needed
Technical Information
Dependencies
mcp==1.11.0
- official Python SDK for Model Context Protocolpython-dotenv==1.1.1
- loading configuration from .env files
Architecture
The project consists of two main components:
- mcp-serv/gms2_parser.py - GameMaker Studio 2 project parser
- mcp-serv/mcp_server.py - MCP server with 7 tools for analysis
What's Changed
Version 2.1 improvements:
- ✅ Simplified project structure (no wrapper scripts)
- ✅ Fixed all import and path issues
- ✅ Removed config.env dependency - all configuration now in mcp.json
- ✅ Consolidated all server code in mcp-serv/
- ✅ Project path configured via environment variables in mcp.json
- ✅ Improved error handling and debugging
Project History
This MCP server was created based on the idea and functionality of the vibe2gml project, which was also developed to simplify and accelerate vibe-coding in the GameMaker Studio 2 game engine.
vibe2gml is a tool for exporting GMS2 projects to text format for working with AI agents. Our MCP server develops this idea by providing:
- Direct integration with Cursor IDE through the MCP protocol
- A richer set of tools for project analysis
- Real-time data access without file export
- Simplified configuration and setup
Additional Resources
Documentation
- docs/README.md - main documentation in English
- docs/README_RU.md - main documentation in Russian
Useful Links
- MCP Python SDK - official SDK
- MCP Documentation - protocol documentation
- GameMaker Studio 2 - official GameMaker website
- vibe2gml - original project that inspired the creation of this MCP server
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
An MCP server that parses GameMaker Studio 2 projects, providing developers and AI agents with quick access to project structure, GML code, and asset metadata.
Related MCP Servers
- AsecurityAlicenseAqualityAn MCP server that provides access to project files and their contents, allowing users to retrieve file data from specified project directories with error handling and configuration options.Last updated -15TypeScriptMIT License
- AsecurityFlicenseAqualityAn MCP server that helps teams create, manage, and access structured project documentation through six core document types, leveraging AI to generate comprehensive project knowledge management.Last updated -52197TypeScript
- -securityFlicense-qualityAn MCP server that enables interaction with Google Cloud Game Services API, allowing users to manage game server deployments, realms, and configurations through natural language.Last updated -Python
- -securityFlicense-qualityAn MCP server that enables querying and managing relationships between websites and mobile apps through Google's Digital Asset Links API, auto-generated using AG2's MCP builder.Last updated -Python