WzImg
MCP server enabling AI assistants to interact with MapleStory IMG files - 74 tools for reading, analyzing, modifying, and exporting game data
claude mcp add --transport stdio lastbattle-wzimg-mcp-server dotnet run --project WzImgMCP/WzImgMCP.csproj \ --env WZIMGMCP_DATA_PATH="D:\Extract\v83"
How to use
WzImg MCP Server exposes tools to interact with MapleStory IMG data. It can run in two transport modes: stdio and HTTP. In stdio mode, it runs as a subprocess and you communicate via standard input/output, which is convenient for local clients like Claude Desktop. In HTTP mode, it runs as a standalone web service that clients can query over HTTP with Server-Sent Events (SSE) for streaming responses. The server provides 74 tools across 10 categories to read, analyze, modify, and export IMG data extracted from HaCreator manifests. The typical workflow is to export the IMG files (with HaCreator) to a data path containing manifest.json, then point the MCP server to that data path via the WZIMGMCP_DATA_PATH variable. Once running, you can initialize a session and call specific tools such as list_categories, analyze_img, modify_metadata, export_assets, and more, using the JSON-RPC style protocol described in the README. When using HTTP mode, use the provided endpoints to initialize a session and then invoke tools through the tools/call method, streaming responses via SSE.
How to install
Prerequisites:
- .NET SDK (compatible with the WzImg MCP Server, typically .NET 6+ or later)
- HaCreator (for exporting IMG data) and the generated manifest.json available in the data directory
Installation steps:
- Clone or download the WzImg MCP Server repository.
- Build the server (stdio mode):
cd WzImg-MCP-Server dotnet build WzImgMCP.csproj - Prepare data:
- Export MapleStory IMG files to a directory (containing manifest.json) using HaCreator.
- Note the data path to configure WZIMGMCP_DATA_PATH.
- Run in stdio mode (default):
dotnet run --project WzImgMCP - Run in HTTP mode (optional):
dotnet run --project WzImgMCP -- --http - If you are using an editor or client configuration (e.g., Claude), ensure the data path env var is set as described in the documentation for your chosen transport mode.
Additional notes
Tips and notes:
- The data path must contain manifest.json; otherwise tools may fail to load file metadata.
- For HTTP mode, set WZIMGMCP_DATA_PATH in the environment before starting the server; do not rely on client config to set it.
- The server supports both stdio and HTTP transports, so choose stdio for local, low-latency access and HTTP for remote or multi-client scenarios.
- When using curl to test HTTP mode, initialize a session, then call tools via the tools/call endpoint using the appropriate JSON-RPC structure (initialize, then list or call specific tools).
- If you encounter path or permission errors, verify that the data directory permissions allow read access for the running process.
- The system is designed to work with HaCreator-exported IMG hierarchies, including directories like Character, Map, Mob, Npc, Sound, etc.
Related MCP Servers
mssql
MSSQL Server MCP implementation written in C#
McpDotNet.Extensions.SemanticKernel
Microsoft SemanticKernel integration for the Model Context Protocol (MCP). Enables seamless use of MCP tools as AI functions.
DatabaseMcpServer
MCP server from ttcc666/DatabaseMcpServer
mcp-dataverse
MCP Server for querying Dataverse using SQL
xperience-community
ASP.NET Core MCP server for Xperience by Kentico projects
console-to-http
Example of converting a stdio MCP server to HTTP using ModelContextProtocol.AspNetCore