Skip to main content
Glama

MCP Badge

mlx-serve-mcp

Servidor MCP que convierte una instancia remota de mlx-serve en herramientas invocables — para que cualquier cliente MCP (Claude Code, Claude Desktop, Cline, ...) en cualquier dispositivo pueda generar imágenes, voz, música, vídeo y mallas 3D a través del ip:port de tu Mac.

mlx-serve ejecuta los modelos de forma nativa en Apple Silicon; este puente se comunica mediante MCP por un lado y con la API de medios estilo OpenAI de mlx-serve (/v1/images, /v1/audio, /v1/video, /v1/3d) por el otro. Nada se genera localmente: tu máquina solo se comunica por HTTP con el servidor.

┌──────────────┐  stdio/MCP   ┌────────────────┐    HTTP     ┌──────────────────┐
│ MCP client   │ ◄──────────► │  mlx-serve-mcp │ ──────────► │ mlx-serve server │
│ (any device) │              │  (this package)│  ip:port    │  (Apple Silicon) │
└──────────────┘              └────────────────┘             └──────────────────┘

Instalación y ejecución

Requiere Python ≥ 3.10. Con uv instalado:

cd mlx-serve-mcp
uv sync                 # create venv + install deps
uv run mlx-serve-mcp --url 192.168.1.10:11234

La URL acepta ip:port sin más (se asume http), host:port, o una URL completa http(s)://....

Configuración

Las opciones de CLI anulan las variables de entorno:

Indicador

Variable de entorno

Predeterminado

Significado

--url

MLX_SERVE_URL

http://127.0.0.1:11234

Dirección de mlx-serve

--api-key

MLX_SERVE_API_KEY

(ninguna)

Clave Bearer cuando el servidor se ejecuta con autenticación mediante clave API

--output-dir

MLX_SERVE_OUTPUT_DIR

~/Downloads/mlx-serve-mcp

Dónde se escriben los archivos multimedia generados

--timeout

MLX_SERVE_TIMEOUT

1800

Tiempo de espera HTTP en segundos (el vídeo/la música pueden tardar muchos minutos)

Modelos por defecto

Cada herramienta multimedia acepta un argumento model opcional. Cuando se omite, la herramienta recurre a un valor predeterminado configurable (variable de entorno → integrado):

Variable de entorno

Herramienta

Predeterminado integrado

MLX_SERVE_IMAGE_MODEL

generate_image

Runpod/FLUX.2-klein-4B-mflux-4bit

MLX_SERVE_IMAGE_EDIT_MODEL

edit_image

Runpod/FLUX.2-klein-4B-mflux-4bit

MLX_SERVE_TTS_MODEL

text_to_speech

mlx-community/Qwen3-TTS-12Hz-1.7B-Base-bf16

MLX_SERVE_MUSIC_MODEL

generate_music

ddalcu/MiniMax-Music3-MLX-Serve-8bit

MLX_SERVE_VIDEO_MODEL

generate_video

ddalcu/MiniMax-H3-FL2VA-MLX-Serve-8bit

MLX_SERVE_MESH_MODEL

generate_3d

ddalcu/Hunyuan3D-2.1-MLX-Serve-8bit

Recomendación de modelos (basada en pruebas reales con mlx-serve):

  • ddalcu/Mage-Flow-Turbo-MLX-Serve-8bit es rápido, pero su calidad está por debajo de Runpod/FLUX.2-klein-4B-mflux-4bit — en particular, la generación de rostros tiende a salir distorsionada. Sin embargo, es mucho más fiable que mlx-community/flux2-klein-9b-4bit a la hora de renderizar texto en imágenes, así que para arte centrado en texto (pósters, tipografía, letreros) en lugar de retratos, ddalcu/Mage-Flow-Turbo-MLX-Serve-8bit es la opción recomendada.

  • ddalcu/Mage-Flow-Edit-Turbo-MLX-Serve-8bit puede dar un error de peso/parámetro en mlx-serve (Model load failed: MissingMageFlowWeight), lo que hace que el modelo no se pueda usar.

  • mlx-community/flux2-klein-9b-4bit tiene un problema similar de fallo al cargar.

En resumen: usa Runpod/FLUX.2-klein-4B-mflux-4bit tanto para generate_image como para edit_image — es el único modelo de imagen de este grupo que carga de forma fiable y produce buenos resultados (incluidos los rostros).

Defínelas en la configuración de tu cliente MCP para fijar los modelos que realmente tienes instalados en el servidor:

{
  "mcpServers": {
    "mlx-serve": {
      "command": "uv",
      "args": ["--directory", "/path/to/mlx-serve-mcp", "run", "mlx-serve-mcp", "--url", "192.168.1.10:11234"],
      "env": {
        "MLX_SERVE_API_KEY": "private",
        "MLX_SERVE_IMAGE_MODEL": "ddalcu/Mage-Flow-Turbo-MLX-Serve-8bit",
        "MLX_SERVE_TTS_MODEL": "mlx-community/Qwen3-TTS-12Hz-1.7B-Base-bf16"
      }
    }
  }
}

