Meshy AI MCP Server

Meshy AI MCP Server

By pasie15 GitHub

This is a Model Context Protocol (MCP) server for interacting with the Meshy AI API. It provides tools for generating 3D models from text and images, applying textures, and remeshing models.

Overview

What is Meshy AI MCP Server?

Meshy AI MCP Server is a Model Context Protocol (MCP) server designed for interacting with the Meshy AI API, enabling users to generate 3D models from text and images, apply textures, and remesh models.

How to use Meshy AI MCP Server?

To use the Meshy AI MCP Server, clone the repository, set up a virtual environment, install the MCP package and dependencies, and start the server using Python or the MCP CLI.

Key features of Meshy AI MCP Server?

  • Generate 3D models from text prompts and images.
  • Apply textures to 3D models.
  • Remesh and optimize 3D models.
  • Stream task progress in real-time.
  • List and retrieve tasks and check account balance.

Use cases of Meshy AI MCP Server?

  1. Creating 3D models for games or simulations from descriptive text.
  2. Converting images into 3D models for design purposes.
  3. Applying textures to enhance the visual quality of 3D models.

FAQ from Meshy AI MCP Server?

  • Can I generate 3D models from any text or image?

Yes, as long as the input is clear and descriptive, the server can generate corresponding 3D models.

  • Is there a limit to the number of tasks I can create?

The limit depends on your Meshy AI account balance and API usage policy.

  • How do I check my account balance?

You can check your account balance using the get_balance utility tool provided by the server.

Content

Meshy AI MCP Server

This is a Model Context Protocol (MCP) server for interacting with the Meshy AI API. It provides tools for generating 3D models from text and images, applying textures, and remeshing models.

Features

  • Generate 3D models from text prompts
  • Generate 3D models from images
  • Apply textures to 3D models
  • Remesh and optimize 3D models
  • Stream task progress in real-time
  • List and retrieve tasks
  • Check account balance

Installation

  1. Clone this repository:

    git clone https://github.com/pasie15/scenario.com-mcp-server
    cd meshy-ai-mcp-server
    
  2. (Recommended) Set up a virtual environment:

    Using venv:

    python -m venv .venv
    # On Windows
    .\.venv\Scripts\activate
    # On macOS/Linux
    source .venv/bin/activate
    

    Using Conda:

    conda create --name meshy-mcp python=3.9  # Or your preferred Python version
    conda activate meshy-mcp
    
  3. Install the MCP package:

    pip install mcp
    
  4. Install dependencies:

    pip install -r requirements.txt
    
  5. Create a .env file with your Meshy AI API key:

    cp .env.example .env
    # Edit .env and add your API key
    

Usage

Starting the Server

You can start the server directly with Python:

python src/server.py

Or using the MCP CLI:

mcp run config.json

Editor Configuration

Add this MCP server configuration to your Cline/Roo-Cline/Cursor/VS Code settings (e.g., .vscode/settings.json or user settings):

{
  "mcpServers": {
    "meshy-ai": {
      "command": "python",
      "args": [
        "path/to/your/meshy-ai-mcp-server/src/server.py"  // <-- Make sure this path is correct!
      ],
      "disabled": false,
      "autoApprove": [],
      "alwaysAllow": []
    }
  }
}

For development and debugging, run the server using mcp dev:

mcp dev src/server.py

When running with mcp dev, you'll see output like:

Starting MCP inspector...
⚙️ Proxy server listening on port 6277
🔍 MCP Inspector is up and running at http://127.0.0.1:6274 🚀
New SSE connection

You can open the inspector URL in your browser to monitor MCP communication.

Available Tools

The server provides the following tools:

Creation Tools

  • create_text_to_3d_task: Generate a 3D model from a text prompt
  • create_image_to_3d_task: Generate a 3D model from an image
  • create_text_to_texture_task: Apply textures to a 3D model using text prompts
  • create_remesh_task: Remesh and optimize a 3D model

Retrieval Tools

  • retrieve_text_to_3d_task: Get details of a Text to 3D task
  • retrieve_image_to_3d_task: Get details of an Image to 3D task
  • retrieve_text_to_texture_task: Get details of a Text to Texture task
  • retrieve_remesh_task: Get details of a Remesh task

Listing Tools

  • list_text_to_3d_tasks: List Text to 3D tasks
  • list_image_to_3d_tasks: List Image to 3D tasks
  • list_text_to_texture_tasks: List Text to Texture tasks
  • list_remesh_tasks: List Remesh tasks

Streaming Tools

  • stream_text_to_3d_task: Stream updates for a Text to 3D task
  • stream_image_to_3d_task: Stream updates for an Image to 3D task
  • stream_text_to_texture_task: Stream updates for a Text to Texture task
  • stream_remesh_task: Stream updates for a Remesh task

Utility Tools

  • get_balance: Check your Meshy AI account balance

Resources

The server also provides the following resources:

  • health://status: Health check endpoint
  • task://{task_type}/{task_id}: Access task details by type and ID

Configuration

The server can be configured using environment variables:

  • MESHY_API_KEY: Your Meshy AI API key (required)
  • MCP_PORT: Port for the MCP server to listen on (default: 8081)
  • TASK_TIMEOUT: Maximum time to wait for a task to complete when streaming (default: 300 seconds)

Examples

Generating a 3D Model from Text

from mcp.client import MCPClient

client = MCPClient()
result = client.use_tool(
    "meshy-ai",
    "create_text_to_3d_task",
    {
        "request": {
            "mode": "preview",
            "prompt": "a monster mask",
            "art_style": "realistic",
            "should_remesh": True
        }
    }
)
print(f"Task ID: {result['id']}")

Checking Task Status

from mcp.client import MCPClient

client = MCPClient()
task_id = "your-task-id"
result = client.use_tool(
    "meshy-ai",
    "retrieve_text_to_3d_task",
    {
        "task_id": task_id
    }
)
print(f"Status: {result['status']}")

License

This project is licensed under the MIT License - see the LICENSE file for details.

No tools information available.
No content found.