nf-core MCP Server

Gestiona y navega repositorios locales de pipelines nf-core.

Documentación

Servidor MCP de nf-core

Un servidor MCP para gestionar y navegar por los repositorios de pipelines de nf-core.

Características

  • Lista los repositorios locales de nf-core (rnaseq, sarek, modules, tools)
  • Accede a las configuraciones y flujos de trabajo de los pipelines
  • Busca entre los archivos de los pipelines
  • Explora los módulos de los pipelines

Instalación

Versión NPM


cd nf-core_mcp
npm install

# Build TypeScript
npm run build

# Start the server
npm start

Versión Docker

# Build the Docker image
cd nf-core_mcp
docker build -t nf-core-mcp .
# Run the container
docker run -i --rm \
  -v "/path/to/your/workspace:/app/workspace" \
  nf-core-mcp

Añadir repositorios de nf-core

Para añadir nuevos repositorios de pipelines de nf-core al espacio de trabajo:

  1. Clona los repositorios:

    # Navigate to your workspace directory (example for Windows)
    cd /path/to/your/workspace
    
    # Clone desired nf-core repositories
    git clone https://github.com/nf-core/rnaseq.git
    git clone https://github.com/nf-core/sarek.git
    git clone https://github.com/nf-core/modules.git
    # Add any other nf-core pipeline you want to manage
    
  2. Estructura de directorios: Tu espacio de trabajo debería tener este aspecto:

    workspace/
    ├── rnaseq/
    ├── sarek/
    ├── modules/
    └── your-new-pipeline/
    
  3. Verifica la instalación: Después de iniciar el servidor MCP, usa el comando list-pipelines para verificar que tus nuevos pipelines se detectan:

    list-pipelines
    

Nota: El servidor MCP detectará y gestionará automáticamente cualquier repositorio de pipelines de nf-core en tu directorio de espacio de trabajo.

Herramientas disponibles

  1. list-pipelines

    • Lista todos los pipelines de nf-core en el espacio de trabajo
    • Muestra el estado del archivo de configuración
    • No requiere parámetros
  2. get-pipeline-modules

    • Obtiene información de módulos de un pipeline
    • Parámetros:
      • pipeline: Nombre del pipeline (rnaseq, sarek o modules)
  3. search-pipelines

    • Busca entre los archivos de los pipelines
    • Parámetros:
      • query: Consulta de búsqueda
      • pipeline (opcional): Pipeline específico para buscar

Recursos disponibles

  1. pipeline-config

    • Obtiene la configuración del pipeline
    • Formato de URI: pipeline://{name}/config
    • Parámetros:
      • name: Nombre del pipeline (rnaseq, sarek o modules)
  2. pipeline-workflow

    • Obtiene el flujo de trabajo del pipeline
    • Formato de URI: pipeline://{name}/workflow
    • Parámetros:
      • name: Nombre del pipeline (rnaseq, sarek o modules)

Uso con el IDE Cursor

Usando NPX (recomendado)

Añade lo siguiente a tu mcp.json:

{
  "mcpServers": {
    "nf-core": {
      "command": "npx",
      "args": ["-y", "nf-core-mcp"]
    }
  }
}

Usando Docker

Añade lo siguiente a tu mcp.json:

{
  "mcpServers": {
    "nf-core": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-v",
        "/path/to/your/workspace:/app/workspace",
        "nf-core-mcp"
      ]
    }
  }
}

Ejemplo de uso

Usando el servidor MCP en Cursor:

# List available pipelines
list-pipelines

# Get modules from rnaseq pipeline
get-pipeline-modules pipeline=rnaseq

# Search in all pipelines
search-pipelines query="fastqc"

# Search in specific pipeline
search-pipelines query="fastqc" pipeline=rnaseq

# Access pipeline configuration
pipeline://rnaseq/config

# Access workflow
pipeline://rnaseq/workflow

Ejecutar el servidor

Usando NPM

# If installed globally
nf-core-mcp

# If installed locally
npx nf-core-mcp

# Using npx without installation
npx -y nf-core-mcp

Usando Docker

docker run -it --rm \
  -v /path/to/your/workspace:/app/workspace \
  nf-core-mcp

Desarrollo

# Install dependencies
npm install

# Build TypeScript
npm run build

# Run in development mode
npm run dev

# Run tests
npm test

# Run linter
npm run lint

Licencia

MIT