Skip to main content
Glama
Connectry-io

Connectry Architect Cert

Official
by Connectry-io

What is Architect Cert?

Architect Cert is a free, open-source MCP server that turns Claude into your personal certification tutor for the Claude Certified Architect — Foundations exam. No courses, no slides, no video lectures — just ask Claude and study.

It ships with:

  • 390 scenario-based questions across all 5 exam domains and 30 task statements

  • Interactive clickable UI — answer questions with A/B/C/D buttons, select follow-ups, pick domains with checkboxes — all inside Claude

  • Lessons-first assessment — learn each domain's concepts before being tested on them

  • Guided capstone build — shape your own project, then build it step-by-step while learning every task statement hands-on

  • 30 concept handouts — one per task statement, with code examples and common mistakes

  • 6 reference projects — runnable TypeScript codebases demonstrating each domain in practice

  • Practice exams — 60-question weighted exams with history tracking and improvement trends

  • Progress dashboard — glassmorphism visual dashboard with mastery levels, exam history chart, activity timeline

  • Visual progress tracking — todo checklists track your progress through assessments, exams, and capstone builds in real time

  • Interactive follow-ups — wrong answer? Click to see code examples, concept lessons, handouts, or reference projects

  • PDF generation — branded handout PDFs with the Architect Cert logo for offline study

  • Spaced repetition — SM-2 algorithm schedules reviews at optimal intervals

  • Deterministic grading — pure function grading, no LLM judgment, zero sycophancy

Everything runs locally. No cloud, no accounts, no telemetry.

Related MCP server: OpenExp

Quick Start

1. Install

npm install -g connectry-architect-mcp

2. Configure Your MCP Client

claude mcp add connectry-architect -- connectry-architect-mcp

That's it. Restart Claude Code and the server starts automatically.

Add to .mcp.json in your project or ~/.claude.json globally:

{
  "mcpServers": {
    "connectry-architect": {
      "command": "connectry-architect-mcp"
    }
  }
}

Restart Claude Code. The server starts automatically when Claude loads.

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "connectry-architect": {
      "command": "connectry-architect-mcp"
    }
  }
}

Tip: If you use nvm, you may need to specify the full path to the binary:

"command": "/Users/yourname/.nvm/versions/node/v22.20.0/bin/connectry-architect-mcp"

Restart Claude Desktop. You'll see the MCP tools icon appear in the chat input.

Add to %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "connectry-architect": {
      "command": "connectry-architect-mcp"
    }
  }
}

Restart Claude Desktop. You'll see the MCP tools icon appear in the chat input.

Architect Cert works with any client that supports the Model Context Protocol. Configure it as a stdio server:

  • Command: connectry-architect-mcp

  • Arguments: none

  • Transport: stdio

The server exposes 18 tools, 8 prompts, and 3 resource types.

3. Start Studying

Restart your MCP client and start chatting:

What you want

What to ask Claude

Start from scratch

"Start an assessment to figure out where I stand"

Practice questions

"Give me a practice question"

Focus on a domain

"Give me a question about agentic architecture"

Learn a concept first

"Teach me about task 2.3 — tool provisioning"

Build your own capstone

"I want to start a guided capstone build"

Take a practice exam

"I want to take a practice exam"

Check your progress

"Show my study progress"

Show the dashboard

"Show my dashboard"

Get a study plan

"What should I study next?"

Explore a reference project

"Show me a reference project for domain 1"

Generate PDF handouts

Run npm run generate:pdfs in the project directory

Reset and start over

"Reset my progress"

Learning Path

Architect Cert is designed to follow a natural progression. Here's the recommended order:

1. Assessment        → Baseline your knowledge across all 5 domains
       ↓
2. Learn concepts    → Read handouts for weak domains before practicing
       ↓
3. Adaptive practice → Questions prioritized by weakness, reviews, new material
       ↓
4. Follow-ups        → Dive into code examples, concept lessons, reference projects
       ↓
5. Capstone build    → Build your own project covering all 30 task statements
       ↓
6. Practice exams    → Simulate the real exam (60 questions, scored out of 1000)
       ↓
7. Review & repeat   → Dashboard tracks mastery, spaced repetition handles scheduling

You can jump to any stage at any time — the system adapts. But the path above gives you the most structured experience.

Interactive Experience

Architect Cert uses Claude's built-in interactive UI to make studying feel natural. No typing answer letters — just click.

Clickable Answer Selection

Every question presents clickable A/B/C/D buttons directly in Claude. You tap your answer instead of typing it. If the question includes code in the scenario, a code preview appears alongside each option so you can reference it while deciding.

Follow-Up Actions

After every answer, clickable follow-up buttons appear:

After a wrong answer:

  • Got it, next question

  • Explain with a code example

  • Show me the concept lesson

  • Show me the handout

  • Show me in the reference project

After a correct answer:

  • Next question

  • Explain why the others are wrong

Multi-Select Domain Picker

When requesting a study plan, you can select multiple domains to focus on using checkboxes — no need to list them out by name.

Visual Progress Checklists

Long flows like the assessment (15 questions), practice exams (60 questions), and capstone build (18 steps) create a visual todo checklist that updates in real time as you progress. You always know where you are and what's left.

Skip & Other

Every question selection includes a Skip button to move on and an Other option to ask a free-form question. If you use "Other" to ask something, Claude answers your question and then re-presents the same quiz question — you never lose your place. "Skip" moves to the next question; skipped questions remain unanswered and will reappear later.

Initial Assessment

Start with a 15-question diagnostic (3 per domain) that determines your learning path. The assessment works differently from raw practice:

Lessons-First Flow

When the assessment reaches a new domain for the first time, it pauses to show you the concept handout before asking questions. This means you learn the key ideas, see code examples, and understand common mistakes before being tested — no guessing blindly.

The flow for each domain:

  1. Concept handout is shown (one-time per domain)

  2. 3 questions presented one at a time (easy, medium, hard)

  3. Each answer graded immediately with explanation

  4. Move to the next domain

Path Assignment

Based on your overall accuracy:

Score

Path

Description

< 60%

Beginner-Friendly

Starts with fundamentals, builds up gradually. Focuses on easy and medium questions first.

>= 60%

Exam-Weighted

Focuses on high-weight domains first (D1 at 27%, D3 & D4 at 20% each). Targets weak areas aggressively.

Progress Tracking

The assessment creates a 15-item visual checklist (Q1 through Q15, grouped by domain) that updates after each answer. You always see exactly how far you've progressed.

Concept Handouts

Every task statement has a concept handout — a structured study document (~500-800 words) that covers:

  • Concept — The core idea, mental model, and when/why to use it

  • Code Example — Realistic TypeScript demonstrating the pattern

  • Common Mistakes — The 3-5 most frequent errors (which map to exam wrong answers)

  • References — Links to Anthropic's official documentation

