MCP server for KnowBe4 — security awareness training, phishing simulation, and user risk management API integration
Server has 23 tools with consistent naming (verb_noun pattern: knowbe4_*_list, knowbe4_*_get) and comprehensive descriptions (avg 150+ chars). All tools have input schemas with type definitions and parameter descriptions. However, output schemas are not documented in the source code, LLMs cannot see what fields to expect from responses. Several tools lack pagination guidance in descriptions. Error handling is minimal; no recovery guidance or actionable error messages visible. Missing tool annotations (readOnlyHint, idempotentHint). Tools are well-composed (single responsibility) and accept natural identifiers (group_id, pst_id) alongside pagination. Baseline: 549 production tools average 18-char names, 194-char descriptions, 4 params/tool. This server meets naming and description baselines but falls short on output documentation and error guidance.
Get KnowBe4 account information including subscription level, number of seats, admin details, and current risk score.
Get the account-level risk score history over time. Useful for tracking overall security posture improvement.
No-op tool for backwards compatibility. All tools are always available.
Execute any KnowBe4 tool by name. Use knowbe4_list_category_tools first to discover the tool's required arguments.
Get detailed information about a specific KnowBe4 group by ID, including risk score and member count.
List all KnowBe4 groups. Returns group names, member counts, and current risk scores.
Output schemas not documented. LLMs cannot see what fields responses contain, forcing them to guess downstream field names and risk broken tool chains. E.g., knowbe4_account_get returns account info but the response structure is invisible.
No tool annotations (readOnlyHint, idempotentHint, destructiveHint). All tools are read-only but this is not declared in the schema. Clients cannot optimize caching or retry logic without explicit hints.
Error handling not visible in source. No recovery guidance, error classification, or actionable error messages. If a tool fails, LLMs have no guidance on retry strategy or next steps.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 69 | 2026-07-28+ | v2 |
Get all members of a specific group. Returns user details for each member.
Get a group's risk score history over time. Useful for comparing security posture across departments or teams.
List all available KnowBe4 tool categories with descriptions and tool counts. Use this first to discover what the server can do before loading individual tool schemas.
List all tools in a specific category with their full schemas. Call this after knowbe4_list_categories to see exactly what parameters a tool accepts.
Discover available KnowBe4 tools by domain. Returns tool names and descriptions for the selected domain. All tools are callable at any time — this is a help/discovery aid, not a prerequisite.
List all Phishing Security Tests (PSTs) for a specific campaign.
Get detailed information about a specific phishing campaign by ID, including all associated security tests.
List all phishing simulation campaigns. Returns campaign names, status, creation dates, and associated security test counts.
Get detailed results for a specific Phishing Security Test (PST) by ID. Includes phish-prone percentage, clicked/opened/reported counts.
Get a specific recipient's detailed result for a PST, including click time, open time, and reported status.
Get recipient-level results for a specific PST. Shows which users clicked, opened, reported, or were otherwise affected.
List all Phishing Security Tests (PSTs) across all campaigns. Returns test status, phish-prone percentage, and recipient counts.
Get a summary of all phishing security tests including overall phish-prone percentage, total tests run, and aggregate click/open/report rates. Fetches all PSTs and computes statistics.
Get an overview of account risk posture including current risk score, recent risk score trend, and highest-risk groups.
Get a summary of all training campaigns including total enrollments, completion counts, and overall completion rate.
Suggest the best KnowBe4 tool(s) for a given intent. Describe what you want to do in plain language and this tool will recommend which tool(s) to call.
Show credentials status and available domains. Also verifies API credentials are configured.
knowbe4_back is a no-op tool with minimal description ('No-op tool for backwards compatibility'). This violates single-responsibility principle and adds noise to the tool list without value.
Pagination parameters (page, per_page) lack guidance on defaults and max values in descriptions. E.g., 'per_page' shows 'default: 100, max: 500' in some tools but not consistently across all paginated endpoints.