mcpbeat Sign in

ClassMarker MCP by usefulapi MCP Server

answering

ClassMarker MCP by usefulapi is answering right now. Last checked 11 min ago. It exposes 15 tools. Last commit 13 Oct 2026.

Read ClassMarker groups, links, exams and recent results; manage question bank and access codes.

Uptime history 5 days of history
5 days agonow
100.0%
Uptime 24h
92 of 92 checks
15
Tools
read from the server
140 ms
Response time
average over 24h
0
Stars
last commit 13 Oct 2026

What changed 1

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 13 October 2026. No other catalogue keeps this.

13 Oct a tool changed version

Nothing serious here today

Today is the operative word: we check ClassMarker MCP by usefulapi every 15 minutes and re-read its code on every release. Watch it and you find out the day that stops being true.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 11 min ago.

run in your terminal
claude mcp add classmarker --transport http https://classmarker.usefulapi.io/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "classmarker": {
      "url": "https://classmarker.usefulapi.io/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.classmarker]
url = "https://classmarker.usefulapi.io/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "classmarker": {
      "url": "https://classmarker.usefulapi.io/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "classmarker": {
      "url": "https://classmarker.usefulapi.io/mcp"
    }
  }
}

Available tools 15

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

classmarker
classmarker_add_access_codes
WRITE: add access codes (1-100 per call, up to 255 characters each; a list holds at most 20,000) to a link's access-code list, so those people can start the exam. The access_list_id comes from classmarker_list_groups_links_exams (links[].access_list_id). Only adds; removing codes is not offered. Does not count against the 30 requests per hour limit. API: POST /v1/accesslists/{access_list_id}.json.
classmarker_create_category
WRITE: create a question category under a parent category. Returns its category_id. Counts as one of ClassMarker's 30 requests per hour per API key. API: POST /v1/categories/category.json.
classmarker_create_parent_category
WRITE: create a new top-level question category. Returns its parent_category_id. Counts as one of ClassMarker's 30 requests per hour per API key. API: POST /v1/categories/parent_category.json.
classmarker_create_question
WRITE: add a new question to the question bank. Only multiplechoice, multipleresponse, truefalse and essay can be created. Returns the new question_id. For truefalse, give only correct_options ["A"] (True) or ["B"] (False). Counts as one of ClassMarker's 30 requests per hour per API key. API: POST /v1/questions.json.
classmarker_get_question
Get one question-bank question by id (ids from classmarker_list_questions). Counts as one of ClassMarker's 30 requests per hour per API key. API: GET /v1/questions/{question_id}.json.
classmarker_list_categories
List the question-bank categories with their parent categories and ids (needed for creating and updating questions). Counts as one of ClassMarker's 30 requests per hour per API key. API: GET /v1/categories.json.
classmarker_list_groups_links_exams
List the groups, links and exams (tests) this API key can access, with the ids the other tools need (group_id, link_id, link_url_id, test_id, and access_list_id for links with an access-code list). Good first call. Counts as one of ClassMarker's 30 requests per hour per API key. API: GET /v1.json.
classmarker_list_questions
List the questions of the question bank, 200 per page (page 1, 2, ...): question text, type, category, points, options, correct options, status. A full page means more may follow, so ask for the next page. Counts as one of ClassMarker's 30 requests per hour per API key. API: GET /v1/questions.json?page=N.
classmarker_recent_group_exam_results
Recent finished results for ONE exam in ONE group (ids from classmarker_list_groups_links_exams), oldest first, PAGED by finish time. Contains personal data: use small pages. Counts as one of ClassMarker's 30 requests per hour per API key. API: GET /v1/groups/{group_id}/tests/{test_id}/recent_results.json.
classmarker_recent_group_results
Recent finished test results taken in the key's groups (all groups, all exams), oldest first, PAGED by finish time: test-taker name, email, score, percentage, pass/fail, timing, certificate. Contains personal data: use small pages. Max look-back 3 months. Counts as one of ClassMarker's 30 requests per hour per API key. API: GET /v1/groups/recent_results.json.
classmarker_recent_link_exam_results
Recent finished results for the exam of ONE link (ids from classmarker_list_groups_links_exams), oldest first, PAGED by finish time. Contains personal data: use small pages. Counts as one of ClassMarker's 30 requests per hour per API key. API: GET /v1/links/{link_id}/tests/{test_id}/recent_results.json.
classmarker_recent_link_results
Recent finished test results taken through the key's links (all links, all exams), oldest first, PAGED by finish time: test-taker name, email, score, pass/fail, timing, access code, extra tracking fields, IP address, certificate. Contains personal data: use small pages. Max look-back 3 months. Counts as one of ClassMarker's 30 requests per hour per API key. API: GET /v1/links/recent_results.json.
classmarker_update_category
WRITE: rename a category and/or move it to another parent (overwrites both fields: send the name and parent_category_id you want it to have). Counts as one of ClassMarker's 30 requests per hour per API key. API: PUT /v1/categories/category/{category_id}.json.
classmarker_update_parent_category
WRITE: rename an existing parent category (overwrites its name). Counts as one of ClassMarker's 30 requests per hour per API key. API: PUT /v1/categories/parent_category/{parent_category_id}.json.
classmarker_update_question
WRITE (overwrites): replace an existing question-bank question. Send the COMPLETE question (type, text, options, correct options, points, feedback), not only the changed fields; read it first with classmarker_get_question. Only multiplechoice, multipleresponse, truefalse and essay questions can be updated. Counts as one of ClassMarker's 30 requests per hour per API key. API: PUT /v1/questions/{question_id}.json.