Reading Handouts in Claude

You: "Show me the handout for task 2.3"

Claude: [loads the full handout with concept, code, mistakes, references]

When Handouts Appear Automatically

  • During assessment — shown before the first question of each new domain

  • After a wrong answer — "Show me the handout" is one of the follow-up options

  • During capstone build — relevant handouts are available at each build step

Generating PDF Handouts

Generate branded PDFs for all 30 handouts for offline study:

cd connectrylab-architect-cert-mcp
npm run generate:pdfs

This creates 30 PDFs in generated/handouts/ with:

  • Architect Cert logo and domain label in the header

  • Clean formatting with syntax-highlighted code blocks

  • "Connectry LABS — Claude Certified Architect Exam Prep — Free & Open Source" footer

Adaptive Practice

Every practice question is selected by a three-priority algorithm:

  1. Overdue reviews — Spaced repetition items due for review today

  2. Weak areas — Topics where your mastery is below 50%

  3. New material — Fresh questions from your recommended domain

Filtering

You can filter practice questions by domain and/or difficulty:

You: "Give me a hard question about prompt engineering"

Claude: [presents a hard Domain 4 question with clickable A/B/C/D buttons]

Interactive Follow-Ups

After every answer, you get clickable follow-up options. Each option dives deeper into the concept — then brings you right back to your quiz. You never leave your study flow to look something up.

Mastery Levels

Each of the 30 task statements has an independent mastery level:

Level

Criteria

What it means

Unassessed

No attempts yet

You haven't seen questions on this topic

Weak

< 50% accuracy

Needs significant study — questions resurface frequently

Developing

50-69% accuracy

Making progress — keep practicing

Strong

70-89% accuracy

Good understanding — review intervals are longer

Mastered

>= 90% accuracy, 5+ attempts, 3+ consecutive correct

Exam-ready — rare reviews

Spaced Repetition (SM-2)

The SM-2 algorithm schedules review intervals:

  • First review: 1 day after answering

  • Second review: 3 days after first review

  • Subsequent reviews: Previous interval x ease factor (starts at 2.5)

  • Wrong answer: Interval resets, ease factor decreases by 0.2 (floor: 1.3)

  • Correct answer: Ease factor increases by 0.1

Difficult questions come back often. Easy ones space out to weeks or months.

Guided Capstone Build

The most hands-on way to learn — build your own project from scratch while covering all 30 task statements. Instead of just answering questions, you architect a real system themed to your own idea.

How It Works

The capstone build has three phases:

Phase 1 — Project Shaping

You describe a project idea (e.g., "a multi-agent code review system"). Claude analyzes your idea against all 30 architectural criteria and identifies gaps. You refine together until every task statement is covered.

You: "I want to start a guided capstone build"

Claude: [presents the 30 criteria across all 5 domains]
        Describe your project idea and I'll analyze coverage.

You: "A multi-agent code review system that analyzes PRs"

Claude: Your idea naturally covers 24/30 criteria. To cover the
        remaining 6, I'd suggest adding: [specific suggestions
        mapped to task statements]

Phase 2 — Interleaved Build (18 steps)

Each step follows the same pattern:

  1. Quiz — 2-3 questions on the task statements you're about to build (clickable A/B/C/D)

  2. Build — Claude generates the file's code, themed to your project

  3. Walkthrough — Line-by-line explanation mapping code to task statements

A visual 18-step checklist tracks your progress in real time.

The 18 steps build incrementally:

Steps

What you build

Task Statements

1-2

Project config (CLAUDE.md, package.json)

3.1-3.4

3-5

MCP server, tools, error handling

2.1-2.5

6-10

Agentic loop, subagents, hooks, workflows, sessions

1.1-1.7

11-13

Prompts: system, extraction, batch processing

4.1-4.6

14-18

Context: preservation, triggers, propagation, scratchpad, confidence

5.1-5.6

Every quiz answer feeds into the same spaced repetition and mastery tracking as regular practice.

Phase 3 — Final Review

After step 18, you get a complete coverage map: all 30 task statements, where each is demonstrated in your project, and your quiz performance per domain. Weak areas are flagged for further study.

Capstone Build Tools

Tool

What it does

start_capstone_build

See the 30 criteria, describe your theme, refine until coverage is complete

capstone_build_step

Drive the build: confirm, quiz, build, next, status, or abandon

capstone_build_status

Check your progress — current step, criteria coverage, quiz performance

How It Connects to Everything Else

  • Quiz answers during the build use the same submit_answer grading and SM-2 scheduling

  • After any quiz question, you can use the same follow-up options (code example, concept lesson, handout, reference project)

  • The reference projects show how the capstone structure looks when complete

  • Progress persists across sessions — pick up where you left off

Practice Exams

Full 60-question exams that simulate the real certification:

Detail

Value

Total questions

60

D1: Agentic Architecture

16 questions (27%)

D2: Tool Design & MCP

11 questions (18%)

D3: Claude Code Config

12 questions (20%)

D4: Prompt Engineering

12 questions (20%)

D5: Context & Reliability

9 questions (15%)

Scoring

0-1000, passing at 720

Question selection

Fresh set each time — avoids repeating your most recent attempt

UI

Clickable A/B/C/D buttons with code previews

Progress

Visual 60-item checklist updated after each answer

All attempts are saved with per-domain score breakdowns and improvement trends.

Progress Dashboard

Architect Cert includes a glassmorphism visual dashboard that renders directly inside Claude via Claude Preview.

What It Shows

  • Readiness Ring — Overall exam readiness percentage in a circular progress indicator

  • Domain Mastery Grid — 5 cards with progress bars for each exam domain

  • Exam History Chart — Line chart plotting your practice exam scores over time, with the 720 passing score marked

  • Recent Activity Timeline — Your last 10 answers with correct/incorrect indicators

  • Capstone Progress — Current build step and completion percentage

  • Quick Action Buttons — Jump to practice, exam, study plan, or capstone

How to Open

You: "Show my dashboard"

Claude: [opens the branded dashboard in Claude Preview]

The dashboard can be reopened at any time by asking Claude again. It always reflects your latest data.

Text Fallback

For MCP clients that don't support Claude Preview, the dashboard tool also returns a text summary with mastery percentages and exam stats.

Reference Projects

Architect Cert includes 6 complete reference projects — runnable TypeScript codebases that demonstrate certification concepts in real code. Every file has a header comment mapping it to specific task statements.

Project

Focus

Files

What You'll See

Capstone

All 5 domains

24

Full multi-agent support system with MCP server, coordinator, subagents, prompt engineering, context management, and hooks

D1 — Agentic Loop

Domain 1

10

Multi-agent research coordinator with agentic loops, subagent spawning, hooks, session management, and task decomposition

