SETTO API

Agent Skills

Install the setto-api Agent Skill so Claude Code, Cursor or any AGENTS.md-aware agent knows the 38 SETTO External API endpoints (the tournament setup, draw, result and scheduling writes and «Actividad» included), the setup, draw and result workflows, their populate rules and their error codes.

An Agent Skill is a folder with a SKILL.md inside: YAML frontmatter that says what the skill is for, and a Markdown body the agent loads when a task matches. SETTO publishes one, setto-api, that teaches an agent the whole External API — the 38 endpoints, how to create a tournament, register teams, substitute a player, withdraw a team, build the groups and the knockout draw and enter results, the populate allow-lists, the error codes and the "never print the token" rule — without you explaining it each time.

It is the fallback for every client the MCP server cannot reach, and it is useful alongside MCP too: the skill is what tells an agent when the SETTO tools are the right move.

What is in it

The skill is served from this site under /.well-known/skills/, with /skills/… as a shorter alias for the same files.

FileWhat it is
setto-api/SKILL.mdThe skill itself: when to use it, auth and the six permissions, the 38 endpoints, the propose → confirm → apply scheduling flow, the rules of the setup writes (read first, «Vista previa» → yes → apply, idempotency keys, plan limits) and of the draw and result writes (preview → yes → apply, «Confirmar cuadro», the home/away order of a result, overwrite only on the organizer's word), populate, pagination, soccer scores, errors, safety
setto-api/references/endpoints.mdEvery parameter, body field and legal populate value, per endpoint, plus the data model
setto-api/references/errors.mdEvery error code, its cause, and whether a retry helps
setto-api/references/workflows.md«Crear torneo», «Inscribir parejas», «Sustituir jugador», «Baja de equipo», «Armar grupos / cuadro» and «Cargar resultados», step by step
setto-api/cursor/setto-api.mdcThe same material as a Cursor project rule
setto-api/AGENTS.mdA paste-in section for an existing AGENTS.md
index.jsonMachine-readable catalogue of the skills this site publishes

The frontmatter, if you want to see the shape before installing:

SKILL.md
---
name: setto-api
description: "Read SETTO tournament data (tournaments, divisions/categories, teams, rounds, games, standings), set tournaments up (create a tournament and its categories, register teams, substitute a player, withdraw a team), set up their groups and knockout draws (a category's format, its groups, the knockout draw and its confirmation), record or clear game results, and plan or set a tournament's game schedule through the SETTO External API …"
license: MIT
metadata:
  version: "1.7.0"
  docs: "https://docs.setto.io"
  openapi: "https://docs.setto.io/openapi.json"
  mcp: "https://docs.setto.io/mcp"
---

Install it

The skills CLI accepts a direct download URL to a single SKILL.md, which is what this site serves:

npx skills add https://docs.setto.io/.well-known/skills/setto-api/SKILL.md

By default it installs into the current project. Useful flags:

FlagEffect
-g, --globalInstall to your user directory instead of the project
-a, --agent <agents...>Target specific agents, e.g. claude-code, codex

The CLI's other supported sources are a GitHub shorthand (owner/repo), a full GitHub, GitLab or Azure Repos URL, any git URL, a local path, and compressed archives. The SETTO repository is private, so the direct SKILL.md URL above is the one to use.

Reference files

Installing from a single SKILL.md URL brings that file only. Add the three reference files by hand if you want them — see the manual tab.

Keep the token out of it

The skill never contains a token, and it tells the agent to read one from the SETTO_API_TOKEN environment variable and never print, log or commit it. Keep it that way: do not paste your token into SKILL.md, setto-api.mdc or AGENTS.md — those files get committed.

Updating

There is no auto-update. Re-run the install command to pull the current version; the file overwrites cleanly. metadata.version in the frontmatter tells you what you have — compare it against SKILL.md on this site. Breaking changes to the API are listed in the changelog.

Discovering it programmatically

https://docs.setto.io/.well-known/skills/index.json lists what this site publishes, so a tool can find the skill without scraping the docs:

/.well-known/skills/index.json
{
  "skills": [
    {
      "name": "setto-api",
      "description": "Read SETTO tournament data …",
      "files": [
        "SKILL.md",
        "references/endpoints.md",
        "references/errors.md",
        "references/workflows.md",
        "cursor/setto-api.mdc",
        "AGENTS.md"
      ]
    }
  ]
}

Each files entry is relative to /.well-known/skills/<name>/.

  • MCP server — real tool calls instead of hand-written HTTP, where the client supports it.
  • Docs for LLMs — llms.txt, per-page Markdown, /openapi.json.
  • Authentication — where the token in SETTO_API_TOKEN comes from.

On this page