Trackio documentation

Trackio como API y servidor MCP

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Trackio como API y servidor MCP

El panel de Trackio se puede configurar para ejecutarse como servidor de API HTTP y como servidor de MCP (Model Context Protocol), lo que permite que herramientas y aplicaciones externas interactúen de forma programática con los datos de seguimiento de tus experimentos, o que tú puedas “chatear con tus datos de experimentos” en lenguaje natural utilizando ChatGPT, Claude, Deepseek o diversos LLM que admiten MCP. Esto convierte a Trackio en una opción ideal para agentes de LLM que ejecutan experimentos de ML de forma autónoma, ya que pueden registrar métricas y consultar resultados de experimentos de manera fluida.

Configuración

Instale la dependencia opcional de MCP y, a continuación, active el servidor MCP al iniciar el panel de Trackio. Puede hacerlo de varias formas:

pip install "trackio[mcp]"

Opción 1: Comando de CLI

trackio show --mcp-server

Opción 2: Función de Python

import trackio
trackio.show(mcp_server=True)

Opción 3: Variable de entorno

export GRADIO_MCP_SERVER=True
trackio show

Cuando el modo de servidor MCP está habilitado, Trackio:

  • Monta un servidor MCP de HTTP transmisible junto con el panel de control
  • Expone herramientas de inspección de solo lectura de proyecto/ejecución/métrica a los clientes de MCP
  • Expone un pequeño conjunto de herramientas de mutación (eliminar/renombrar/sincronizar) controladas por un token de escritura

Uso de la API

Trackio expone cada herramienta MCP como un punto de acceso HTTP simple en POST /api/{tool_name}. El cuerpo es JSON; pase los argumentos como {"kwargs": {...}}, {"args": [...]} o simplemente como un objeto plano {"name": value}.

Python
JavaScript
Bash
import httpx2

base = "http://127.0.0.1:7860"

projects = httpx2.post(f"{base}/api/get_all_projects").json()["data"]
print("Projects:", projects)

runs = httpx2.post(
    f"{base}/api/get_runs_for_project",
    json={"project": "my-project"},
).json()["data"]
print("Runs:", runs)

values = httpx2.post(
    f"{base}/api/get_metric_values",
    json={"project": "my-project", "run": "run-1", "metric_name": "loss"},
).json()["data"]
print("Loss values:", values)

Uso de MCP

Al ejecutarse como un servidor MCP, Trackio expone sus herramientas en un único endpoint streamable-HTTP al que pueden conectarse clientes compatibles con MCP (Claude Desktop, Claude Code, etc.).

URL del servidor MCP

El servidor MCP está disponible en:

http://127.0.0.1:7860/mcp/

Cuando se despliega en un Hugging Face Space, la URL es https://<your-space>.hf.space/mcp/.

Herramientas MCP disponibles

Herramientas de lectura:

  1. get_all_projects – Lista todos los proyectos de Trackio en este servidor.
  2. get_runs_for_project – Lista las ejecuciones de un proyecto dado.
  3. get_metrics_for_run – Lista los nombres de las métricas registradas para una ejecución.
  4. get_metric_values – Obtiene los valores de métricas de una ejecución, opcionalmente alrededor de un paso o un tiempo.
  5. get_project_summary – Metadatos de resumen de un proyecto.
  6. get_run_summary – Metadatos de resumen de una ejecución.
  7. get_system_metrics_for_run – Lista los nombres de las métricas del sistema registradas para una ejecución.
  8. get_system_logs – Obtiene los registros de métricas del sistema para una ejecución.
  9. get_snapshot – Obtiene una única instantánea alrededor de un paso o marca de tiempo.
  10. get_logs – Obtiene los registros de métricas de una ejecución.
  11. get_alerts – Obtiene las alertas de un proyecto, opcionalmente filtradas por ejecución o nivel.
  12. get_settings – Devuelve la configuración del panel de control y la configuración de los recursos.

Herramientas de mutación (requieren acceso de escritura — ver más abajo):

  1. delete_run – Elimina una ejecución.
  2. rename_run – Cambia el nombre de una ejecución.
  3. trigger_sync – Dispara una pasada de exportación/sincronización con Hugging Face.

Acceso de escritura para herramientas de mutación

Las herramientas de mutación están restringidas:

  • Local dashboard: el argumento write_token . El token se imprime en la terminal al ejecutar trackio show (también está incrustado como ?write_token=... en la URL del panel de control que se imprime al inicio). Por ejemplo:
    {"project": "my-project", "run": "run-1", "write_token": "<token from startup output>"}
  • Hugging Face Spaces: pase un argumento hf_token con acceso de escritura al repositorio del Space. En este caso, no se utiliza el write_token local.

Las herramientas de lectura nunca requieren un token.

Configuración del cliente MCP

Para agregar Trackio a clientes que admiten servidores MCP de HTTP con streaming, use una configuración como:

{
  "mcpServers": {
    "trackio": {
      "url": "http://127.0.0.1:7860/mcp/"
    }
  }
}
Update on GitHub