Skip to main content

🚀 MCP Starter Kit: Tu primer Agente con Docker y Python

Este repositorio contiene el código fuente oficial del video de Joaquin Ruiz Lite: "Si no usas MCP, tu IA está incompleta (Docker Toolkit + Python)".

Aquí encontrarás un ejemplo práctico y minimalista de cómo crear un Servidor MCP (Model Context Protocol) desde cero, dockerizarlo y conectarlo a Claude Desktop.

📺 Sobre el Proyecto

El objetivo de este proyecto es demostrar que no necesitas ser un experto en LLMs para dotar a la IA de herramientas. En este ejemplo creamos un Dado de 12 caras (D12). Si entiendes este código, entiendes la base para conectar bases de datos, APIs o scripts de automatización.

📂 Estructura del Proyecto

  • server.py: El código del servidor usando FastMCP (Python).
  • Dockerfile: La receta para empaquetar el servidor de forma aislada.
  • requirements.txt: Dependencias necesarias.
  • claude_desktop_config.json: Ejemplo de configuración para tu cliente.

🛠️ Requisitos

⚡ Guía de Inicio Rápido

1. Clonar el repositorio

git clone [https://github.com/JoaquinRuiz/mcp-docker-tutorial.git](https://github.com/JoaquinRuiz/mcp-docker-tutorial)
cd mcp-starter-kit

2. Construir la imagen de Docker

Vamos a crear la imagen de nuestro servidor.

docker build -t mcp-d12 .

3. Configurar Claude Desktop

Abre tu archivo de configuración de Claude.

  • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Añade el siguiente bloque dentro de mcpServers:

{
  "mcpServers": {
    "d12-roller": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "mcp-d12"
      ]
    }
  }
}

Nota de Ingeniero: El flag -i es crucial porque MCP utiliza stdio (entrada/salida estándar) para comunicarse con el contenedor.

4. ¡A probar!

Reinicia Claude Desktop. Verás un icono de un enchufe 🔌 o un martillo 🔨 indicando que las herramientas están cargadas. Prueba con el prompt:

"Tira el dado de 12 caras y si sale más de 6, cuéntame un chiste corto."

📚 Aprende más con Jokioki

Si este código te ha servido, profundizar en la lógica detrás de la IA es lo que te diferenciará como ingeniero. Echa un vistazo a mis libros:

🤝 Contribuir

¿Se te ocurren más herramientas simples para empezar? ¡Haz un Pull Request! Vamos a construir el mejor repo de iniciación a MCP en español.


Hecho con ☕ y código por JoaquinRuizLite. ¡No olvides suscribirte al canal!

Metadata

Release files for iflow-mcp_joaquinruiz_mcp-docker-tutorial 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iflow-mcp_joaquinruiz_mcp-docker-tutorial 0.1.0
File Size Uploaded
iflow_mcp_joaquinruiz_mcp_docker_tutorial-0.1.0.tar.gz 2.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iflow-mcp_joaquinruiz_mcp-docker-tutorial 0.1.0
File Interpreter ABI Platform
iflow_mcp_joaquinruiz_mcp_docker_tutorial-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 6.2 kB

Release files / iflow_mcp_joaquinruiz_mcp_docker_tutorial-0.1.0.tar.gz

Download URL iflow_mcp_joaquinruiz_mcp_docker_tutorial-0.1.0.tar.gz
Size 2.6 kB
Tags Source
SHA-256 checksum
How to use checksums
125b85f32a4dc59ccc958e67db84cb513d28fd05d2684b50471e119f653e486b
BLAKE2b-256 checksum
How to use checksums
ae31a24674daed41271cfb48f9cac23b9c185851477cc39917a64e63b1dc2167
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / iflow_mcp_joaquinruiz_mcp_docker_tutorial-0.1.0-py3-none-any.whl

Download URL iflow_mcp_joaquinruiz_mcp_docker_tutorial-0.1.0-py3-none-any.whl
Size 3.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
23bacd1ce0b87ef1449b5071bdb799c2c5033da9369f27e0990efa6d2e34e545
BLAKE2b-256 checksum
How to use checksums
f4130997be96b7f5e9ac382965ca8a6ebbfdc25e520db92140f380fa78e91a9e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page