AI Certificates

Practice questions for the four Claude certifications. The assistant never sees the key.

¿Debería usar esto?

Calidad y seguridad

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

Hallazgos (1)

  • LOWTool 'check_answer' description lacks action verben check_answer

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

Costo de contexto

~922Tokens (definiciones de herramientas)
~1.1 KBTamaño de respuesta típico
Impacto moderado en la atención (0.72% 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": {
    "practice-exams": {
      "url": "https://aicertificates.study/api/mcp"
    }
  }
}

Puntos de conexión remotos

https://aicertificates.study/api/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (5)

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

The Claude certifications covered here, with exam codes, item counts, fees and the full domain list with published weights. Call this first to get valid exam slugs.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_practice_question(exam, domain, exclude_ids, focus)

Returns one original practice question with its options and no answer key. Present it to the user and let them choose before calling check_answer. Pass every id already served in exclude_ids — this server is stateless and remembers nothing.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "exam": {
      "type": "string",
      "enum": [
        "ccar-p",
        "ccdv-f",
        "ccao-f",
        "ccar-f"
      ],
      "description": "Exam slug from list_exams."
    },
    "domain": {
      "type": "string",
      "description": "Optional domain id (e.g. \"d3\") to drill one area. Domain ids come from list_exams."
    },
    "exclude_ids": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Question ids already served in this session, so they are not repeated."
    },
    "focus": {
      "type": "string",
      "enum": [
        "hardest",
        "traps"
      ],
      "description": "Optional ordering by how everyone else answers these questions: \"hardest\" serves the highest crowd miss rates first, \"traps\" serves the questions most people get wrong the SAME way — a shared misconception rather than merely a hard question. Nothing is filtered out; questions with no crowd data simply come last."
    }
  },
  "required": [
    "exam"
  ],
  "additionalProperties": false
}
🟢my_progress(exam)

Their recorded history for one exam, broken down by blueprint domain with the weakest first, plus how their misses compare with everyone else's on the same free-form questions. Call this at the start of a study session to decide what to drill, and after a run of questions to show what moved. It names the domain to pass to get_practice_question, and when their misses follow the crowd's favorite wrong answers it says to drill those with focus: "traps". Only a signed-in account has history; anonymous callers are told so rather than shown zeros.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "exam": {
      "type": "string",
      "enum": [
        "ccar-p",
        "ccdv-f",
        "ccao-f",
        "ccar-f"
      ],
      "description": "Exam slug from list_exams."
    }
  },
  "required": [
    "exam"
  ],
  "additionalProperties": false
}
🟢open_study(exam, domain, sub_objective)

Open or resume the study page for an exam, optionally focused on a domain or a sub-objective. Use this when someone asks to study rather than to be quizzed in chat: the page gives them a visible question they answer themselves, and once it is open a richer set of tools appears for reading and steering that screen. Returns the URL; a browser agent should navigate there.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "exam": {
      "type": "string",
      "description": "Exam slug from list_exams."
    },
    "domain": {
      "type": "string",
      "description": "Optional blueprint domain, e.g. \"d3\"."
    },
    "sub_objective": {
      "type": "string",
      "description": "Optional concept, e.g. \"d1.5\". Ids are per-exam."
    }
  },
  "required": [
    "exam"
  ]
}
🟢check_answer(exam, question_id, selected)

Grades the user's choice and returns an explanation for EVERY option, including the ones they did not pick. On this exam two options are frequently defensible and only one is credited, so the reasons the wrong options lose are the part worth teaching.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "exam": {
      "type": "string",
      "enum": [
        "ccar-p",
        "ccdv-f",
        "ccao-f",
        "ccar-f"
      ],
      "description": "Exam slug."
    },
    "question_id": {
      "type": "string",
      "description": "The id from get_practice_question."
    },
    "selected": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Option letters the user chose, e.g. [\"B\"] or [\"B\",\"D\"]."
    }
  },
  "required": [
    "exam",
    "question_id",
    "selected"
  ],
  "additionalProperties": false
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada5 herramientas
verificadoversión no registrada5 herramientas