D2 — Tool Design

Domain 2

12

MCP server with split tools, structured errors, agent-scoped tool distribution, resources, and built-in tool patterns

D3 — Claude Code Config

Domain 3

14

Complete config reference: CLAUDE.md hierarchy, slash commands, path rules, CI/CD workflows — not runnable code, but a real config layout

D4 — Prompt Engineering

Domain 4

11

Data extraction pipeline with explicit criteria, few-shot, structured output, validation-retry, batch processing, and multi-pass review

D5 — Context Manager

Domain 5

14

Long-session patterns: context preservation, scratchpad, subagent delegation, escalation, error propagation, confidence calibration, provenance

How to Access

You: "Show me a reference project for domain 1"

Claude: [returns the project README, file listing, and architecture walkthrough]

How They Connect to the Study Flow

When you get a question wrong, one of the follow-up options is "Show me in the reference project" — this takes you straight to the relevant domain project so you can see the concept implemented in real code. Then you jump back to your quiz.

Study Plan

Get personalized study recommendations based on your performance, exam weights, and spaced repetition schedule.

Multi-Select Domain Focus

When requesting a study plan, you can pick specific domains to focus on using checkboxes:

You: "What should I study next?"

Claude: [shows domain checkboxes — select the ones you want to focus on]
        [generates a personalized study plan with a visual checklist]

The study plan creates a visual checklist so you can track your progress through each recommendation.

Exam Domains

The Claude Certified Architect — Foundations exam covers 5 domains:

#

Domain

Weight

Tasks

Questions

1

Agentic Architecture & Orchestration

27%

7

91

2

Tool Design & MCP Integration

18%

5

65

3

Claude Code Configuration & Workflows

20%

6

78

4

Prompt Engineering & Structured Output

20%

6

78

5

Context Management & Reliability

15%

6

78

Total

100%

30

390

30 Task Statements

Task

Description

1.1

Design and implement agentic loops for autonomous task execution

1.2

Orchestrate multi-agent systems with coordinator-subagent patterns

1.3

Configure subagent invocation, context passing, and spawning

1.4

Implement multi-step workflows with enforcement and handoff patterns

1.5

Apply Agent SDK hooks for tool call interception and data normalization

1.6

Design task decomposition strategies for complex workflows

1.7

Manage session state, resumption, and forking

Task

Description

2.1

Design effective tool interfaces with clear descriptions and boundaries

2.2

Implement structured error responses for MCP tools

2.3

Distribute tools appropriately across agents and configure tool choice

2.4

Integrate MCP servers into Claude Code and agent workflows

2.5

Select and apply built-in tools effectively

Task

Description

3.1

Configure CLAUDE.md files with appropriate hierarchy and scoping

3.2

Create and configure custom slash commands and skills

3.3

Apply path-specific rules for conditional convention loading

3.4

Determine when to use plan mode vs direct execution

3.5

Apply iterative refinement techniques for progressive improvement

3.6

Integrate Claude Code into CI/CD pipelines

Task

Description

4.1

Design prompts with explicit criteria to improve precision

4.2

Apply few-shot prompting to improve output consistency

4.3

Enforce structured output using tool use and JSON schemas

4.4

Implement validation, retry, and feedback loops

4.5

Design efficient batch processing strategies

4.6

Design multi-instance and multi-pass review architectures

Task

Description

5.1

Manage conversation context to preserve critical information

5.2

Design effective escalation and ambiguity resolution patterns

5.3

Implement error propagation strategies across multi-agent systems

5.4

Manage context effectively in large codebase exploration

5.5

Design human review workflows and confidence calibration

5.6

Preserve information provenance and handle uncertainty in synthesis

Tools

Architect Cert provides 18 MCP tools that Claude uses to deliver the study experience:

Study Flow

Tool

Description

start_assessment

Begin with 15 diagnostic questions (lessons-first, one at a time) to determine your learning path

get_practice_question

Get the next adaptive question with clickable A/B/C/D buttons (reviews > weak areas > new material)

submit_answer

Grade your answer deterministically — presents interactive follow-up options

follow_up

Handle post-answer actions: code examples, concept lessons, handouts, reference projects

get_section_details

Deep dive into a specific task statement with full concept handout

Progress & Planning

Tool

Description

get_progress

View overall study progress with mastery percentages per domain

get_curriculum

Browse all 5 domains and 30 task statements with current mastery levels

get_weak_areas

Identify topics that need the most work, ranked by weakness

get_study_plan

Get personalized recommendations with multi-select domain focus

get_dashboard

Open the visual progress dashboard in Claude Preview

Practice Exams

Tool

Description

start_practice_exam

Take a full 60-question practice exam simulating the real certification

submit_exam_answer

Submit and grade answers during a practice exam

get_exam_history

View all past exam attempts with scores, trends, and per-domain comparison

Capstone Build

Tool

Description

start_capstone_build

Start a guided capstone build — shape your project and validate criteria coverage

capstone_build_step

Drive the capstone build: confirm, quiz, build, next, status, or abandon

capstone_build_status

Check capstone build progress — current step, coverage, quiz performance

Reference & Admin

Tool

Description

scaffold_project

Access reference projects for hands-on practice with real code

reset_progress

Start over — requires explicit confirmation to prevent accidents

The server also registers 8 interactive prompts and 3 resource types (concept handouts, reference projects, exam overview).

Architecture

┌──────────────────────────────────────────────────────────────────────┐
│                           YOUR MACHINE                               │
│                                                                      │
│   ┌──────────────┐       ┌────────────────────────────────┐          │
│   │ Claude Desktop│       │     Architect Cert MCP          │          │
│   │ Claude Code   │◄─────►│                                │          │
│   │ Any MCP client│ stdio │  18 tools                      │          │
│   └──────┬───────┘       │   8 prompts                     │          │
│          │                │   3 resource types              │          │
│          │                └──────────┬─────────────────────┘          │
│          │                           │                                │
│          │         ┌────────────────┼────────────────────┐           │
│          │         │                │                     │           │
│          │   ~/.connectry-      390 questions         6 reference     │
│          │    architect/       30 handouts            projects        │
│          │    progress.db     (bundled JSON/MD)      (bundled TS)     │
│          │                                                            │
│          │  ┌──────────────────────────┐                              │
│          └──► Claude Preview (Dashboard) │                              │
│             │ localhost HTTP server      │                              │
│             └──────────────────────────┘                              │
│                                                                      │
└──────────────────────────────────────────────────────────────────────┘

Core Components

Component

Technology

Purpose

MCP Server

@modelcontextprotocol/sdk v1

Registers tools, prompts, resources over stdio

Grading Engine

Pure TypeScript functions

Deterministic answer verification

Spaced Repetition

SM-2 algorithm

