Skip to main content
Glama

pipen-mcp

Un plugin de CLI para pipen que expone los procesos y canalizaciones de pipen como herramientas MCP (Model Context Protocol), permitiendo a los asistentes de IA descubrir y ejecutar canalizaciones bioinformáticas.

Descripción general

pipen-mcp conecta el ecosistema de procesos/canalizaciones de pipen con asistentes de IA que admiten el Model Context Protocol. Una vez instalado, cualquier espacio de nombres registrado a través del grupo de puntos de entrada pipen_cli_run es automáticamente detectable y ejecutable por un cliente compatible con MCP (por ejemplo, Claude, VS Code Copilot, Cursor).

Related MCP server: NGS360 MCP Server

Instalación

pip install pipen-mcp

pipen-mcp requiere Python ≥ 3.10 y depende de:

Uso

pipen-mcp añade un subcomando mcp a la CLI de pipen:

pipen mcp [--transport {stdio,sse,streamable-http}] [--host HOST] [--port PORT]

Opción

Descripción

Predeterminado

--transport

Transporte MCP (stdio, sse o streamable-http)

stdio

--host

Host al que vincularse (solo SSE / streamable-http)

127.0.0.1

--port

Puerto en el que escuchar (solo SSE / streamable-http)

8520

stdio (predeterminado)

Adecuado para la integración directa con clientes MCP que inician el servidor como un subproceso:

pipen mcp

SSE

Inicia un servidor HTTP con transporte de eventos enviados por el servidor (Server-Sent Events):

pipen mcp --transport sse --host 0.0.0.0 --port 8520

HTTP transmitible (Streamable HTTP)

Inicia un servidor HTTP con el transporte HTTP transmitible:

pipen mcp --transport streamable-http --host 0.0.0.0 --port 8520

Herramientas MCP

El servidor expone cuatro herramientas que admiten un flujo de trabajo de divulgación progresiva:

Herramienta

Descripción

get_namespaces

Enumera todos los espacios de nombres disponibles. Comience aquí para descubrir qué hay instalado.

get_processes

Enumera todos los procesos/canalizaciones disponibles en un espacio de nombres.

get_process

Obtiene el esquema de argumentos completo para un proceso/canalización específico.

run_process

Ejecuta un proceso/canalización con una lista de argumentos de CLI.

Flujo de trabajo típico

1. get_namespaces()
   → "delim", "bam", "rnaseq", ...

2. get_processes("delim")
   → RowsBinder (proc): Bind rows of input files
   → ColsBinder (proc): Bind columns of input files

3. get_process("delim", "RowsBinder")
   → Required:
       --in.infiles <list[str]>  Input files
   → Optional:
       --envs.sep <str> (default: '\t')  Separator
       --outdir <str>  Output directory
       ...

4. run_process("delim", "RowsBinder", [
       "--in.infiles", "/tmp/a.csv,/tmp/b.csv",
       "--envs.sep", ",",
       "--outdir", "/tmp/out"
   ])
   → Pipeline output / logs

Integración con VS Code / Copilot

Añada el servidor a su configuración de MCP (~/.vscode/mcp.json o ~/.vscode-server/data/User/mcp.json):

{
  "servers": {
    "pipen-mcp": {
      "type": "stdio",
      "command": "pipen",
      "args": ["mcp"]
    }
  }
}

O para SSE:

{
  "servers": {
    "pipen-mcp": {
      "type": "sse",
      "url": "http://127.0.0.1:8520/sse"
    }
  }
}

Creación de un espacio de nombres

Cualquier paquete puede registrar procesos/canalizaciones con pipen-mcp declarando un punto de entrada pipen_cli_run:

# pyproject.toml
[project.entry-points."pipen_cli_run"]
myns = "mypackage.ns.myns"

El módulo referenciado debe contener subclases de Proc (con un atributo input) o subclases de ProcGroup. Utilice pipen-annotate para documentar los argumentos; los campos anotados se exponen en la salida de get_process y se utilizan para construir el esquema de la herramienta.

# mypackage/ns/myns.py
"""My namespace — tools for processing text files."""
from pipen import Proc
from pipen_annotate import annotate

@annotate
class MyProc(Proc):
    """Concatenate rows from multiple files.

    Input:
        infiles (list): Input files to concatenate

    Envs:
        sep (str): Column separator. Default: ","
    """
    input = "infiles:files"
    output = "outfile:file:{{in.infiles[0] | stem}}_concat.tsv"
    script = "..."

Licencia

MIT

Related MCP Connectors

Related MCP Servers

  • F
    license
    C
    quality
    D
    maintenance
    Exposes a local biomedical literature pipeline as MCP tools for automated research workflows. Enables literature search, open-access paper retrieval, and draft generation for biomedical and pathology domains through standard MCP clients.
    6
    -
  • F
    license
    C
    quality
    B
    maintenance
    Exposes the NGS360 bioinformatics platform REST API as MCP tools, enabling AI assistants to manage sequencing runs, projects, workflows, and more through natural language.
    82
    -