Network
Decodifica un registro de entrenamiento de enlace PCIe (secuencia LTSSM + conjuntos ordenados TS1/TS2): línea de tiempo Gen1-Gen6, velocidad/anchura negociadas, bits de identificador de tasa, inversión de polaridad y de lanes, fases de ecualización y diagnóstico de reinicios; también califica informes de lane margining (CSV de pcilmr) y dibuja un mapa de calor del ojo.
Llama a esta herramienta desde tu código en tres lenguajes.
curl -X POST 'http://127.0.0.1:3003/es/api/tools/pcie-link-training-linkstate-and-lane-margining-eye-decode' \
-H 'Content-Type: application/json' \
-d '{"logText":"t=0.00ms LTSSM: Detect.Quiet\nt=0.02ms Detect.Active\nt=0.90ms Polling.Active TS1 link=PAD lane=PAD rate=0x01 nfts=255\nt=5.20ms Polling.Configuration TS2 link=PAD lane=PAD rate=0x0F\nt=5.80ms Configuration.Linkwidth.Start TS1 link=0 lane=0 rate=0x0F\nt=6.10ms Configuration.Linkwidth.Accept TS1 link=0 lane=0\nt=6.40ms Configuration.Lanenum.Wait TS1 link=0 lane=0\nt=6.45ms Configuration.Lanenum.Wait TS1 link=0 lane=1\nt=6.50ms Configuration.Lanenum.Wait TS1 link=0 lane=2\nt=6.55ms Configuration.Lanenum.Wait TS1 link=0 lane=3\nt=6.70ms Configuration.Lanenum.Accept TS1 link=0 lane=0\nt=6.75ms Configuration.Lanenum.Accept TS1 link=0 lane=1\nt=6.80ms Configuration.Lanenum.Accept TS1 link=0 lane=2\nt=6.85ms Configuration.Lanenum.Accept TS1 link=0 lane=3\nt=7.00ms Configuration.Complete TS2 link=0 lane=3 rate=0x1F\nt=7.30ms Configuration.Idle\nt=7.40ms L0\nt=8.20ms Recovery.RcvrLock TS1 link=0 lane=3 rate=0x1F speed-change=1\nt=8.50ms Recovery.Speed\nt=9.00ms Recovery.RcvrCfg TS2 link=0 lane=3 rate=0x1F\nt=9.20ms Recovery.Equalization.Phase1\nt=9.60ms Recovery.Equalization.Phase2 TS1 link=0 lane=3 ec=01\nt=10.10ms Recovery.Equalization.Phase3 TS1 link=0 lane=3 ec=10\nt=10.60ms Recovery.Idle\nt=10.70ms L0","pciGen":"auto","showEyeHeatmap":true}'Envía una petición POST con tus entradas en JSON. Los parámetros de tipo archivo requieren una subida previa.
POST http://127.0.0.1:3003/es/api/tools/pcie-link-training-linkstate-and-lane-margining-eye-decode| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| logText | textarea | Sí | — |
| pciGen | select | No | — |
| showEyeHeatmap | checkbox | No | — |
Resultado HTML
{
"result": "<div>Processed HTML content</div>",
"error": "Error message (optional)",
"message": "Notification message (optional)",
"metadata": {
"key": "value"
}
}Añade esta herramienta a tu servidor Model Context Protocol para que los agentes de IA puedan listarla y llamarla.
Añade este bloque a la configuración de tu cliente MCP:
{
"mcpServers": {
"elysiatools-pcie-link-training-linkstate-and-lane-margining-eye-decode": {
"name": "pcie-link-training-linkstate-and-lane-margining-eye-decode",
"description": "Decodifica un registro de entrenamiento de enlace PCIe (secuencia LTSSM + conjuntos ordenados TS1/TS2): línea de tiempo Gen1-Gen6, velocidad/anchura negociadas, bits de identificador de tasa, inversión de polaridad y de lanes, fases de ecualización y diagnóstico de reinicios; también califica informes de lane margining (CSV de pcilmr) y dibuja un mapa de calor del ojo.",
"baseUrl": "http://127.0.0.1:3003/mcp/sse?toolId=pcie-link-training-linkstate-and-lane-margining-eye-decode",
"command": "",
"args": [],
"env": {},
"isActive": true,
"type": "sse"
}
}
}Tras conectar al endpoint SSE, lista las herramientas expuestas:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}Invoca la herramienta por su id; los argumentos se construyen a partir de sus parámetros:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "pcie-link-training-linkstate-and-lane-margining-eye-decode",
"arguments": {
"logText": "t=0.00ms LTSSM: Detect.Quiet\nt=0.02ms Detect.Active\nt=0.90ms Polling.Active TS1 link=PAD lane=PAD rate=0x01 nfts=255\nt=5.20ms Polling.Configuration TS2 link=PAD lane=PAD rate=0x0F\nt=5.80ms Configuration.Linkwidth.Start TS1 link=0 lane=0 rate=0x0F\nt=6.10ms Configuration.Linkwidth.Accept TS1 link=0 lane=0\nt=6.40ms Configuration.Lanenum.Wait TS1 link=0 lane=0\nt=6.45ms Configuration.Lanenum.Wait TS1 link=0 lane=1\nt=6.50ms Configuration.Lanenum.Wait TS1 link=0 lane=2\nt=6.55ms Configuration.Lanenum.Wait TS1 link=0 lane=3\nt=6.70ms Configuration.Lanenum.Accept TS1 link=0 lane=0\nt=6.75ms Configuration.Lanenum.Accept TS1 link=0 lane=1\nt=6.80ms Configuration.Lanenum.Accept TS1 link=0 lane=2\nt=6.85ms Configuration.Lanenum.Accept TS1 link=0 lane=3\nt=7.00ms Configuration.Complete TS2 link=0 lane=3 rate=0x1F\nt=7.30ms Configuration.Idle\nt=7.40ms L0\nt=8.20ms Recovery.RcvrLock TS1 link=0 lane=3 rate=0x1F speed-change=1\nt=8.50ms Recovery.Speed\nt=9.00ms Recovery.RcvrCfg TS2 link=0 lane=3 rate=0x1F\nt=9.20ms Recovery.Equalization.Phase1\nt=9.60ms Recovery.Equalization.Phase2 TS1 link=0 lane=3 ec=01\nt=10.10ms Recovery.Equalization.Phase3 TS1 link=0 lane=3 ec=10\nt=10.60ms Recovery.Idle\nt=10.70ms L0",
"pciGen": "auto",
"showEyeHeatmap": true
}
}
}¿Dudas o problemas? Contacta con [email protected]