Optimal review scheduling

Question Selector

Three-priority algorithm

Overdue reviews > weak areas > new material

Follow-Up System

State-driven tool chain

Interactive post-answer detours

Capstone Build Engine

18-step interleaved builder

Guided learn-build-explain flow with LLM validation

Dashboard Server

Node.js HTTP + HTML

Glassmorphism visual dashboard via Claude Preview

Question Bank

390 bundled JSON questions

Scenario-based, verified against docs

Concept Handouts

30 bundled markdown files

Structured study materials per task statement

Reference Projects

6 bundled TypeScript projects

Runnable code demonstrating each domain

PDF Generator

Puppeteer + Marked

Branded handout PDFs for offline study

Progress Store

better-sqlite3 (WAL mode)

Persistent mastery, answers, schedules

Interactive UI Architecture

Architect Cert doesn't build its own chat UI. Instead, it instructs Claude to use built-in interactive tools:

  • AskUserQuestion — Presents clickable buttons for A/B/C/D answers, follow-up actions, and domain selection. Supports single-select (radio buttons), multi-select (checkboxes), and free-text input via "Other".

  • TodoWrite — Creates visual progress checklists that update in real time during assessments, exams, and capstone builds.

  • Claude Preview — Renders the glassmorphism dashboard HTML on a local HTTP server.

This approach works across Claude Code and Claude Desktop without requiring any custom UI code on the client side.

Anti-Sycophancy Design

This server enforces honest grading at the protocol level — not just in prompts:

  1. Deterministic gradinggradeAnswer() is a pure function. No LLM is involved in judging correctness.

  2. Tool-level enforcement — The submit_answer tool description instructs Claude to relay results verbatim.

  3. No partial credit — Multiple choice, one correct answer. No "you were on the right track."

  4. Wrong answer explanations — Every incorrect option has a specific whyWrongMap entry explaining the misconception.

  5. System prompt rules — Five anti-sycophancy directives prevent Claude from softening incorrect results.

Question Bank Details

Metric

Value

Total questions

390

Domains covered

5

Task statements covered

30

Questions per task statement

13

Difficulty distribution

~4 easy, 5 medium, ~4 hard per task

Answer key balance

Distributed across A/B/C/D

Question format

Scenario-based multiple choice

Each question includes

Scenario, question, 4 options, explanation, why-wrong-map, references

Source material

Anthropic official documentation

Data Storage

  • Progress is stored locally at ~/.connectry-architect/progress.db (SQLite, WAL mode)

  • Your user config lives at ~/.connectry-architect/config.json (auto-created on first run)

  • No cloud, no accounts, no telemetry — everything stays on your machine

Contributing

We welcome contributions! Here's how to get started:

# Clone the repo
git clone https://github.com/Connectry-io/connectrylab-architect-cert-mcp.git
cd connectrylab-architect-cert-mcp

# Install dependencies
npm install

# Build
npm run build

# Run tests
npm test

# Generate PDF handouts
npm run generate:pdfs

# Run locally
node dist/index.js

Project Structure

src/
├── index.ts              # MCP server entry point
├── config.ts             # User config management
├── types.ts              # All TypeScript interfaces
├── data/
│   ├── loader.ts         # Lazy-cached data loading
│   ├── curriculum.json   # 30 task statements
│   ├── questions/        # 390 questions (5 domain files)
│   ├── handouts/         # 30 concept handouts (markdown)
│   ├── criteria.ts       # 30 task statement criteria for capstone validation
│   ├── build-steps.ts    # 18 capstone build step definitions
│   └── system-prompt.ts  # Anti-sycophancy rules
├── db/
│   ├── schema.ts         # SQLite schema (9 tables)
│   ├── store.ts          # Database initialization
│   ├── mastery.ts        # Mastery level calculations
│   ├── answers.ts        # Answer recording
│   ├── review-schedule.ts # SM-2 review scheduling
│   ├── capstone.ts       # Capstone build CRUD operations
│   ├── users.ts          # User management
│   └── exam-attempts.ts  # Practice exam tracking
├── engine/
│   ├── grading.ts        # Deterministic grading
│   ├── spaced-repetition.ts  # SM-2 algorithm
│   ├── question-selector.ts  # Priority-based selection
│   ├── exam-builder.ts       # Practice exam generation
│   └── adaptive-path.ts      # Learning path recommendations
├── tools/                # 18 MCP tool handlers
│   ├── index.ts          # Tool registration
│   ├── elicit.ts         # MCP elicitation helper (graceful fallback)
│   ├── start-assessment.ts
│   ├── submit-answer.ts
│   ├── get-practice-question.ts
│   ├── follow-up.ts
│   ├── get-progress.ts
│   ├── get-curriculum.ts
│   ├── get-section-details.ts
│   ├── get-weak-areas.ts
│   ├── get-study-plan.ts
│   ├── start-practice-exam.ts
│   ├── submit-exam-answer.ts
│   ├── get-exam-history.ts
│   ├── scaffold-project.ts
│   ├── start-capstone-build.ts
│   ├── capstone-build-step.ts
│   ├── capstone-build-status.ts
│   ├── reset-progress.ts
│   └── dashboard.ts
├── ui/
│   ├── server.ts         # Dashboard HTTP server
│   ├── dashboard.html    # Glassmorphism dashboard UI
│   ├── meta.ts           # Quiz widget metadata
│   └── loader.ts         # HTML asset loader
├── prompts/              # 8 MCP prompt definitions
└── resources/            # 3 MCP resource types

projects/
├── capstone/             # All 5 domains — multi-agent support system
├── d1-agentic/           # Domain 1 — agentic loop research coordinator
├── d2-tools/             # Domain 2 — MCP server with tool patterns
├── d3-config/            # Domain 3 — Claude Code configuration layout
├── d4-prompts/           # Domain 4 — extraction & prompt engineering
└── d5-context/           # Domain 5 — context management & reliability

scripts/
└── generate-pdfs.ts      # PDF handout generator

License

MIT © Connectry Labs

Credits


Available Tools

18 tools
capstone_build_statusA

Check your guided capstone build progress — current step, criteria coverage, and quiz performance.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits beyond the return values. It does not mention whether it is read-only, requires an active project, or has side effects. However, the tool is inherently a read operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the core purpose and specific outputs. Every word adds value with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless tool with no annotations or output schema, the description adequately covers what the tool does and what it returns. Minor gap: does not specify prerequisites like having an active capstone build.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters in the schema, so the description does not need to explain them. With 100% schema coverage (no params), the description adds no param details, which is acceptable per guidelines.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool checks 'guided capstone build progress' and lists specific return elements (current step, criteria coverage, quiz performance). It distinguishes itself from siblings like 'capstone_build_step' and 'start_capstone_build' by focusing on overall status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives such as 'capstone_build_step' or 'get_progress'. The context implies it is for holistic status, but no when-not-to-use or alternative comparison is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

