classifier.dev MCP server
online · 100% uptimedev.classifier/classifier·v1.0.0·422 starsSort up to 1,000 texts into your own labels with a calibrated confidence per answer. No API key.
422 stars
Reviews
Write oneNobody has reviewed classifier.dev yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
classifier.dev tools (5)
write = sends, deletes, buys or postsclassify_dimensionsFreeClassify each text by several named dimensions, such as team, urgency and kind, in one request. Returns a label, confidence, scores and model for each field. At most 1,000 item × dimension decisions; every field counts toward the quota. Use per-dimension instructions to define ambiguous categories.
classify_multi_labelFreeLike classify_texts, but each text gets every label that applies (possibly none), with an independent 0-1 score per label. Use this for tagging — topics of an article, components touched by a ticket — where one answer is not enough. Set max_labels to cap how many come back per text. Labels scoring >= 0.7 are kept.
classify_textsFreeSort up to 1,000 texts into exactly one of your own labels each, with confidence per answer. Use this when you have many items to triage, route, filter or bucket and do not want to read them all: search results before opening them, tickets, log lines, changed files, feedback. Do not use it for fewer than about five items you can already see — just decide. For default Jev, confidence is calibrated (answers >= 0.9 are right ~82-92% of the time; < 0.5 about 30-60%); these measurements do not apply to experimental Laya. so act on the sure ones and look at the rest yourself, or pass tier "smart" to have the unsure ones re-asked of a reasoning model.
count_labelsFreeClassify up to 1,000 texts and return only a histogram: how many landed on each label, and how many the model was unsure about. Use this when you want the shape of a corpus — what share of feedback is bugs vs praise, how many search results are relevant — without pulling a thousand individual answers into context. Use classify_texts when you need the answer per item.
review_uncertainFreeClassify up to 1,000 texts and return only the ones whose confidence fell under a threshold (default 0.7), each with its two most likely labels. Use this after a bulk classification to decide which items deserve your own attention: the confident answers can be trusted, these are the ones to read. Returns the index of each item so you can map back to your list.
Public scan report
scanner v0.1.10 · 2026-10-02 · same rubric, same numbers if you re-run it
- –Code scanremote-only server, no package to scann/a
- Live reliabilityremote reachable in 406ms20/20
- Tool poisoning5 tool descriptions checked15/15
- Auth qualityopen endpoint, read-only tools10/15
- Maintenancelast push 5 days ago15/15
- Maintainer identityendpoint served from the registry-verified namespace domain8/10
How classifier.dev compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 91/100
- higher than 85% of 48,255 servers
- Tools
- 5
- the typical server has 7
- Tools that change things
- 0%
- typical: 0%. Fewer write tools means less an agent can break
- Uptime
- 100%
- of our recent checks; the typical remote server answers 100%
- Response time
- 182 ms
- faster than 67% of 30,031 servers
- GitHub stars
- 422
- more than 95% of 28,688 servers
What its tools let an agent do: 5 read
Install classifier.dev in Claude Code, Cursor or VS Code
claude mcp add --transport http classifier https://classifier.dev/mcp
What the publisher says
From the classifier.dev repository's README, as published. We do not edit it. Read it on GitHub
classifier.dev
Zero-shot text classification. Plain text in, a label and a calibrated confidence out. No key, no signup. Up to a thousand texts per request.
curl https://classifier.dev/spam,not+spam/Win+a+free+iPhone spam
curl "https://classifier.dev/?labels=spam,not+spam&text=Win+a+free+iPhone" # same call, query form spam
Single Cloudflare Worker. No database, no framework, no build step beyond esbuild.
CLI
npm i -g classifier-dev classify bug,feature,praise < feedback.txt
cli/ is a separate npm package (classifier-dev, bin classify): one dependency-free Node file, tests against a mock API (npm test), semver with its own CHANGELOG, released with npm run release patch|minor|major which tags cli-v and lets .github/workflows/publish-cli.yml publish (needs an NPM_TOKEN repo secret). It talks to the API exactly like curl does.
Layout
src/index.ts routing, validation, tiers, LLM fallback chain, analytics src/query.ts the GET query form, read and written with nuqs; the URL an error suggests src/jev.ts TypeSafe's Jev: packs inputs into requests, reads probabilities src/limiter.ts Durable Object: per-IP rate limiting src/report.ts digest — Analytics Engine SQL -> Resend, flags model fallbacks src/alerts.ts every 15 minutes; emails only when something is wrong src/feedback.ts agent feedback, feedback.now protocol -> email src/privacy.ts keyed pseudonyms: nothing kept points back at a caller src/cost.ts per-request upstream spend, from the providers' own accounting src/docs.ts the site (GET / and GET /benchmark), plain text src/home.ts the same two documents rendered, for browsers only src/ui.ts the shared look: markdown in a terminal cli/ the classify command, published to npm as classifier-dev eval/ benchmarks; read eval/README.md before quoting a number finish-dns.sh one-shot DNS wiring, see below wrangler.example.toml the Worker config, minus the account-specific ids
The site
curl classifier.dev prints plain text, exactly as it always has. A browser sends Accept: text/html and gets the same document rendered — headings, bracketed links, copy buttons — from src/home.ts. Nothing is duplicated: the page is generated from DOCS and BENCHMARK at request time, so the text stays canonical and the two cannot drift. ?format=text opts out by hand, and both responses carry Vary: accept.
Agent feedback
Implements the feedback.now protocol (schema 1.1), so any agent that speaks it can report a problem without being told how:
GET /.well-known/agent-feedback.json what this host accepts GET /api/v1/policy categories, severities, limits POST /api/v1/feedback full structured report POST /api/v1/observations lighter signal POST /api/v1/feedback/{id}/attachments more evidence, later GET /api/v1/receipts/{id} did it land, and was it any good
Accepted submissions are emailed to REPORT_TO. Reports are kept in KV for 90 days. A repeat of the same domain + surface + category + title is stored and acknowledged as a duplicate but not emailed again, so one looping agent cannot empty itself into the inbox; the hourly budget is 100 per IP and the remainder comes back on every receipt.
quality_score is a deterministic function of how complete the report is — an agent can read the rule and write a better one next time. Nothing here calls the classifier or Analytics Engine: this is where reports arrive saying those are broken, so it must work when they do not.
Deploy
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
classifier.dev: common questions
- Is classifier.dev MCP server safe?
- Yes, by our scan: it is graded A (91/100). Read the classifier.dev safety report
- How do I install classifier.dev?
- It runs remotely at classifier.dev. Add it to Claude Code, Cursor, VS Code or Claude Desktop with the snippets above, or call it through the mcp.market gateway without installing anything.
- Does classifier.dev need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is classifier.dev maintained?
- The last commit was 37 days ago (2026-09-28). The latest release is v1.0.0.
- Is classifier.dev up?
- 100% of our last 28 checks got an answer. We check remote servers about four times a day.
- How does classifier.dev compare with other MCP servers?
- safety score 91/100 (higher than 85% of 48,255 servers); tools 5 (the typical server has 7); tools that change things 0% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.