Ollama Cloud Web Search Nodejs

Un servidor MCP de Node.js que expone las APIs de búsqueda web y fetch web de Ollama como herramientas MCP. TypeScript, transporte stdio, publicable en npm.

Documentación

ollama-web-search-mcp (Node.js / TypeScript)

npm version License: MIT

Un servidor MCP (Model Context Protocol) en Node.js / TypeScript que expone las API de búsqueda web y obtención de páginas web de Ollama como herramientas MCP.

Esta es la equivalencia en JavaScript / Node.js del servidor MCP oficial de Python de Ollama. Mientras que Ollama proporciona un servidor MCP en Python para la búsqueda web, no existía una versión para Node.js — este proyecto cubre esa necesidad. Está escrito en TypeScript, se ejecuta en Node.js 18+ y se publica en npm para un uso sencillo con npx.

¿Por qué Node.js?

El servidor MCP oficial de Ollama para búsqueda web está escrito en Python y requiere uv o un entorno de ejecución de Python. Muchos clientes MCP y frameworks de agentes (Claude Desktop, Cursor, Cline, Codex, etc.) pueden lanzar cualquier proceso, pero si tu stack ya está basado en Node.js, probablemente no quieras instalar Python solo para un servidor MCP. Este paquete se ejecuta puramente en Node.js — sin necesidad de Python.

Características

  • web_search — Realiza una búsqueda web a través de la API alojada de Ollama y devuelve resultados (título, URL, fragmento de contenido)
  • web_fetch — Obtiene una sola página web por URL y devuelve su título, contenido y enlaces
  • Escrito en TypeScript, compilado a JavaScript ESM
  • Transporte Stdio (estándar para servidores MCP)
  • Cero dependencias de ejecución más allá del SDK de MCP
  • Publicado en npm como @mrfl/ollama-web-search-mcp con un binario CLI
  • Utilizable como biblioteca — importa webSearch() y webFetch() directamente en tu código Node.js

Requisitos previos

Instalación

Desde npm

npm install -g @mrfl/ollama-web-search-mcp

O úsalo directamente con npx (sin instalación):

npx @mrfl/ollama-web-search-mcp

Desde el código fuente

git clone https://github.com/MRFL-Orchestra/ollama-web-search-mcp.git
cd ollama-web-search-mcp
npm install
npm run build

Configuración

Establece tu clave de API de Ollama como variable de entorno:

export OLLAMA_API_KEY="your_api_key_here"

Configuración del cliente MCP

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

Claude Desktop / Cursor / VS Code

{
  "mcpServers": {
    "ollama-web-search": {
      "command": "npx",
      "args": ["@mrfl/ollama-web-search-mcp"],
      "env": {
        "OLLAMA_API_KEY": "your_api_key_here"
      }
    }
  }
}

Cline

{
  "mcpServers": {
    "ollama-web-search": {
      "type": "stdio",
      "command": "npx",
      "args": ["@mrfl/ollama-web-search-mcp"],
      "env": {
        "OLLAMA_API_KEY": "your_api_key_here"
      }
    }
  }
}

Codex

[mcp_servers.ollama-web-search]
command = "npx"
args = ["@mrfl/ollama-web-search-mcp"]
env = { "OLLAMA_API_KEY" = "your_api_key_here" }

Clon local (sin npm)

{
  "mcpServers": {
    "ollama-web-search": {
      "command": "node",
      "args": ["/path/to/ollama-web-search-mcp/dist/index.js"],
      "env": {
        "OLLAMA_API_KEY": "your_api_key_here"
      }
    }
  }
}

Herramientas

web_search

Realiza una búsqueda web utilizando la API de búsqueda alojada de Ollama.

Parámetros:

  • query (cadena, obligatorio) — La cadena de consulta de búsqueda
  • max_results (entero, opcional, predeterminado 5, máximo 10) — Número máximo de resultados a devolver

Devuelve: Un array de resultados de búsqueda, cada uno con:

  • title — Título de la página web
  • url — URL de la página web
  • content — Fragmento de contenido relevante

web_fetch

Obtiene el contenido de una sola página web por URL.

Parámetros:

  • url (cadena, obligatorio) — La URL absoluta a obtener

Devuelve:

  • title — Título de la página web
  • content — Contenido principal de la página web
  • links — Array de enlaces encontrados en la página

Referencia de la API

También puedes usar las funciones de cliente directamente en tu propio código Node.js / TypeScript:

import { webSearch, webFetch } from "@mrfl/ollama-web-search-mcp";

// Web search
const results = await webSearch("what is ollama?", 5);
console.log(results.results[0].title);

// Web fetch
const page = await webFetch("https://ollama.com");
console.log(page.title);
console.log(page.links);

Ambas funciones aceptan un parámetro opcional apiKey (por defecto, la variable de entorno OLLAMA_API_KEY).

Desarrollo

npm install          # Install dependencies
npm run build        # Compile TypeScript
npm run dev          # Watch mode
npm run typecheck    # Type-check without emitting

Licencia

MIT