capstone_build_stepA

Drive your guided capstone build — quiz, build, and advance through 18 progressive steps.

IMPORTANT:

  • When presenting quiz questions, use AskUserQuestion with header "Answer" for A/B/C/D selection. If code is in the scenario, add preview fields.

  • After grading a quiz answer, FIRST show the result (correct/incorrect, explanation) as REGULAR CHAT TEXT so the user can read it. THEN present follow-up options or the next question via AskUserQuestion. Explanations must NOT be hidden behind cards.

  • When presenting action choices (quiz/build/next), use AskUserQuestion with header "Action".

PROGRESS TRACKING:

  • On "confirm": Create a TodoWrite checklist with all 18 build steps, all set to "pending".

  • On "next": Update the completed step to "completed" and the new current step to "in_progress".

  • This gives the user a visual build progress tracker.

EDGE CASES:

  • "Other": Answer the question, then re-present the current options via AskUserQuestion.

  • "Skip": During quiz, treat as moving to the build phase. During build, treat as advancing to next step.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYesThe build action: confirm, quiz, build, next, status, or abandon

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Since no annotations are provided, the description fully discloses behavioral traits. It details progress tracking (creating/updating TodoWrite checklist), edge case handling (Other: re-present options; Skip: advance step), and presentation rules (use AskUserQuestion with headers, show results as chat text). This goes beyond basic annotations and prepares the agent for correct behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is moderately long but well-organized with clear sections (IMPORTANT, PROGRESS TRACKING, EDGE CASES). It front-loads the main purpose and provides necessary details without unnecessary verbosity. Each section adds value, though some repetition could be trimmed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no output schema, no annotations), the description is very comprehensive. It covers all actions, progress tracking, presentation guidelines, and edge cases. Missing details like error handling or out-of-order calls are minor gaps, but the description is sufficient for most use cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage for the single 'action' parameter. The description adds significant meaning beyond the schema by explaining the effect of each enum value (e.g., 'confirm' creates a checklist, 'next' updates progress). This contextual mapping helps the agent choose the correct action.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Drive your guided capstone build — quiz, build, and advance through 18 progressive steps.' It uses a specific verb ('drive') and identifies the resource ('guided capstone build'). This distinguishes it from sibling tools like 'capstone_build_status' (status check) and 'start_capstone_build' (initialization).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use AskUserQuestion with specific headers ('Answer', 'Action'), how to display quiz results, and how to handle progress tracking via TodoWrite. It also covers edge cases for 'Other' and 'Skip'. However, it does not explicitly state when not to use this tool or mention alternatives among siblings, such as when to use 'capstone_build_status' instead.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

follow_upA

Handle post-answer follow-up actions. Use after submit_answer to explore concepts, code examples, handouts, or reference projects.

ParametersJSON Schema
NameRequiredDescriptionDefault
questionIdYesThe question ID from the previous answer
actionYesThe follow-up action to take

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so description carries full burden. It indicates exploration of content but does not disclose side effects, state changes, or authentication needs. Adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. Purpose is front-loaded, and the actions are concisely listed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter tool with no output schema, the description covers when to use and what it does. It could optionally mention return type, but not necessary given context signals.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (baseline 3). Description adds value by mapping enum actions ('next', 'code_example', etc.) to real-world purposes (explore concepts, code examples, etc.), enhancing understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it handles post-answer follow-up actions and lists specific content types (concepts, code examples, handouts, reference projects). This distinguishes it from siblings like submit_answer.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states 'Use after submit_answer', providing clear temporal context. However, it lacks explicit when-not-to-use or alternative tool guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_curriculumA

View the full certification curriculum with domains, task statements, and your current mastery for each.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description indicates a read-only operation ('View') and specifies output content, but with no annotations provided, it doesn't disclose additional behavioral traits such as authentication requirements, rate limits, or error conditions. A simple view tool, but transparency is limited.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads key information. No unnecessary words, earning its place efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and no output schema, the description adequately describes the return content (domains, task statements, mastery). However, it does not cover potential edge cases or response format, but for a simple retrieval tool, it is sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has no parameters (100% coverage), so the description doesn't need to add parameter semantics. Baseline score of 3 is appropriate as it adds no extra detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'View' and the resource 'full certification curriculum' with specific details (domains, task statements, mastery). It distinguishes itself from sibling tools like get_dashboard or get_progress by specifying what it retrieves.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use when you need curriculum info, but it lacks explicit guidance on when to use this tool versus alternatives or when not to use it. No exclusions or alternatives are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_dashboardA

Open the study progress dashboard in Claude Preview. Shows mastery levels, exam history, activity timeline, and capstone progress.

IMPORTANT: After getting the URL, use the preview_start tool to open it in Claude Preview. If the user says "show dashboard" or "open dashboard", call this tool.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description does not explicitly state that this tool returns a URL; it only says 'Open...' followed by instructions to use 'preview_start' after getting the URL. While the implication is clear, the exact output behavior (returning a URL) is not spelled out. No annotations are provided, so the description carries the full burden, but it fails to fully disclose the return value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is remarkably concise: two sentences plus a crucial 'IMPORTANT' note. Every sentence serves a purpose: first explains what the tool does, second provides critical usage guidance. No redundant or irrelevant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description effectively covers purpose and usage, but misses explicitly stating the return type (a URL). Given that there is no output schema and no annotations, this omission slightly reduces completeness. However, the guidance to use 'preview_start' after 'getting the URL' implies the return value, so the gap is small.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, so the input schema requires no additional explanation. The description adds value by detailing what the dashboard displays (mastery levels, exam history, etc.), going beyond the schema's void. This compensates fully for the absence of parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action ('Open the study progress dashboard') and lists the specific content it shows (mastery levels, exam history, activity timeline, capstone progress), making the purpose unambiguous. It distinguishes from siblings like 'get_exam_history' and 'get_progress' by framing it as a combined dashboard view.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit usage guidance: after obtaining the URL, the AI should use 'preview_start' to open it. It also gives trigger phrases ('show dashboard', 'open dashboard') to help the agent decide when to call this tool, clearly differentiating when to use it versus alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_exam_historyA