Related MCP server: imagine-mcp

Integración con tu cliente MCP

Claude Code (.mcp.json / claude mcp add):

{
  "mcpServers": {
    "mlx-serve": {
      "command": "uv",
      "args": [
        "--directory", "/absolute/path/to/mlx-serve-mcp",
        "run", "mlx-serve-mcp",
        "--url", "192.168.1.10:11234"
      ]
    }
  }
}

Claude Desktop (claude_desktop_config.json) usa la misma estructura command/args. Añade "env": {"MLX_SERVE_API_KEY": "..."} si el servidor requiere una clave.

Herramientas

Herramienta

Endpoint

Devuelve

health_check

GET /health

texto de disponibilidad

list_models

GET /v1/models

IDs de modelo + indicadores de capacidad (imagen/habla/música/vídeo/3d/chat)

load_model(model)

POST /v1/load-model

cargar en memoria GPU (opcionalmente como predeterminado)

unload_model(model)

POST /v1/unload-model

liberar memoria GPU

generate_image(prompt, size?, seed?, steps?, model?)

POST /v1/images/generations

imagen en línea + ruta del PNG guardado

edit_image(prompt, image_path, mode=edit|variation, ...)

mismo

imagen en línea + ruta del PNG guardado

text_to_speech(text, voice?/ref_audio_path?, speed?, seed?)

POST /v1/audio/speech

ruta del WAV guardado

generate_music(prompt_style, lyrics?, duration_seconds?, bpm?, task?, src_audio_path?)

POST /v1/audio/music-generations

ruta del WAV guardado

generate_video(prompt, num_frames?, width?, height?, turbo?, first_frame_image_path?...)

POST /v1/video/generations

ruta del MP4 codificado

generate_3d(image_path, steps?, octree_resolution?, texture?...)

POST /v1/3d/generations

ruta del GLB guardado

Los archivos de salida se guardan en <output-dir>/{images,audio,video,mesh}/ con nombres con marca de tiempo; cada herramienta informa de rutas absolutas en su texto de resultado.

Indicaciones

Plantillas de indicaciones de un clic expuestas a través de prompts/list / prompts/get:

Indicación

Qué hace

create_poster

Póster/tipografía centrada en texto (Mage-Flow-Turbo — el mejor en renderizado de texto)

portrait_photo

Retrato realista (FLUX.2-klein-4B — el mejor para rostros)

lofi_track

Pista de música hip-hop lo-fi (MiniMax-Music3)

speak_text

TTS natural (Qwen3-TTS)

image_to_3d

Foto recortada → GLB texturizado (Hunyuan3D-2.1)

short_video

Vídeo de vista previa de 9 fotogramas (la vía más rápida)

Recursos

Fuentes de datos en vivo expuestas a través de resources/list / resources/read:

Recurso

URI

Contenido

models

mlx-serve://models

Inventario de modelos en vivo con indicadores de capacidad

server_status

mlx-serve://status

Estado, versión, modelos cargados

model_guidance

mlx-serve://guidance

Modelo recomendado por herramienta (probado en el mundo real)

LobeHub Marketplace

Este paquete está publicado en el LobeHub MCP Marketplace con un manifiesto completo lhm.plugin.json y un skill.md para el descubrimiento por parte de agentes.

Notas de diseño

  • Vídeo: mlx-serve responde con bytes de fotogramas RGB8 crudos (+ pista PCM s16le opcional), no con un archivo codificado. Este puente los multiplexa en MP4 H.264/AAC mediante ffmpeg — prefiriendo el ffmpeg del sistema y recurriendo al binario estático incluido con la dependencia imageio-ffmpeg, por lo que no se necesita instalación adicional.

  • Imágenes: se devuelven tanto en línea (contenido de imagen MCP, vista previa instantánea) como archivos PNG guardados.

  • Errores: los mensajes de error 400 con nombre de mlx-serve (p. ej. 'speed' must be in (0, 5]) se muestran tal cual para que el LLM que llama pueda autocorregirse.

  • Campos LoRA: no se exponen a propósito: requieren rutas .safetensors en el disco del servidor, lo que rara vez tiene sentido para llamadas remotas.

  • Las generaciones largas son simplemente peticiones HTTP lentas; aumenta --timeout si tus clips son ambiciosos.

Desarrollo

uv sync
uv run pytest          # unit tests (mocked HTTP, no server required)
uv run mlx-serve-mcp --help
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • MCP server for MiniMax H3 multimodal video generation

  • Remote MCP server for RunComfy Serverless API (ComfyUI): deployments and async inference.

  • MCP server for Wan AI video generation

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Congenital/mlx-serve-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server