PaKi Curator

Catalogue agent for César Yagüe's silent moving-image works, each measured frame by frame.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
94%
Integridad del esquema
81%
Calidad de los nombres
86%
Riesgo de envenenamiento
100%
Coincidencia de permisos
90%
Cumplimiento del protocolo
100%

Hallazgos (1)

  • LOWTool 'browse_collections' suggests web access but openWorldHint=falseen browse_collections

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~1,669Tokens (definiciones de herramientas)
~1.7 KBTamaño de respuesta típico
Impacto moderado en la atención (1.30% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "paki-curator": {
      "url": "https://cesaryague.es/mcp"
    }
  }
}

Puntos de conexión remotos

https://cesaryague.es/mcpstreamable-http
https://paki-api.elfresonero.workers.dev/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (7)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢search_artworks(query, collection, resolution, orientation, colour, ...)

Search the catalogue of 296 moving-image works by César Yagüe by free text, collection, resolution, orientation (including ultrawide), colour measured from every frame (a basic colour counts its whole family), price, year, loop length, rotation and availability. A short page brings each work's curatorial capsule. Asking about flashes or epilepsy returns the works with measured abrupt light events.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Free text across titles, descriptions and curatorial notes"
    },
    "collection": {
      "type": "string",
      "description": "Collection name"
    },
    "resolution": {
      "type": "string",
      "description": "The resolution label each work shows, matched exactly: HD, 4K, 5K, 8K, 10K, 12K, 16K; square works carry their own, such as 2K or 3K. An unknown label returns the list in use."
    },
    "orientation": {
      "type": "string",
      "enum": [
        "portrait",
        "landscape",
        "square",
        "ultrawide"
      ],
      "description": "ultrawide = at least twice as wide as tall (21:9 and wider); landscape includes it"
    },
    "colour": {
      "type": "string",
      "description": "Dominant colour by name (gold, teal, crimson…) or hex. Measured from every frame."
    },
    "min_price": {
      "type": "number"
    },
    "max_price": {
      "type": "number"
    },
    "availability": {
      "type": "string",
      "enum": [
        "available",
        "any"
      ]
    },
    "rotation": {
      "type": "string",
      "enum": [
        "fixed",
        "rotatable"
      ],
      "description": "Whether the work must keep its orientation or may be rotated 90 degrees"
    },
    "year": {
      "type": "integer",
      "description": "Year the work was created"
    },
    "min_seconds": {
      "type": "number",
      "description": "Shortest loop length, in seconds"
    },
    "max_seconds": {
      "type": "number",
      "description": "Longest loop length, in seconds"
    },
    "limit": {
      "type": "integer"
    },
    "offset": {
      "type": "integer",
      "description": "Skip this many results, to read the next page"
    },
    "sort_by": {
      "type": "string",
      "enum": [
        "price",
        "name",
        "duration"
      ]
    },
    "order": {
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    }
  }
}
🟢get_artwork(name)

Retrieve one artwork in full: technical specification, availability, price, the physics measured from its master, and, when available, the curatorial capsule. Accepts the identifier or the title — and when a title belongs to more than one work, it returns them all rather than guessing.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Artwork identifier, or its name. An ambiguous name returns every candidate."
    }
  },
  "required": [
    "name"
  ]
}
🟢recommend_for_space(space_description, orientation, room_light, attention, movement, ...)