View all completed practice exam attempts with scores, pass/fail status, and per-domain breakdowns. Compare your progress across attempts.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description implies a read-only operation ('view'), and no annotations are present. It does not disclose potential limitations like data volume or authentication requirements, but for a simple tool with no parameters, the description adequately covers the main behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, 20 words. Front-loaded with action and outputs, second sentence adds value. No redundancy or unnecessary text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description explains return values (scores, pass/fail, per-domain breakdowns) and adds comparison feature. It lacks mention of any limits or prerequisites, but for a no-parameter tool, it is largely sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 0 parameters, and schema description coverage is 100%. Per guidelines, baseline is 4, which is appropriate as the description adds no param-specific details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states what the tool does: view completed practice exam attempts with specific details like scores, pass/fail, and per-domain breakdowns. It also adds a secondary feature of comparing progress. No competing sibling tool serves the same purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. While the purpose is clear, the description does not mention scenarios where other tools might be more appropriate, nor does it provide criteria for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_practice_questionA

Get the next practice question. Prioritizes review questions, then weak areas, then new material.

IMPORTANT — present the question using AskUserQuestion:

  • header: "Answer"

  • question: Include the FULL scenario text AND question text from the response

  • options: 4 items with label "A"/"B"/"C"/"D" and description as the option text

  • If the scenario contains code, add a "preview" field on each option showing the code snippet Then call submit_answer with the questionId and selected answer. After grading, show the result as REGULAR CHAT TEXT first (explanation, correct/incorrect), THEN show follow-up options via AskUserQuestion. Explanations must be readable in the main chat, not hidden behind cards.

EDGE CASES:

  • "Other": Answer the user's question, then re-present the SAME question via AskUserQuestion.

  • "Skip": Call get_practice_question again for a new question. Never break the flow.

ParametersJSON Schema
NameRequiredDescriptionDefault
domainIdNoOptional domain ID to filter questions (1-5)
difficultyNoOptional difficulty filter

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description bears full burden. It explains the prioritization logic and flow but does not disclose side effects (e.g., marking questions as seen, state changes) or permissions required. The emphasis is on usage rather than behavioral safety.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is lengthy and mixes purpose, usage instructions, and edge cases into a single block. While front-loaded with the core purpose, it could be more concise by separating general functionality from detailed agent instructions.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of the multi-step interaction and absence of an output schema, the description adequately explains the expected output (question details for AskUserQuestion) and edge cases. It assumes some agent knowledge of sibling tools but is largely comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for both parameters (domainId and difficulty). The description adds no extra meaning beyond what the schema already provides, so baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves the next practice question with explicit prioritization (review, weak areas, new material). This distinguishes it from siblings like submit_answer or follow_up, which serve different roles in the workflow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides detailed instructions on how to present the question and handle edge cases (Other, Skip). However, it does not explicitly mention when not to use this tool or compare to alternatives like get_exam_history or get_curriculum, missing some usage boundaries.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_progressB

Get your certification study progress overview including mastery levels, accuracy, and review status.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It indicates a read operation ('Get') but does not disclose data freshness, authentication requirements, or whether the progress is real-time. The description is too minimal to fully inform the agent about behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no extraneous information. Every word contributes to the purpose, making it efficient and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple parameterless tool, the description covers the return themes but lacks output schema or details on structure. It does not mention whether results are aggregated or per-section, leaving some ambiguity. The description is adequate but not comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, so schema coverage is 100% (trivial). The description adds value by explaining what the tool returns, which is not evident from the empty schema. Baseline 4 for zero parameters is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as retrieving a certification study progress overview with specifics on mastery levels, accuracy, and review status. It is clear, but does not explicitly distinguish itself from sibling tools like get_dashboard or get_study_plan, which may overlap.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives is provided. It does not mention prerequisites, limitations, or exclusions, leaving the agent to infer context from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_section_detailsB

Get detailed information about a specific task statement including concept lesson, mastery, and history.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskStatementYesTask statement ID, e.g. "1.1"

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. Description does not disclose behavioral traits like read-only nature, authorization needs, or side effects. Only states it gets information, which implies safety but lacks explicit disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, no wasted words, efficiently conveys core purpose and included fields.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With one required param, no output schema, and no annotations, the description adequately names the resource and some fields. However, it omits return structure, error conditions, or additional context. Adequate for a simple tool but not comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the parameter description ('Task statement ID, e.g. 1.1') is clear. The description adds no additional semantics beyond restating 'specific task statement'. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states verb 'Get' and resource 'detailed information about a specific task statement' and lists included content (concept lesson, mastery, history). Distinguishes from siblings like get_curriculum by focusing on task statements, but could be more precise about scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as get_curriculum or get_practice_question. No context for selection or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_study_planA

Get a personalized study plan based on your assessment results, weak areas, and learning path.

IMPORTANT — after showing the study plan, use AskUserQuestion with header "Focus" and multiSelect: true to let the user pick which domains they want to focus on. Options should be the 5 domains with their current mastery as descriptions. Then use their selection to filter get_practice_question calls.

Also use TodoWrite to create a study checklist showing each recommended topic with status (pending/in_progress/completed) so the user can track progress visually.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden. It only says the tool gets a plan but does not disclose behavioral traits such as side effects, required prior state (e.g., assessment completed), or whether it modifies data. The instructions about AskUserQuestion and TodoWrite are about the agent's actions, not the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is overly long and mixes the tool's purpose with multi-step agent instructions (AskUserQuestion and TodoWrite). The first sentence is concise, but the rest adds verbosity that could be separated. This reduces clarity for tool selection.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and no output schema, the description should at least describe what the study plan contains. It only says 'personalized' but does not detail the structure (e.g., list of topics, time estimates). The additional instructions compensate somewhat for missing output info, but the lack of output format is a gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so parameter semantics are not needed. The baseline for 0 parameters is 4, and the description adds no parameter information beyond what is already implied (no input required). No deduction needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Get a personalized study plan based on your assessment results, weak areas, and learning path.' This provides a specific verb ('Get'), resource ('study plan'), and context, distinguishing it from siblings like get_curriculum or get_dashboard.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells the agent what to do after invoking the tool: show the plan, then use AskUserQuestion to let the user pick domains, then filter practice questions. It provides a clear usage flow, though it does not explicitly mention when NOT to use this tool or alternative tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_weak_areasA

Identify your weakest task statements based on accuracy below 70%. Focus your study on these areas.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It specifies the accuracy threshold (70%) but does not disclose whether the tool is read-only, requires auth, or any side effects. More detail would improve transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. The description is front-loaded with the key purpose and a direct actionable suggestion. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description gives the tool's purpose and a threshold, but lacks output details (e.g., format, data structure). With no output schema, the agent is left guessing the return value, reducing completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so the description inherently adds no parameter info beyond the schema. Baseline 4 applies as per guidelines for 0-parameter tools.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool identifies weakest task statements based on accuracy below 70%, providing a specific verb and resource. It is distinct from sibling tools like get_progress or get_dashboard, though it doesn't explicitly differentiate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for study focus but lacks explicit when-to-use or when-not-to-use guidance. No alternatives are mentioned, leaving the agent to infer context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reset_progressA

