KnowBe4
OCI · GHCR.IO/WYRE-AI/KNOWBE4-MCP:V1.1.5 · SCANNED SEP 20
MCP server for KnowBe4 security awareness training — users, groups, training, phishing campaigns.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security0
- Malware scan not yet available for this package.Unverified
- Known CVEs could not be checked: this artifact ships no SBOM, so there is no dependency list to read. Publishing one would let us assess it.Unverified
- Install-script risk not yet assessed.Unverified
- Dependency health could not be checked: this artifact ships no SBOM, so there is no dependency list to read. Publishing one would let us assess it.Unverified
Provenance & Transparency45
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (Apache-2.0).Pass
- Actively maintained (last published 25 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability91
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 1986 tokens (~64/item across 31 items; 30 tools + 1 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management83
- Stability observed for 25 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 30 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 31 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
- Supports UI / widget rendering.Pass
Unverified: 1 category
A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.
How do I install the KnowBe4 MCP server?
KnowBe4 runs locally as a container image, launched with docker run --rm -i ghcr.io/wyre-ai/knowbe4-mcp:v1.1.5. Ready-made configuration for Claude, Cursor, VS Code, Codex and 3 more is on this page, copied from each client's own documentation.
oci · ghcr.io/wyre-ai/knowbe4-mcp:v1.1.5
claude mcp add wyre-ai-knowbe4-mcp -- docker run --rm -i ghcr.io/wyre-ai/knowbe4-mcp:v1.1.5
{
"mcpServers": {
"wyre-ai-knowbe4-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"ghcr.io/wyre-ai/knowbe4-mcp:v1.1.5"
]
}
}
} {
"servers": {
"wyre-ai-knowbe4-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"ghcr.io/wyre-ai/knowbe4-mcp:v1.1.5"
]
}
}
} codex mcp add wyre-ai-knowbe4-mcp -- docker run --rm -i ghcr.io/wyre-ai/knowbe4-mcp:v1.1.5
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"wyre-ai-knowbe4-mcp": {
"type": "local",
"command": [
"docker",
"run",
"--rm",
"-i",
"ghcr.io/wyre-ai/knowbe4-mcp:v1.1.5"
],
"enabled": true
}
}
} mcp_servers:
wyre-ai-knowbe4-mcp:
command: "docker"
args: ["run", "--rm", "-i", "ghcr.io/wyre-ai/knowbe4-mcp:v1.1.5"] {
"McpServers": {
"wyre-ai-knowbe4-mcp": {
"Transport": "stdio",
"Command": "docker",
"Arguments": [
"run",
"--rm",
"-i",
"ghcr.io/wyre-ai/knowbe4-mcp:v1.1.5"
]
}
}
} {
"mcpServers": {
"wyre-ai-knowbe4-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"ghcr.io/wyre-ai/knowbe4-mcp:v1.1.5"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 19 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 77 to 80. That category is still filling its 30-day observation window: 23 days of observed history at the previous scan, 24 at this one. The score rises as the window fills, whether or not the server changes.
- 17 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 70 to 73. That category is still filling its 30-day observation window: 21 days of observed history at the previous scan, 22 at this one. The score rises as the window fills, whether or not the server changes.
- 15 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 63 to 67. That category is still filling its 30-day observation window: 19 days of observed history at the previous scan, 20 at this one. The score rises as the window fills, whether or not the server changes.
- 13 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 57 to 60. That category is still filling its 30-day observation window: 17 days of observed history at the previous scan, 18 at this one. The score rises as the window fills, whether or not the server changes.
- 11 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 50 to 53. That category is still filling its 30-day observation window: 15 days of observed history at the previous scan, 16 at this one. The score rises as the window fills, whether or not the server changes.
- 9 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 43 to 47. That category is still filling its 30-day observation window: 13 days of observed history at the previous scan, 14 at this one. The score rises as the window fills, whether or not the server changes.
- 6 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 33 to 37. That category is still filling its 30-day observation window: 10 days of observed history at the previous scan, 11 at this one. The score rises as the window fills, whether or not the server changes.
- 4 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 27 to 30. That category is still filling its 30-day observation window: 8 days of observed history at the previous scan, 9 at this one. The score rises as the window fills, whether or not the server changes.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Analysed oci/ghcr.io/wyre-ai/knowbe4-mcp:v1.1.5
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | oci |
| Reason | No attestation published |
Background: How many MCP packages publish verified provenance →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
knowbe4_account_get ~33
Get KnowBe4 account information including subscription level, number of seats, admin details, and current risk score.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
knowbe4_account_risk_score_history ~71
Get the account-level risk score history over time. Useful for tracking overall security posture improvement.
| Name | Type | Req | Description |
|---|---|---|---|
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 100, max: 500) |
No output schema declared.
No examples provided.
knowbe4_back ~23
No-op tool for backwards compatibility. All tools are always available.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
knowbe4_groups_get ~44
Get detailed information about a specific KnowBe4 group by ID, including risk score and member count.
| Name | Type | Req | Description |
|---|---|---|---|
| group_id | number | yes | The group ID to retrieve |
No output schema declared.
No examples provided.
knowbe4_groups_list ~69
List all KnowBe4 groups. Returns group names, member counts, and current risk scores.
| Name | Type | Req | Description |
|---|---|---|---|
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 100, max: 500) |
No output schema declared.
No examples provided.
knowbe4_groups_members ~80
Get all members of a specific group. Returns user details for each member.
| Name | Type | Req | Description |
|---|---|---|---|
| group_id | number | yes | The group ID to get members for |
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 100, max: 500) |
No output schema declared.
No examples provided.
knowbe4_groups_risk_score_history ~89
Get a group's risk score history over time. Useful for comparing security posture across departments or teams.
| Name | Type | Req | Description |
|---|---|---|---|
| group_id | number | yes | The group ID to get risk score history for |
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 100, max: 500) |
No output schema declared.
No examples provided.
knowbe4_navigate ~139
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.
| Name | Type | Req | Description |
|---|---|---|---|
| domain | string | yes | The domain to explore: - account: Account info and risk score history - users: User management and individual risk scores - groups: Group management, members, and group risk scores - phishing: Phishi… |
No output schema declared.
No examples provided.
knowbe4_phishing_campaign_tests ~80
List all Phishing Security Tests (PSTs) for a specific campaign.
| Name | Type | Req | Description |
|---|---|---|---|
| campaign_id | number | yes | The phishing campaign ID |
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 100, max: 500) |
No output schema declared.
No examples provided.
knowbe4_phishing_campaigns_get ~43
Get detailed information about a specific phishing campaign by ID, including all associated security tests.
| Name | Type | Req | Description |
|---|---|---|---|
| campaign_id | number | yes | The phishing campaign ID |
No output schema declared.
No examples provided.
knowbe4_phishing_campaigns_list ~74
List all phishing simulation campaigns. Returns campaign names, status, creation dates, and associated security test counts.
| Name | Type | Req | Description |
|---|---|---|---|
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 100, max: 500) |
No output schema declared.
No examples provided.
knowbe4_phishing_security_test_get ~59
Get detailed results for a specific Phishing Security Test (PST) by ID. Includes phish-prone percentage, clicked/opened/reported counts.
| Name | Type | Req | Description |
|---|---|---|---|
| pst_id | number | yes | The Phishing Security Test ID |
No output schema declared.
No examples provided.
knowbe4_phishing_security_test_recipient ~65
Get a specific recipient's detailed result for a PST, including click time, open time, and reported status.
| Name | Type | Req | Description |
|---|---|---|---|
| pst_id | number | yes | The Phishing Security Test ID |
| recipient_id | number | yes | The recipient (user) ID |
No output schema declared.
No examples provided.
knowbe4_phishing_security_test_recipients ~92
Get recipient-level results for a specific PST. Shows which users clicked, opened, reported, or were otherwise affected.
| Name | Type | Req | Description |
|---|---|---|---|
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 100, max: 500) |
| pst_id | number | yes | The Phishing Security Test ID |
No output schema declared.
No examples provided.
knowbe4_phishing_security_tests_list ~82
List all Phishing Security Tests (PSTs) across all campaigns. Returns test status, phish-prone percentage, and recipient counts.
| Name | Type | Req | Description |
|---|---|---|---|
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 100, max: 500) |
No output schema declared.
No examples provided.
knowbe4_policies_get ~37
Get detailed information about a specific policy by ID, including acknowledgment status.
| Name | Type | Req | Description |
|---|---|---|---|
| policy_id | number | yes | The policy ID |
No output schema declared.
No examples provided.
knowbe4_policies_list ~66
List all security policies. Returns policy names, status, and acknowledgment requirements.
| Name | Type | Req | Description |
|---|---|---|---|
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 100, max: 500) |
No output schema declared.
No examples provided.
knowbe4_reporting_phishing_summary ~88
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.
| Name | Type | Req | Description |
|---|---|---|---|
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 500, max: 500) |
No output schema declared.
No examples provided.
knowbe4_reporting_risk_overview ~36
Get an overview of account risk posture including current risk score, recent risk score trend, and highest-risk groups.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
knowbe4_reporting_training_summary ~71
Get a summary of all training campaigns including total enrollments, completion counts, and overall completion rate.
| Name | Type | Req | Description |
|---|---|---|---|
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 500, max: 500) |
No output schema declared.
No examples provided.
knowbe4_status ~24
Show credentials status and available domains. Also verifies API credentials are configured.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
knowbe4_store_purchases_get ~36
Get detailed information about a specific store purchase by ID.
| Name | Type | Req | Description |
|---|---|---|---|
| purchase_id | number | yes | The store purchase ID |
No output schema declared.
No examples provided.
knowbe4_store_purchases_list ~74
List all store purchases (training content bought from the KnowBe4 ModStore). Shows purchased modules and content.
| Name | Type | Req | Description |
|---|---|---|---|
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 100, max: 500) |
No output schema declared.
No examples provided.
knowbe4_training_campaigns_get ~46
Get detailed information about a specific training campaign by ID, including modules, enrollments, and completion statistics.
| Name | Type | Req | Description |
|---|---|---|---|
| campaign_id | number | yes | The training campaign ID |
No output schema declared.
No examples provided.
knowbe4_training_campaigns_list ~70
List all training campaigns. Returns campaign names, status, enrollment counts, and completion rates.
| Name | Type | Req | Description |
|---|---|---|---|
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 100, max: 500) |
No output schema declared.
No examples provided.
knowbe4_training_enrollments_get ~43
Get detailed information about a specific training enrollment by ID, including module progress and completion date.
| Name | Type | Req | Description |
|---|---|---|---|
| enrollment_id | number | yes | The enrollment ID |
No output schema declared.
No examples provided.
knowbe4_training_enrollments_list ~73
List all training enrollments. Shows which users are enrolled in which training modules and their completion status.
| Name | Type | Req | Description |
|---|---|---|---|
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 100, max: 500) |
No output schema declared.
No examples provided.
knowbe4_users_get ~55
Get detailed information about a specific KnowBe4 user by ID, including their risk score, phish-prone percentage, training status, and group memberships.
| Name | Type | Req | Description |
|---|---|---|---|
| user_id | number | yes | The user ID to retrieve |
No output schema declared.
No examples provided.
knowbe4_users_list ~113
List KnowBe4 users with optional filtering by status or group. Returns paginated results including email, name, risk score, and department.
| Name | Type | Req | Description |
|---|---|---|---|
| group_id | number | – | Filter by group ID to list only members of a specific group |
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 100, max: 500) |
| status | string | – | Filter by user status (active or archived) |
No output schema declared.
No examples provided.
knowbe4_users_risk_score_history ~89
Get a specific user's risk score history over time. Useful for tracking individual improvement in security awareness.
| Name | Type | Req | Description |
|---|---|---|---|
| page | number | – | Page number for pagination (default: 1) |
| per_page | number | – | Number of results per page (default: 100, max: 500) |
| user_id | number | yes | The user ID to get risk score history for |
No output schema declared.
No examples provided.
What is the KnowBe4 MCP server?
KnowBe4 is an MCP server listed in the public MCP registry as io.github.WYRE-AI/knowbe4-mcp. MCP server for KnowBe4 security awareness training, users, groups, training, phishing campaigns. This page covers its container image (ghcr.io/wyre-ai/knowbe4-mcp:v1.1.5).
Is the KnowBe4 MCP server safe to use?
KnowBe4 scores 55 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the KnowBe4 MCP server expose?
KnowBe4 exposes 30 tools: knowbe4_navigate, knowbe4_back, knowbe4_status, knowbe4_account_get, knowbe4_account_risk_score_history, and 25 more. Their descriptions and schemas cost roughly 1,964 tokens of context every time the server is loaded.
Is the KnowBe4 MCP server still maintained?
KnowBe4 is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the KnowBe4 MCP server under?
KnowBe4 declares the Apache-2.0 licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.