Vybe Virtual Try-On MCP Server
A FastMCP server that wraps the Replicate API for virtual try-on functionality, ready for deployment to Render.
Setup
Using UV (recommended)
Install uv if you haven't already:
Install dependencies:
Set up environment variables:
Edit .env and add your Replicate API token.
Using pip (alternative)
Install dependencies:
Set up environment variables:
Edit .env and add your Replicate API token.
Related MCP server: MCP Server for Replicate
Local Testing
Run the server locally:
The server will start on the default FastMCP port and expose the virtual_tryon tool.
MCP Client Configuration
Add to your Claude Desktop or other MCP client configuration:
Usage
The server exposes three tools:
test_connection
Tests the connection and shows timeout configuration.
base64_to_url
Converts base64 encoded images to data URIs for use with virtual_tryon:
base64_image: Base64 encoded image string (with or without data:image prefix)image_type: Image type (png, jpg, jpeg, gif, webp) - default: png
Returns a data URI that can be used as model_image or garment_image in virtual_tryon.
virtual_tryon
Performs virtual try-on with these parameters:
model_image: URL or data URI of the person/model imagegarment_image: URL or data URI of the clothing item to try onVarious optional parameters for customization
Timeout Configuration
The server is configured with extended timeouts to handle long-running Replicate operations:
MCP request timeout: 600 seconds (10 minutes)
Replicate polling interval: 5 seconds
Replicate timeout: 600 seconds (10 minutes)
If you still experience timeouts, you can adjust these in the server.py file.
Deployment to Render
Quick Deploy with render.yaml
Push your code to a GitHub repository
Connect the repository to Render
Render will automatically detect the
render.yamlconfigurationAdd your
REPLICATE_API_TOKENin the Render dashboard under Environment VariablesDeploy!
The service includes health check endpoints:
/health- Health check endpoint for Render monitoring/- Root endpoint with service status
Manual Setup
If you prefer manual configuration:
Create a new Web Service on Render
Connect your GitHub repository
Configure the service:
Build Command:
curl -LsSf https://astral.sh/uv/install.sh | sh && source $HOME/.cargo/env && uv sync --frozen --no-devStart Command:
uv run python server.pyHealth Check Path:
/health
Add environment variables:
REPLICATE_API_TOKEN: Your Replicate API token (required)PORT: (leave empty, Render will auto-assign)HOST: (leave empty, defaults to 0.0.0.0)
Using the Remote MCP Server
Once deployed, you can access the server at:
Health Check:
https://your-service-name.onrender.com/healthRoot:
https://your-service-name.onrender.com/MCP Protocol: Use the base URL for MCP client connections
For MCP clients that support HTTP transport:
Replace your-service-name with your actual Render service URL.
Testing the Deployment
Use the included test script to verify your deployment is working:
This will test:
Health check endpoint (
/health)Root endpoint (
/)Basic MCP server connectivity
Example output:
Docker Deployment (Alternative)
A Dockerfile is also included if you prefer containerized deployment. Render will automatically detect and use it if present.