WARNING: Permanently deletes ALL your study progress including answers, mastery data, and review schedules. This cannot be undone.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmedYesMust be true to confirm the reset

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses the destructive behavior: 'permanently deletes', 'cannot be undone', and lists what is deleted. This goes beyond the input schema, which only has a confirmation parameter.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one impactful sentence with a warning prefix. No extraneous words; front-loaded with critical information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive action with one parameter, the description explains the consequence and confirmation requirement. No output schema exists, so return values are not needed. Minor improvement could mention what happens after reset, but it's adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already documents the 'confirmed' parameter well (must be true to confirm). The tool description adds context about the consequence but does not add new parameter-specific meaning. With 100% schema coverage, baseline is 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool deletes all study progress permanently. It uses strong verbs ('deletes') and specifies the resources (answers, mastery data, review schedules). This distinguishes it from sibling tools like get_progress or get_weak_areas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide explicit guidance on when to use this tool versus alternatives. It lacks conditions or examples of appropriate use cases. A warning is given but no when-not-to-use or alternative suggestions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scaffold_projectA

Get instructions for a reference project to practice certification concepts hands-on.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectIdNoProject ID (e.g. "capstone", "d1-agentic"). Omit to see available projects.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries full burden. It indicates a read-only operation ('Get instructions'), but does not disclose behavior for invalid projectId or any side effects. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no wasted words. It conveys the tool's purpose and parameter usage efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is adequate for a simple tool with one parameter. It lacks details about the return format or what 'instructions' entail, but given no output schema, the description provides sufficient context for an agent to understand its basic function.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single parameter 'projectId'. The description adds the instruction 'Omit to see available projects', which clarifies a special behavior not evident from the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description specifies the verb 'Get', resource 'instructions for a reference project', and purpose 'to practice certification concepts hands-on'. It clearly distinguishes from siblings like get_curriculum or get_dashboard.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use when needing hands-on practice but does not explicitly state when to use this tool versus alternatives like get_curriculum or get_practice_question. No exclusions or alternative tool names are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

start_assessmentA

Start the initial assessment. Returns ONE question at a time (15 total, 3 per domain).

IMPORTANT — follow this flow for EVERY question:

  1. Check if "isNewDomain" is true. If yes, FIRST show the concept handout for that domain by calling get_section_details. Tell the user: "Let's learn about [domain] before testing your knowledge." After showing the handout, proceed to step 2.

  2. Present the question to the user using AskUserQuestion:

    • header: "Q[number]"

    • question: Include the FULL scenario text AND question text from the response

    • options: Use the 4 answer options (A/B/C/D) with label as the letter and description as the option text

    • If the scenario contains code, add a "preview" field on each option showing the relevant code snippet so the user can reference it while choosing

  3. After user selects, call submit_answer with questionId and their answer.

  4. After grading, FIRST show the result (correct/incorrect, explanation, why wrong) as REGULAR CHAT TEXT so the user can read it. THEN present follow-up options using AskUserQuestion. The explanation must NOT be hidden behind the card.

  5. Call start_assessment again for the next question.

EDGE CASES:

  • If user selects "Other" and types a question/comment: Answer their question helpfully, then re-present the SAME quiz question using AskUserQuestion again. Never lose the current question.

  • If user clicks "Skip": Treat it as moving to the next question. Call start_assessment again immediately. The skipped question remains unanswered and will appear again later.

  • NEVER let Other or Skip break the assessment flow. Always continue to the next question or re-ask the current one.

PROGRESS TRACKING:

  • At the START of the assessment, create a TodoWrite checklist with all 15 questions (Q1-Q15) grouped by domain, all set to "pending".

  • After each answer, update the corresponding todo item to "completed" (with correct/incorrect note).

  • This gives the user a visual progress tracker throughout the assessment.

When assessment is complete, present next steps using AskUserQuestion with header "Next step".

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description carries full burden. It discloses that it returns one question, requires a flow with domain handouts, handles user interactions, and updates progress. No destructive actions implied, and no contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Long but well-structured with sections for flow, edge cases, progress tracking. Front-loaded with core purpose. Could be more concise but every sentence adds necessary detail for correct usage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the interactive complexity and lack of output schema, description fully explains expected response format, step-by-step flow, edge cases, and progress tracking. Leaves no ambiguity for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 0 parameters with 100% coverage, so description need not add param info. Baseline 4 is appropriate; description does not need to explain parameters but adds value through behavioral instructions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states 'Start the initial assessment' and specifies it returns one question at a time (15 total, 3 per domain). Distinguishes from sibling tools like start_practice_exam or get_practice_question.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides detailed step-by-step instructions including when to call other tools (get_section_details, submit_answer), how to present questions, handle edge cases (Other, Skip), and progress tracking. Explicitly covers when to use and what to avoid.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

start_capstone_buildB

Start or refine a guided capstone build. Build your own project while learning all 30 certification task statements hands-on.

ParametersJSON Schema
NameRequiredDescriptionDefault
themeNoYour project idea or theme. Omit to see the 30 criteria first.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden but fails to disclose side effects, idempotency, or resource creation. 'Start or refine' is vague and does not explain behavior on repeated calls or state changes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with purpose, no wasted words. Ideal conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Lacks explanation of return values, subsequent steps, or how 'refine' differs from 'start'. No output schema and no annotations, so the description should provide more context for an interactive build tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds meaning beyond the schema by noting that omitting 'theme' shows the 30 criteria first. This clarifies a key usage pattern. Schema coverage is 100%, so baseline is 3; the added context raises it to 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool starts or refines a guided capstone build and connects it to learning 30 certification tasks. It is specific about the resource (capstone build) and action, but does not distinguish from siblings like scaffold_project or capstone_build_step.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like scaffold_project, capstone_build_step, or others. The description does not provide context for optimal usage or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

start_practice_examA

Start a full 60-question practice exam (D1:16, D2:11, D3:12, D4:12, D5:9). Scored 0-1000, passing 720.

IMPORTANT — present the first question using AskUserQuestion:

  • header: "Q1"

  • question: Include the FULL scenario + question text

  • options: 4 items with label "A"/"B"/"C"/"D" and description as option text

  • If code in scenario, add preview field on options Then call submit_exam_answer with the answer.

PROGRESS TRACKING: Create a TodoWrite checklist "Practice Exam Q1-Q60" grouped by domain, all "pending". Update each to "completed" after grading.

