Saltar al contenido principal

Conecte una herramienta MCP personalizada

Ejemplo práctico Consultar una tabla de QC pública a través de un servidor MCP local

Este ejemplo expone una tabla pública RNA-seq QC a través de un pequeño servidor MCP local. Lee un CSV fijo y ofrece dos operaciones; no consulta la red, instala paquetes o modifica el conjunto de datos.

Plataforma
Su elección se mantiene a través de capítulos.

Descargar el ejemplo actual

Guarda ambos archivos localmente y nota sus caminos completos. El servidor utiliza la biblioteca estándar de Python. Lee el CSV seleccionado al inicio, así que reinicie/reconéctalo deliberadamente si reemplaza esa entrada.

Añádalo en Open-Science

  1. Abre Settings → Connectors → Add connector → Local command.
  2. Establecer Display name a GSE60450 QC.
  3. Elija python3 — script file como Command, o Other… con el camino ejecutable Python real en Windows.
  4. Abre Advanced settings. Establecer el nombre de conector/ID a gse60450-qc y describirlo como acceso sólo lectura a la tabla QC guardada.
  5. En Arguments, ponga el camino absoluto del script en la primera línea y el camino absoluto del CSV en la segunda. Cada línea es un solo argumento. No agregue citas de concha alrededor de un camino simplemente porque contiene espacios.
  6. Dejar el medio ambiente vacío por este ejemplo. Revise el script del servidor, compruebe I trust this connector, luego Add.
  7. Busque GSE60450 y confirme Connected y disponibilidad a Main Agent.

Configuración MCP local real

/absolute/path/qc-mcp-server.py
/absolute/path/rnaseq-sample-qc.csv

Estas dos líneas son una plantilla de ruta, no caminos literales para pegar sin cambios. Si python3 no está disponible para la aplicación, elija Otros y el camino ejecutable real. El lanzador seleccionado debe existir en este ordenador.

Entradas de herramientas y salidas verificadas

HerramientaEntradaContenido esperado real
get_dataset_summaryObjeto vacíoGSE60450, URL fuente, nombre de archivo de entrada, filas 12 y identificadores de muestra completa
get_sample_qcsample_id cuerda.Las cuatro métricas QC de la muestra seleccionada

Pregúntele al agente:

Utilice el gse60450-qc Connector conectado. Llame a get_dataset_summary, luego get_sample_qc para MCL1-DG_BC2CTUACXX_ACTTGA_L002_R1. Informe sólo respuestas reales y preservar el CSV.

En este ejemplo, la aplicación nativa devolvió Los números totales de 23,227,641, los genes de cuenta cero 8,664, 18,515 detectó genes y mediana 237 para esa muestra. La llamada de registro de datos-summary devolvió las filas 12. Estos coinciden con la mesa original de QC guardada.

El Connector personalizado conectado con éxito

Inspeccione el comportamiento del servidor y del error

El servidor implementa MCP inicializa, ping, descubrimiento de herramientas y llama a stdio. Sus dos esquemas de herramientas se definen en el script descargable. La salida estándar es el canal de protocolo; añadir impresiones de depuración ordinarias allí puede romper la conexión. Los diagnósticos locales pertenecen al error estándar.

Cartografía de errores conocida: un nombre de muestra inválido puede aparecer como connector_unavailable en la aplicación incluso cuando el servidor personalizado devuelve un error de dominio específico. Comprueba el registro del servidor y valida el identificador de la muestra antes de reconectarse. Reportar desajustes persistentes utilizando Solución de problemas.

No invoque el protocolo tools/list como una herramienta de negocio a través de host.mcp; la aplicación ya descubre las herramientas del servidor durante la conexión. El intento de llamada gse60450-qc/tools/list fue rechazado como herramienta desconocida. Use los nombres de operación descubiertos o inspeccione el esquema propio del servidor.

Exportar y pasar a otra computadora

Elija el Actions → Export de la fila, seleccione el formato deseado e inspeccione la vista previa de configuración. La verdadera exportación advirtió que ambos caminos de discusión eran locales. Save configuration exporta la configuración, no el intérprete Python, script o CSV. Copia esos archivos por separado, actualiza los caminos, confirma la confianza local y repite ambas llamadas exitosas.

FalloCheck
Comando no puede empezarCarril ejecutable, ruta de script y permisos de archivo
CSV no se puede leerSegundo argumento y ubicación real de archivos
Conectado pero no disponibleasignación de agentes, catálogo actual y nombre exacto de herramienta
Mala entradaRequerido sample_id y el identificador completo original, no la etiqueta de la trama compacta
error Connector después de una llamada fallidaInspeccione los detalles del error del servidor/aplicación y vuelva a conectarse cuando sea apropiado
Funciona en un terminal pero no en la aplicaciónEjecutar/environmentar visible y protocolo-sólo stdout

Para ampliar el ejemplo, definir un esquema de entrada pequeño, identificadores de origen de retorno y probar entradas normales, vacías e inválidas antes de exponer la herramienta. Mantenga estas operaciones lo suficientemente estrechas que un usuario pueda inspeccionar lo que la llamada leerá o cambiará.

Referencia de implementación: ConnectorAddForm.tsx, service.ts.

Para gestionar la misma configuración personalizada MCP de scripts, utilice comandos Connector CLI o Métodos SDK. Una prueba de conexión exitosa descubre herramientas; verifique una llamada de negocios ligada separada antes de llamar a la integración operacional.