# QuizGen (remote · quizgen.dev)

Create hosted quizzes, forms and surveys, send them, and read the responses.

- Trust score: 75/100 (medium)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `quizgen.dev`: 75/100 (this document), [markdown](https://verifymcp.io/servers/dev-quizgen-quizgen/quizgen.md), [page](https://verifymcp.io/servers/dev-quizgen-quizgen/quizgen)

## Channel facts

- Endpoint: `https://quizgen.dev/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.0.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Endpoint Security**: 63/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (delete_quiz).
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 75/100
  - AI-judged instruction clarity (good).
  - Tool/resource definitions use about 1372 tokens (~98/item across 14 items; 14 tools + 0 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 63/100
  - Stability observed for 19 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 95/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 81% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - All 2 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.
  - An AI judge read all 15 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a current MCP spec version (2026-07-28).

## Install

### How do I install the QuizGen MCP server?

QuizGen is a hosted endpoint at https://quizgen.dev/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http dev-quizgen-quizgen 'https://quizgen.dev/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "dev-quizgen-quizgen": {
      "url": "https://quizgen.dev/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "dev-quizgen-quizgen": {
      "type": "http",
      "url": "https://quizgen.dev/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.dev-quizgen-quizgen]
url = "https://quizgen.dev/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "dev-quizgen-quizgen": {
      "type": "remote",
      "url": "https://quizgen.dev/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add dev-quizgen-quizgen --url 'https://quizgen.dev/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  dev-quizgen-quizgen:
    url: "https://quizgen.dev/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "dev-quizgen-quizgen": {
      "Transport": "http",
      "Url": "https://quizgen.dev/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add dev-quizgen-quizgen -t streamable-http -u 'https://quizgen.dev/mcp'
```

### Other

```json
{
  "mcpServers": {
    "dev-quizgen-quizgen": {
      "type": "http",
      "url": "https://quizgen.dev/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-04 (score 75, +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.

### 2026-11-02 (score 74, +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.

### 2026-10-31 (score 73, +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.

### 2026-10-29 (score 72, +1)

No change was recorded against any check on this day. Stability & Change Management went from 37 to 40. That category is still filling its 30-day observation window: 11 days of observed history at the previous scan, 12 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-26 (score 71, +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.

### 2026-10-24 (score 70, +1)

No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-22 (score 69, +1)

No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-20 (score 68, +1)

No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

## MCP tools (14)

### `create_quiz` (~151 tokens)

Create Quiz

Create a live, hosted quiz/form/survey and get its shareable URL. Without authorization this creates a temporary sandbox quiz (72 hours, 10 responses) with a secret claim_url to keep it. The definition schema below is the complete quiz format — only the 19 documented question types exist, and unknown fields are rejected.

Input parameters:

- `creator_email` (string): Optional, sandbox only: your user's email. They get the claim link by email immediately plus one reminder before the quiz expires — worth asking the user for. Never invent one.
- `definition` (object, required)
- `idempotency_key` (string): Optional. Same key within 24h returns the originally created quiz instead of a duplicate.

### `list_quizzes` (~73 tokens)

List Quizzes

List quizzes owned by the connected QuizGen account, newest first (default 50 per page; the result includes total and has_more). Requires authorization.

Input parameters:

- `limit` (integer): Max quizzes to return (default 50).
- `offset` (integer): Skip this many quizzes (use next_offset from the previous page).

### `get_quiz` (~50 tokens)

Get Quiz

Get one quiz including its full definition. Requires an authorized account that owns the quiz.

Input parameters:

- `quiz_id` (string, required): Quiz id (the `id` field returned by create_quiz/list_quizzes).

### `update_quiz` (~76 tokens)

Update Quiz

Replace a quiz's definition (full replacement, not a patch — send the complete new definition). The quiz keeps its URL and responses. Requires an authorized account that owns the quiz.

Input parameters:

- `definition` (object, required)
- `quiz_id` (string, required): Quiz id (the `id` field returned by create_quiz/list_quizzes).

### `set_quiz_status` (~63 tokens)

Set Quiz Status

Open ("live") or close ("closed") a quiz. Closed quizzes stop accepting responses but keep their data.

Input parameters:

- `quiz_id` (string, required): Quiz id (the `id` field returned by create_quiz/list_quizzes).
- `status` (string, required)

### `delete_quiz` (~54 tokens)

Delete Quiz

Delete a quiz. Its URL stops working and responses become inaccessible. Confirm with your user before calling this.

Input parameters:

- `quiz_id` (string, required): Quiz id (the `id` field returned by create_quiz/list_quizzes).

### `get_responses` (~122 tokens)

Get Responses

List a quiz's responses (answers, outcome, score, timestamps), newest first (default 50 per page; the result includes total and has_more). Requires an authorized account that owns the quiz.

Input parameters:

- `complete_only` (boolean): If true, return only completed responses.
- `limit` (integer): Max responses to return (default 50).
- `offset` (integer): Skip this many responses (use next_offset from the previous page).
- `quiz_id` (string, required): Quiz id (the `id` field returned by create_quiz/list_quizzes).

### `get_response` (~49 tokens)

Get Response

Get a single response by id.

Input parameters:

- `quiz_id` (string, required): Quiz id (the `id` field returned by create_quiz/list_quizzes).
- `response_id` (string, required): Response id.

### `get_quiz_stats` (~54 tokens)

Get Quiz Stats

Get a quiz's funnel stats: views, started, finished, completion rate, and outcome counts.

Input parameters:

- `quiz_id` (string, required): Quiz id (the `id` field returned by create_quiz/list_quizzes).

### `set_webhook` (~113 tokens)

Set Webhook

Set (url) or clear (url: null) the webhook for a quiz. Completed responses POST to the url; with a secret, requests carry an X-QuizGen-Signature HMAC-SHA256 header.

Input parameters:

- `quiz_id` (string, required): Quiz id (the `id` field returned by create_quiz/list_quizzes).
- `secret` (string): Optional signing secret (min 8 chars).
- `url` (string|null, required): https:// URL to receive completed responses, or null to clear.

### `send_quiz_by_email` (~135 tokens)

Send Quiz By Email

Email the quiz to recipients — each gets a unique tracked link so responses tie back to them (see get_sends). Any account with a confirmed email address; capped per month and per 24 hours (Free: 200/mo, 50/day; Plus: 5,000/mo). Confirm the recipient list with your user before calling: this sends real email immediately.

Input parameters:

- `message` (string): Optional short note from the sender, shown above the button.
- `quiz_id` (string, required): Quiz id (the `id` field returned by create_quiz/list_quizzes).
- `recipients` (array, required)

### `get_sends` (~57 tokens)

Get Sends

Delivery status for a quiz's email sends: sent / started / completed per recipient, plus reminder counts and opt-outs.

Input parameters:

- `quiz_id` (string, required): Quiz id (the `id` field returned by create_quiz/list_quizzes).

### `set_follow_up` (~73 tokens)

Set Follow Up

Set (or clear with rule: null) automatic email reminders for recipients who haven't completed the quiz. Stops on completion, opt-out, or max_reminders.

Input parameters:

- `quiz_id` (string, required): Quiz id (the `id` field returned by create_quiz/list_quizzes).
- `rule` (object|null, required)

### `check_account` (~51 tokens)

Check Connected Account

Return the connected account's email, plan, and limits. Call this to verify that QuizGen authorization (OAuth or API key) is active. (Formerly named check_api_key; the old name still works.)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/dev-quizgen-quizgen/quizgen#diagnostics

## Score history

- 2026-11-05: 75
- 2026-11-04: 75
- 2026-11-03: 74
- 2026-11-02: 74
- 2026-11-01: 73
- 2026-10-31: 73
- 2026-10-30: 72
- 2026-10-29: 72
- 2026-10-28: 71
- 2026-10-27: 71
- 2026-10-26: 71
- 2026-10-25: 70
- 2026-10-24: 70
- 2026-10-23: 69
- 2026-10-22: 69
- 2026-10-21: 68
- 2026-10-20: 68
- 2026-10-19: 67
- 2026-10-18: 67
- 2026-10-17: 66

## Common questions

### What is the QuizGen MCP server?

QuizGen is an MCP server listed in the public MCP registry as dev.quizgen/quizgen. Create hosted quizzes, forms and surveys, send them, and read the responses. This page covers its hosted endpoint (https://quizgen.dev/mcp).

### Is the QuizGen MCP server safe to use?

QuizGen scores 75 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 QuizGen MCP server expose?

QuizGen exposes 14 tools: create_quiz, list_quizzes, get_quiz, update_quiz, set_quiz_status, and 9 more. Their descriptions and schemas cost roughly 1,121 tokens of context every time the server is loaded.

### Does the QuizGen MCP server require authentication?

No. We connected to QuizGen without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the QuizGen MCP server still maintained?

QuizGen is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What did VerifyMCP test on the QuizGen MCP server?

VerifyMCP ran 13 checks on QuizGen, covering TLS certificate, Authorization, HTTPS, HSTS header and 9 more. Supply Chain Security and Provenance & Transparency do not apply to a hosted endpoint, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.

## Links

- Remote endpoint: https://quizgen.dev/mcp
- Website: https://quizgen.dev/
- Changelog RSS feed: https://verifymcp.io/servers/dev-quizgen-quizgen/quizgen.xml
- Changelog JSON feed: https://verifymcp.io/servers/dev-quizgen-quizgen/quizgen/changelog.json
- Trust report (JSON): https://verifymcp.io/servers/dev-quizgen-quizgen/quizgen.json
- HTML version of this page: https://verifymcp.io/servers/dev-quizgen-quizgen/quizgen
