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.
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
- Abre Settings → Connectors → Add connector → Local command.
- Establecer Display name a
GSE60450 QC. - Elija python3 — script file como Command, o Other… con el camino ejecutable Python real en Windows.
- Abre Advanced settings. Establecer el nombre de conector/ID a
gse60450-qcy describirlo como acceso sólo lectura a la tabla QC guardada. - 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.
- Dejar el medio ambiente vacío por este ejemplo. Revise el script del servidor, compruebe I trust this connector, luego Add.
- Busque
GSE60450y confirme Connected y disponibilidad a Main Agent.

/absolute/path/qc-mcp-server.py
/absolute/path/rnaseq-sample-qc.csv
/absolute/path/qc-mcp-server.py
/absolute/path/rnaseq-sample-qc.csv
C:\Research data\mcp test\qc-mcp-server.py
C:\Research data\mcp test\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.
En Windows, utilice Other… para entrar en el camino completo a un python.exe instalado; el preset python3 no establece que el comando existe. Confirme el camino de intérprete en Entornos de ejecución. Mantenga el script y las rutas CSV en dos líneas Arguments separadas, incluso cuando sus nombres de carpeta contienen espacios. No combinar los argumentos y argumentos ejecutables en un comando de shell.
Entradas de herramientas y salidas verificadas
| Herramienta | Entrada | Contenido esperado real |
|---|---|---|
| get_dataset_summary | Objeto vacío | GSE60450, URL fuente, nombre de archivo de entrada, filas 12 y identificadores de muestra completa |
| get_sample_qc | sample_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.

Abra la actividad Notebook para ambas llamadas de herramientas, luego vuelva a abrir el JSON guardado y compare sus IDs de muestra y métricas con el CSV. El Windows ejecuta a continuación utiliza el ID de conector gse60450-qc-win; use su propio ID configurado en la solicitud.

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.
Para MCP client config, inspeccione mcpServers: este ejemplo exporta un servidor con un command y dos args. Las pantallas JSON escaparon de las barras traseras en los caminos Windows. En otra computadora, actualice los tres caminos a los archivos reales y vuelva a introducir ambas llamadas. Una configuración exportada no establece que el ordenador de destino esté conectado.
| Fallo | Check |
|---|---|
| Comando no puede empezar | Carril ejecutable, ruta de script y permisos de archivo |
| CSV no se puede leer | Segundo argumento y ubicación real de archivos |
| Conectado pero no disponible | asignación de agentes, catálogo actual y nombre exacto de herramienta |
| Mala entrada | Requerido sample_id y el identificador completo original, no la etiqueta de la trama compacta |
| error Connector después de una llamada fallida | Inspeccione los detalles del error del servidor/aplicación y vuelva a conectarse cuando sea apropiado |
| Funciona en un terminal pero no en la aplicación | Ejecutar/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.