Ollama MCP Server

Un puente para usar LLMs locales desde Ollama dentro del Protocolo de Contexto del Modelo.

Documentación

Ollama MCP Server

🚀 Un potente puente entre Ollama y el Protocolo de Contexto de Modelos (MCP), que permite una integración perfecta de las capacidades locales de LLM de Ollama en tus aplicaciones impulsadas por MCP.

🌟 Características

Integración completa con Ollama

  • Cobertura completa de la API: Accede a toda la funcionalidad esencial de Ollama a través de una interfaz MCP limpia
  • Chat compatible con OpenAI: Sustituto directo de la API de finalización de chat de OpenAI
  • Potencia de LLM local: Ejecuta modelos de IA localmente con control total y privacidad

Capacidades principales

  • 🔄 Gestión de modelos

    • Descargar modelos de registros
    • Subir modelos a registros
    • Listar modelos disponibles
    • Crear modelos personalizados desde Modelfiles
    • Copiar y eliminar modelos
  • 🤖 Ejecución de modelos

    • Ejecutar modelos con prompts personalizables
    • API de finalización de chat con roles de sistema/usuario/asistente
    • Parámetros configurables (temperatura, tiempo de espera)
    • Soporte de modo sin procesar para respuestas directas
  • 🛠 Control del servidor

    • Iniciar y gestionar el servidor de Ollama
    • Ver información detallada del modelo
    • Manejo de errores y gestión de tiempos de espera

🚀 Primeros pasos

Requisitos previos

  • Ollama instalado en tu sistema
  • Node.js y npm/pnpm

Instalación

  1. Instalar dependencias:
pnpm install
  1. Compilar el servidor:
pnpm run build

Configuración

Añade el servidor a tu configuración de MCP:

Para Claude Desktop:

MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "ollama": {
      "command": "node",
      "args": ["/path/to/ollama-server/build/index.js"],
      "env": {
        "OLLAMA_HOST": "http://127.0.0.1:11434"  // Optional: customize Ollama API endpoint
      }
    }
  }
}

🛠 Ejemplos de uso

Descargar y ejecutar un modelo

// Pull a model
await mcp.use_mcp_tool({
  server_name: "ollama",
  tool_name: "pull",
  arguments: {
    name: "llama2"
  }
});

// Run the model
await mcp.use_mcp_tool({
  server_name: "ollama",
  tool_name: "run",
  arguments: {
    name: "llama2",
    prompt: "Explain quantum computing in simple terms"
  }
});

Finalización de chat (compatible con OpenAI)

await mcp.use_mcp_tool({
  server_name: "ollama",
  tool_name: "chat_completion",
  arguments: {
    model: "llama2",
    messages: [
      {
        role: "system",
        content: "You are a helpful assistant."
      },
      {
        role: "user",
        content: "What is the meaning of life?"
      }
    ],
    temperature: 0.7
  }
});

Crear un modelo personalizado

await mcp.use_mcp_tool({
  server_name: "ollama",
  tool_name: "create",
  arguments: {
    name: "custom-model",
    modelfile: "./path/to/Modelfile"
  }
});

🔧 Configuración avanzada

  • OLLAMA_HOST: Configurar endpoint personalizado de la API de Ollama (predeterminado: http://127.0.0.1:11434)
  • Configuración de tiempo de espera para la ejecución de modelos (predeterminado: 60 segundos)
  • Control de temperatura para la aleatoriedad de las respuestas (rango 0-2)

🤝 Contribuciones

¡Las contribuciones son bienvenidas! No dudes en:

  • Reportar errores
  • Sugerir nuevas funciones
  • Enviar pull requests

📝 Licencia

Licencia MIT: siéntete libre de usarla en tus propios proyectos.


Construido con ❤️ para el ecosistema MCP