Endpoints

URLTransportStateLatencyChecked
https://classmarker.usefulapi.io/mcp streamable-http answering 180 ms 11 min ago

Alternatives to ClassMarker MCP by usefulapi

same job, measured the same way
Benchmark Email MCP by usefulapi
by usefulapi

Manage Benchmark Email lists and contacts, and read campaign reports: opens, clicks, bounces.

25 tools answering
Eventbrite MCP by usefulapi
by usefulapi

Manage Eventbrite events, ticket classes, venues and discounts; read attendees, orders and reports.

26 tools answering
EmailOctopus MCP by usefulapi
by usefulapi

Manage lists, contacts and campaigns, and read campaign performance reports on EmailOctopus.

13 tools answering
Sendlane MCP by usefulapi
by usefulapi

Manage Sendlane lists, contacts, tags and custom fields; read campaign and SMS reports.

31 tools answering
Codecov MCP by usefulapi
by usefulapi

Read Codecov coverage reports, commits, pulls, flags and components.

24 tools answering
FreeAgent MCP by usefulapi
by usefulapi

Read FreeAgent contacts, invoices, bills, banking and reports; add contacts, draft invoices, time.

20 tools answering
Gift Up! MCP by usefulapi
by usefulapi

Read Gift Up! gift cards, orders, items, promotions and transactions (read-only, codes masked).

13 tools answering
Gumroad MCP by usefulapi
by usefulapi

Read products, sales, subscribers and offer codes; verify, enable and disable product licenses.

20 tools answering

ClassMarker MCP by usefulapi — questions

Answers built from our own checks of this server.

What can ClassMarker MCP by usefulapi do?
It exposes 15 tools, read directly from the server on our last check. Among them: classmarker_add_access_codes, classmarker_create_category, classmarker_create_parent_category, classmarker_create_question, classmarker_get_question, classmarker_list_categories and 9 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is ClassMarker MCP by usefulapi working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 92 of 92 checks got a reply (100.0%), average response time 140 ms. The bar chart above shows every period we have measured.
How do I connect ClassMarker MCP by usefulapi?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does ClassMarker MCP by usefulapi need an API key?
No. ClassMarker MCP by usefulapi completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 15 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is ClassMarker MCP by usefulapi?
It answers our handshake in 140 ms on average, which is faster than 77% of all working MCP servers we measure. That puts it in the quick quarter of the ecosystem. The comparison comes from our own checks across the whole registry, every 15 minutes.
Is ClassMarker MCP by usefulapi open source?
Yes — it is published under the MIT licence, written in JavaScript, 0 stars on GitHub and 1 open issue. The source link is on this page, so you can read exactly what it does with your data before you connect it.