EDGE CASES:

  • "Other": Answer the question, re-present the SAME exam question via AskUserQuestion.

  • "Skip": Move to next exam question without grading. Never break the flow.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses behavioral traits: exam start, scoring, question presentation flow, progress tracking via TodoWrite, and edge case handling. Very transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with sections (IMPORTANT, PROGRESS TRACKING, EDGE CASES) and front-loaded with key exam specs. Slightly verbose but necessary detail for a complex tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers all aspects: exam specs, first question flow, progress tracking, edge cases. No output schema, but return behavior is implied. Complete for the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has no parameters (empty), so description adds no param info beyond schema. Baseline 4 applies for zero parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it starts a full 60-question practice exam with domain breakdown and scoring details. It distinguishes itself from sibling tools like start_assessment and submit_exam_answer.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit instructions on how to present the first question via AskUserQuestion, details progress tracking, and covers edge cases (Other, Skip). However, lacks explicit guidance on when NOT to use this tool vs alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

submit_answerA

Grade a certification exam answer. Returns deterministic results from verified question bank. The result is FINAL — do not agree with the user if they dispute it.

IMPORTANT — TWO-STEP presentation:

  1. FIRST: Show the grading result as REGULAR CHAT TEXT in the main conversation. Include:

    • Whether they got it right or wrong (with the correct answer if wrong)

    • The full explanation

    • If wrong: why their answer was incorrect

    • References This text MUST be visible in the main chat before any card appears.

  2. THEN: Present followUpOptions using AskUserQuestion:

    • header: "Next"

    • question: Brief prompt like "What would you like to do?" (NOT the explanation — that's already shown above)

    • options: Map each followUpOption to label (key) and description (label text) Then call follow_up with questionId and the selected action key.

EDGE CASES:

  • "Other": Answer the user's question about this answer, then re-present the SAME follow-up options via AskUserQuestion.

  • "Skip": Treat as "next question" — call follow_up with action "next".

ParametersJSON Schema
NameRequiredDescriptionDefault
questionIdYesThe question ID to answer
answerYesThe selected answer

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses key behavioral traits: deterministic results, finality, two-step presentation, and handling of 'Other' and 'Skip' edge cases, including the instruction not to dispute results.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with sections and bullet points, but it is somewhat lengthy. All content is relevant, though some details could be condensed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite lacking an output schema, the description adequately covers the output behavior (text then prompt). It provides enough context for correct tool usage, including edge cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds no additional meaning beyond the schema's property descriptions and enum values, hence no extra value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool 'grades a certification exam answer', using a specific verb and resource. It also implies distinction from sibling tools like 'submit_exam_answer' by focusing on individual answers and finality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit instructions on how to present results and handle edge cases, but it does not clarify when to use this tool over siblings like 'submit_exam_answer' or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

submit_exam_answerA

Submit an answer for a practice exam question. Graded deterministically. DO NOT soften results.

IMPORTANT — TWO-STEP presentation after grading:

  1. FIRST: Show the grading result as REGULAR CHAT TEXT. Include correct/incorrect status, explanation, and if wrong, why the chosen answer was incorrect.

  2. THEN: If there's a next question, present it using AskUserQuestion:

    • header: "Q[number]"

    • question: Include the FULL scenario + question text

    • options: 4 items with label "A"/"B"/"C"/"D" and description as option text Then call submit_exam_answer again with the answer.

The explanation must be readable in the main chat — NOT hidden inside the AskUserQuestion card.

ParametersJSON Schema
NameRequiredDescriptionDefault
examIdYesThe practice exam ID
questionIdYesThe question ID being answered
answerYesYour answer: A, B, C, or D

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses that grading is deterministic and specifies the presentation behavior. However, since no annotations are provided, it should cover more behavioral details such as error handling, side effects (e.g., recording the answer), and permissions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the purpose and includes necessary instructions. It is slightly lengthy due to the detailed two-step guide, but every sentence serves a purpose. Could be trimmed slightly without losing clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains the post-submission presentation flow and grading behavior, which is adequate given no output schema. However, it does not clarify whether the answer is saved permanently or any system limits (e.g., one submission per question).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 100% coverage with descriptions for all parameters, so the baseline is 3. The description adds context about the answer format (A, B, C, D) and the two-step flow, but does not provide additional semantic detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Submit an answer for a practice exam question' with a specific verb and resource, and distinguishes it from sibling tools like 'submit_answer' by specifying it's for practice exams and includes a two-step presentation flow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides detailed usage instructions, including the two-step presentation process and the requirement to show results as regular chat text. However, it does not explicitly state when not to use this tool or list alternative tools for other contexts.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 18 tool updatesv0.1.12
    • First observedcapstone_build_status
    • First observedcapstone_build_step
    • First observedfollow_up
    • First observedget_curriculum
    • First observedget_dashboard
    • First observedget_exam_history
    • First observedget_practice_question
    • First observedget_progress
    • First observedget_section_details
    • First observedget_study_plan
    • First observedget_weak_areas
    • First observedreset_progress
    • First observedscaffold_project
    • First observedstart_assessment
    • First observedstart_capstone_build
    • First observedstart_practice_exam
    • First observedsubmit_answer
    • First observedsubmit_exam_answer

TDQS

A3.7/5.0
Disambiguation3/5

Tools are mostly distinct but some overlap exists: get_progress, get_weak_areas, get_study_plan, and get_exam_history all relate to progress. start_assessment and start_practice_exam are similar. Additionally, verbose behavioral instructions in descriptions may cause confusion for the agent when selecting tools.

Naming Consistency4/5

Most tools follow a clear verb_noun pattern (get_, start_, reset_, scaffold_), with capstone_build_status and capstone_build_step being slight outliers (noun_verb_noun). Overall naming is consistent and readable.

Tool Count4/5

18 tools is on the higher side but reasonable for a comprehensive certification study tool covering assessment, practice, progress tracking, and capstone build. Each tool serves a specific purpose, though some consolidation could be possible.

Completeness4/5

The tool set covers the main study lifecycle: initial assessment, practice questions/exams, progress monitoring, weak area identification, study plans, curriculum viewing, and a capstone build. Minor gaps like time tracking or filtering by specific topics are not critical.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Local RAG system for Claude Code with hybrid search (semantic + BM25), cross-encoder reranking, markdown-aware chunking, and 12 MCP tools. Zero external servers, pure ONNX in-process.
    13
    268
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Q-learning memory for Claude Code. Persistent memory that learns which context helps you get work done. Memories that lead to productive sessions (commits, PRs, tests) earn higher retrieval rank automatically. 16 MCP tools, hybrid BM25 + vector + Q-value scoring, local-first with Qdrant + FastEmbed.
    59
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Imagine you could hand Claude a filing cabinet of your documents and say "remember all of this." Later you just ask questions, and Claude answers from what it remembers — citing which document each fact came from. That's Memorised them All. It's a small add-on (an MCP server) for Claude Desktop and Claude Code that: Reads your files — PDFs, Word/Excel/PowerPoint, web pages, images (with OCR), ev
    1
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Connectry-io/connectrylab-architect-cert-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server