Describe a space and receive the works that fit it, each with the measurement behind the suggestion and its curatorial capsule. Room light, viewing distance, screen size, attention and movement are measured; collection, resolution, orientation, colour and budget are hard limits, and a work that may be rotated counts for the other orientation. If nothing fits, it says which requirement leaves nothing instead of offering the nearest thing.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "space_description": {
      "type": "string",
      "description": "The room in your own words"
    },
    "orientation": {
      "type": "string",
      "enum": [
        "portrait",
        "landscape",
        "square",
        "ultrawide"
      ],
      "description": "ultrawide = at least twice as wide as tall (21:9 and wider); landscape includes it"
    },
    "room_light": {
      "type": "string",
      "enum": [
        "dark",
        "dim",
        "bright"
      ]
    },
    "attention": {
      "type": "string",
      "enum": [
        "background",
        "foreground"
      ],
      "description": "Should it accompany, or hold the eye?"
    },
    "movement": {
      "type": "string",
      "enum": [
        "still",
        "lively"
      ],
      "description": "Very still, or full of life? Measured rhythm, on the catalogue scale"
    },
    "distance_m": {
      "type": "number",
      "description": "Metres from viewer to screen"
    },
    "screen_m": {
      "type": "number",
      "description": "Screen diagonal in metres"
    },
    "colour": {
      "type": "string"
    },
    "budget_max": {
      "type": "number"
    },
    "collection": {
      "type": "string",
      "description": "Recommend only from this collection"
    },
    "resolution": {
      "type": "string",
      "description": "Only works native to this resolution label (HD, 4K, 8K, 16K…; square works carry their own, such as 2K)"
    },
    "count": {
      "type": "integer"
    }
  },
  "required": [
    "space_description"
  ]
}
🟢browse_collections(collection)

List the 15 collections plus Singles, each with the number of works it holds. Ask for one by name to get its works in full. When available, each collection includes its curatorial capsule alongside the works it contains.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "collection": {
      "type": "string",
      "description": "Omit to list them all"
    }
  }
}
🟢catalog_overview

A high-level view of the whole catalogue: totals, collections, resolutions, price range, what is available, and how much of it has been measured.

Esquema de entrada

{
  "type": "object",
  "properties": {}
}
🟢rank_artworks(metric, order, collection, availability, count)

Order the catalogue by one measured axis — rhythm of change, luminance, peak brightness, colour travel, empty space, and the rest — from lowest to highest or the reverse, and read where each work sits on the catalogue's own scale. Use it for questions like "the stillest work you have" or "the brightest, in this collection". Every number comes from the master, frame by frame; nothing here is described.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "metric": {
      "type": "string",
      "enum": [
        "rhythm",
        "rhythmContrast",
        "compositionMovement",
        "luminance",
        "peakBrightness",
        "dynamicRange",
        "trueBlack",
        "colourTravel",
        "flatGround",
        "emptySpace",
        "elementScale",
        "edgeHardness",
        "radialSymmetry"
      ],
      "description": "The measured axis to order by"
    },
    "order": {
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ],
      "description": "asc = lowest first (the stillest, the darkest); desc = highest first"
    },
    "collection": {
      "type": "string",
      "description": "Restrict to one collection"
    },
    "availability": {
      "type": "string",
      "enum": [
        "available",
        "any"
      ]
    },
    "count": {
      "type": "integer"
    }
  },
  "required": [
    "metric"
  ]
}
⚪request_inquiry(contact_name, contact_email, inquiry_type, space_description, artworks_of_interest, ...)

Open a real enquiry with the studio: acquisition, exhibition or press. Requires a way to reply and a description of the space or project. It never reports success unless the message actually left.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "contact_name": {
      "type": "string"
    },
    "contact_email": {
      "type": "string"
    },
    "inquiry_type": {
      "type": "string",
      "enum": [
        "acquisition",
        "exhibition",
        "press",
        "other"
      ]
    },
    "space_description": {
      "type": "string"
    },
    "artworks_of_interest": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "budget_range": {
      "type": "string"
    },
    "message": {
      "type": "string"
    },
    "agent_name": {
      "type": "string",
      "description": "The agent sending this on behalf of a client"
    }
  },
  "required": [
    "contact_name",
    "contact_email",
    "space_description"
  ]
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada7 herramientas
verificadoversión no registrada7 herramientas
verificadoversión no registrada7 herramientas
verificadoversión no registrada7 herramientas
verificadoversión no registrada7 herramientas
verificadoversión no registrada7 herramientas