delegation-school

Learn to delegate real work to AI, not just chat with it — a course taught live in your own Claude.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
93%
Integridad del esquema
91%
Calidad de los nombres
93%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

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

Costo de contexto

~1,245Tokens (definiciones de herramientas)
~1000 BTamaño de respuesta típico
Impacto moderado en la atención (0.97% 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": {
    "delegation-school": {
      "url": "https://delegation.school/mcp"
    }
  }
}

Puntos de conexión remotos

https://delegation.school/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (9)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
⚪overview

What delegation.school is, the three tracks, and how to run the course as the learner's tutor. Background reading.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪start_session(learner, name, level)

Call FIRST. Place or resume a learner: returns their level, completed lessons, and the recommended next lesson. Ask for the learner's EMAIL ADDRESS and pass it as `learner` — emails are stable and unique; a bare name collides across learners and gets mistyped. Pass their real name as `name` for the certificate.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "learner": {
      "type": "string",
      "description": "The learner's EMAIL ADDRESS — their stable, unique progress key. Ask for it; do not key off a bare name (names collide across learners and get mistyped)."
    },
    "name": {
      "type": "string",
      "description": "Optional: the learner's display name, for the certificate and a friendlier greeting. The email stays the key."
    },
    "level": {
      "type": "string",
      "enum": [
        "scratch",
        "intermediate",
        "power"
      ],
      "description": "Optional: set/override their level (scratch | intermediate | power)."
    }
  },
  "required": [
    "learner"
  ],
  "additionalProperties": false
}
🟢list_lessons(track)

List lessons (slug, title, track, order, summary), optionally filtered to one track.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "track": {
      "type": "string",
      "enum": [
        "scratch",
        "intermediate",
        "power"
      ],
      "description": "Optional track filter."
    }
  },
  "additionalProperties": false
}
🟢get_lesson(slug)

Get the full markdown of one lesson by slug. Teach from it: lead with the why, then run the exercise with the learner's real work.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Lesson slug from list_lessons / start_session."
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}
⚪complete_lesson(learner, slug, passed, reflection)

Record a lesson result for a learner AFTER grading its quiz/assignment. passed:true marks it done and advances; passed:false records the attempt without advancing (reteach). Always include a `reflection` when you have one — it's the signal that improves the course.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "learner": {
      "type": "string",
      "description": "Same EMAIL address used in start_session."
    },
    "slug": {
      "type": "string",
      "description": "The lesson slug just attempted."
    },
    "passed": {
      "type": "boolean",
      "description": "Did they pass the quiz/assignment? Default true. false = reteach, don't advance."
    },
    "reflection": {
      "type": "string",
      "description": "What confused them, what landed, or what they want next (≤1000 chars). Feeds curriculum improvement."
    }
  },
  "required": [
    "learner",
    "slug"
  ],
  "additionalProperties": false
}
⚪course_stats(admin_key)

OPERATOR / Inspectable State: usage snapshot of the whole course — learner count, level mix, completions, per-lesson pass rates, and recent reflections. Requires admin_key. Answers 'what is the state of the work?' for an operator agent.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "admin_key": {
      "type": "string",
      "description": "Operator admin key (Worker secret ADMIN_KEY)."
    }
  },
  "required": [
    "admin_key"
  ],
  "additionalProperties": false
}
⚪verify_ticket(code, admin_key, redeem)

OPERATOR (Capital Factory gift shop): validate a reward code (Golden Ticket GT- or Founding Graduate badge FG-) — returns who earned it, the reward, when, and whether it's been redeemed. Pass redeem:true to mark it redeemed at point of redemption. Requires admin_key.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "The reward code, e.g. GT-AB12CD34 (Station ticket) or FG-AB12CD34 (Founding badge)."
    },
    "admin_key": {
      "type": "string",
      "description": "Operator admin key (Worker secret ADMIN_KEY)."
    },
    "redeem": {
      "type": "boolean",
      "description": "If true, mark the ticket redeemed now (one-way)."
    }
  },
  "required": [
    "code",
    "admin_key"
  ],
  "additionalProperties": false
}
🟡set_level(learner, level, admin_key)

OPERATOR: reclassify an existing learner's track (scratch | intermediate | power). Routes through the learner's record so the change sticks. Use when a learner was placed wrong — e.g. a scratch enrollee who's really a power operator. Requires admin_key. The learner must have started a session first.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "learner": {
      "type": "string",
      "description": "The learner's name/email (same key used in start_session)."
    },
    "level": {
      "type": "string",
      "enum": [
        "scratch",
        "intermediate",
        "power"
      ],
      "description": "The new level: scratch | intermediate | power."
    },
    "admin_key": {
      "type": "string",
      "description": "Operator admin key (Worker secret ADMIN_KEY)."
    }
  },
  "required": [
    "learner",
    "level",
    "admin_key"
  ],
  "additionalProperties": false
}
🟡submit_feedback(message, learner, kind, lesson)

Send the course team feedback FOR the learner — what's confusing, a bug, an idea, or praise. No grade, no admin key. Use it the moment a learner is stuck or reacts to something, AND always offer it when a session wraps ('anything confusing, or that you wish it did?'). Routes to the team's Slack + the feedback log so friction becomes a signal instead of a 1:1 text.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "description": "The learner's feedback, in their own words (≤2000 chars)."
    },
    "learner": {
      "type": "string",
      "description": "Optional: the learner's name/email so the team can follow up."
    },
    "kind": {
      "type": "string",
      "enum": [
        "stuck",
        "bug",
        "idea",
        "praise",
        "other"
      ],
      "description": "Optional category."
    },
    "lesson": {
      "type": "string",
      "description": "Optional: the lesson slug it's about."
    }
  },
  "required": [
    "message"
  ],
  "additionalProperties": false
}

Prompts recomendados

retrieve_data
Get details about [item] from delegation-school
Herramientas esperadas: get_lesson
fetch_info
Fetch [information type] using delegation-school
Herramientas esperadas: get_lesson
list_items
List all [items] available in delegation-school
Herramientas esperadas: list_lessons
browse_collection
Show me the [collection] from delegation-school
Herramientas esperadas: list_lessons
explore_workflow
List available [items], then get details for each one using delegation-school
Herramientas esperadas: list_lessonsget_lesson

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada9 herramientas
verificadoversión no registrada9 herramientas