Jina AI Search

Realice búsquedas semánticas, de imágenes y multimodales utilizando las capacidades de búsqueda neuronal de Jina AI.

Documentación

Servidor MCP de Jina AI

Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona una integración perfecta con las capacidades de búsqueda neuronal de Jina AI. Este servidor permite búsquedas semánticas, búsqueda de imágenes y funcionalidades de búsqueda entre modalidades a través de una interfaz simple.

🚀 Características

  • Búsqueda Semántica: Encuentra documentos semánticamente similares usando consultas en lenguaje natural
  • Búsqueda de Imágenes: Busca imágenes visualmente similares usando URLs de imágenes
  • Búsqueda entre Modalidades: Realiza búsquedas de texto a imagen o de imagen a texto

📋 Requisitos Previos

  • Node.js 16 o superior
  • Una cuenta de Jina AI y clave de API (Obtén una aquí)
  • Entorno compatible con MCP (por ejemplo, Cline)

🛠️ Instalación

  1. Clona el repositorio:
git clone <repository-url>
cd jina-ai-mcp
  1. Instala las dependencias:
npm install
  1. Crea un archivo .env con tu clave de API de Jina AI:
JINA_API_KEY=your_api_key_here
  1. Compila el servidor:
npm run build

⚙️ Configuración

Agrega la siguiente configuración a tu archivo de configuración de MCP:

{
  "mcpServers": {
    "jina-ai": {
      "command": "node",
      "args": [
        "/path/to/jina-ai-mcp/build/index.js"
      ],
      "env": {
        "JINA_API_KEY": "your_api_key_here"
      }
    }
  }
}

🔍 Herramientas Disponibles

1. Búsqueda Semántica

Realiza búsquedas semánticas/neuronales en documentos de texto.

use_mcp_tool({
  server_name: "jina-ai",
  tool_name: "semantic_search",
  arguments: {
    query: "search query text",
    collection: "your-collection-name",
    limit: 10 // optional, defaults to 10
  }
})

2. Búsqueda de Imágenes

Busca imágenes similares usando una URL de imagen.

use_mcp_tool({
  server_name: "jina-ai",
  tool_name: "image_search",
  arguments: {
    imageUrl: "https://example.com/image.jpg",
    collection: "your-collection-name",
    limit: 10 // optional, defaults to 10
  }
})

3. Búsqueda entre Modalidades

Realiza búsquedas de texto a imagen o de imagen a texto.

use_mcp_tool({
  server_name: "jina-ai",
  tool_name: "cross_modal_search",
  arguments: {
    query: "a beautiful sunset", // or image URL for image2text
    mode: "text2image", // or "image2text"
    collection: "your-collection-name",
    limit: 10 // optional, defaults to 10
  }
})

📝 Formato de Respuesta

Todas las herramientas de búsqueda devuelven resultados en el siguiente formato:

{
  content: [
    {
      type: "text",
      text: JSON.stringify({
        results: [
          {
            id: string,
            score: number,
            data: Record<string, any>
          }
        ]
      }, null, 2)
    }
  ]
}

🔐 Manejo de Errores

El servidor maneja varios casos de error:

  • Clave de API inválida
  • Parámetros faltantes o inválidos
  • Límites de velocidad de la API
  • Errores de red
  • Nombres de colecciones inválidos

Todos los errores se formatean adecuadamente y se devuelven con códigos de error y mensajes apropiados.

🤝 Contribuciones

¡Las contribuciones son bienvenidas! No dudes en enviar una Solicitud de Extracción (Pull Request).

📄 Licencia

Este proyecto está licenciado bajo la Licencia MIT - consulta el archivo LICENCIA para más detalles.

🙏 Agradecimientos