mcpbeat Sign in

Trademark Screen MCP Server

by trademarkscreen Your server? Claim it
answering

Trademark Screen is answering right now. Last checked 12 min ago. It exposes 12 tools.

Screen a brand name against the USPTO federal register — sound, class, live status, risk verdict.

Uptime history 25 hours of history · worst hour 50%
25 hours agonow
93.4%
Uptime 24h
85 of 91 checks
12
Tools
read from the server
779 ms
Response time
average over 24h
open, no key
Access
streamable-http

What changed 1

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

7 Nov a tool changed version

Trademark Screen does not always answer

Over the last week it answered 93.5% of our checks. We check every 15 minutes, so you hear about the next outage within the hour — not from your users.

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 12 min ago.

run in your terminal
claude mcp add trademark-clearance-mcp --transport http https://trademarkscreen.com/mcp
Settings → Connectors → Add custom connector, then paste this address
https://trademarkscreen.com/mcp
~/.codex/config.toml
[mcp_servers.trademark-clearance-mcp]
url = "https://trademarkscreen.com/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "trademark-clearance-mcp": {
      "url": "https://trademarkscreen.com/mcp"
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "trademark-clearance-mcp": {
      "type": "http",
      "url": "https://trademarkscreen.com/mcp"
    }
  }
}

Available tools 12

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

watches
check_watches
Run a check for NEW filings RIGHT NOW (on all your watches, or one by id) — this actually queries the register, unlike list_watches which only shows what you have. Returns JSON with only the filings that appeared since the watch started / last check, scored by risk. Use this when you want fresh results immediately; the scheduled checker also runs daily at 09:00 on each watch's own cadence (daily by default). SCREEN ONLY — not clearance, not legal advice.
list_watches
List the watches you ALREADY have — a read-only view, it does NOT check for new filings. Returns JSON with each watch's mark, classes, threshold, schedule, created/last-checked dates, total alerts so far, and the most recent new hits. Use this to see what you are watching; use check_watches to actually run a check for new filings right now. Private to one email — pass the email and the 6-digit code from request_watch_code, or a session token from a previous verification. No email addresses are ever returned.
analyze
analyze_name
Analyze a brand name's strength WITHOUT checking the register — read-only, offline, deterministic (same name always gives the same result). Returns JSON with the distinctiveness spectrum (fanciful / arbitrary / suggestive / descriptive / generic), phonetic collisions to check, and a checklist (other-language meanings, common-law use, state registers). Optional goodsDescription (what you sell) sharpens the analysis: a descriptive word for those goods scores weaker than the same word for unrelated goods. No live data and no register results — pair it with screen_trademark, which checks the actual federal register. Use this to judge how protectable a name is; use screen_trademark to judge whether it conflicts.
compare
compare_marks
Compare two specific names side-by-side. Read-only, deterministic — the same two names always give the same scores. Returns JSON with visual similarity, Jaro-Winkler, phonetic (Soundex) similarity, an overall confusion score (0-1), and a risk level. Use to compare two names you already have in mind; use screen_trademark to discover conflicts for a name across the whole register (it also weighs classes and live/dead status, which this does not). Does not assess meaning, commercial impression, or class relatedness.
domains
check_domains
Check whether a brand name is free to register as a domain. Read-only. Returns JSON with one result per TLD (registered / available / unknown) — all TLDs are checked in parallel. Uses RDAP (the registry's own data, free, no key): 404 = not registered; 'unknown' = the TLD has no RDAP service. Covers .com/.io/.ai/.co/.app/.dev/.net/.org by default, or a custom TLD list. A free domain does NOT mean the trademark is clear, and a taken domain does not block the trademark — domains and trademarks are separate rights, so use screen_trademark for the trademark check.
global
check_global_marks
Check a brand name against EU + UK trademark registers via TMview (EUIPO-operated, offices EM + GB). Read-only. Returns JSON with the EU/UK hits scored the same way as screen_trademark, plus the classes used. Use AFTER screen_trademark when you also sell in the EU/UK; the US screen is unaffected if TMview is down. BEST-EFFORT: TMview has no published API and resets connections from plain HTTP clients — when it will not answer, this returns { checked: false, reason } with a manual link instead of failing. A clear EU/UK result is a signal, not clearance.
request
request_watch_code
Send a 6-digit verification code to an email address, for watch access. This sends an email (the only side effect) but creates nothing. Call it BEFORE list_watches, unwatch_mark, or attaching an email to a watch with watch_mark. The code expires in 10 minutes (5 tries); verifying it returns a 60-minute session token you can reuse for the other watch tools. A code is sent even if the email has no watches, so the response never reveals whether an address has watches.
screen
screen_trademark
Screen a brand name against the USPTO federal register. Read-only. Use this FIRST for any name. Returns JSON with a plain-English risk verdict (HIGH / MEDIUM-HIGH / MEDIUM / LOW), ranked conflicting marks (each with sound/appearance similarity, class relatedness, live/dead status, owner, serial), and the data-as-of date. Pass format "csv" to get the same results as a spreadsheet (one row per hit) instead of JSON. Limited to 100 screens/day on this server. SCREEN ONLY — not a clearance opinion, not legal advice. After this, use check_global_marks for EU/UK, check_domains for the domain, and watch_mark to monitor the name.
suggest
suggest_classes
Suggest the Nice classes (1-45) a goods/services description falls under, with reasons. Read-only, pure reasoning — no live data, no register lookup. Input goodsDescription is what you sell (e.g. 'music streaming app'); the more specific it is, the better the classes. Returns JSON with the suggested classes (each with its label), the classes assumed from your wording, and the reasons. Use before filing to pick classes (each class costs $350 to file), or to feed classes into screen_trademark / check_global_marks. Always verify against the USPTO ID Manual for the exact pre-approved description.
trademark
trademark_status
Authoritative status for ONE mark you already know, by serial number (sn12345678) or registration number (rn1234567). Read-only. Returns JSON with the mark's live/dead status, owner, classes, goods/services, and filing/registration dates. Uses TSDR if a free key is set, otherwise the public Trademark Search record. Use when you have a serial/registration number (e.g. from a screen_trademark hit) and want the authoritative record for that one mark — not for searching by name (use screen_trademark for that).
unwatch
unwatch_mark
Stop watching a mark. This DELETES the watch (a side effect — it is removed and will no longer be checked). Returns JSON { removed, ok: true }. If the watch has an email, you must prove you own it — pass the email and the 6-digit code from request_watch_code, or a session token. A watch with no email needs no verification.
watch
watch_mark
Start watching a mark for NEW confusingly similar filings. This CREATES a watch (a side effect — it stores the watch and sends a confirmation email with the stop link). Runs a baseline screen first — everything already on the register is marked seen, so you are only alerted on filings that appear AFTER the watch starts. Returns JSON with the watch id, its classes/threshold/schedule, and the baseline hits (for context). Check for new filings with check_watches, or let the scheduled checker run (daily by default, or weekly / every N days if you set a schedule). An email is required — it is the watch's owner, and the digest goes there (needs RESEND_API_KEY on the server; without it the watch still works and records hits, and alerts start once email is switched on). The email must be verified first — call request_watch_code, then pass the email and code (or the session token); without verification the watch is refused, so nobody can attach someone else's inbox. SCREEN ONLY — not clearance, not legal advice.

Endpoints

URLTransportStateLatencyChecked
https://trademarkscreen.com/mcp streamable-http answering 450 ms 12 min ago

Alternatives to Trademark Screen

same job, measured the same way
Markbase Trademark Search
by rad-soft

Search US trademarks, screen proposed names for conflicts, and look up USPTO registration records.

39 installs/wk local only
Situação Cadastral
by mcp-dir

Check the registration status of a Brazilian CPF against official sources (name, status, birthdate,

7 tools answering
Name Tools
by startupnamegenerator

Generate startup names with an available .com, checked live, then screen US and EU trademarks.

48 installs/wk answering
TrademarkMind
by trademarkmind

Free trademark checks: brand names and logos vs U.S., international and Canadian registers.

6 tools answering
Open Trademarks
by opentrademarks

Free trademark search across the US, EU and Israeli registers. A register search, not legal advice.

2 tools answering
AU Business Identity
by creatorhub121

Validate Australian ABNs and ACNs, and verify ABNs live against the Australian Business Register.

3 tools answering
UK Data: VAT number checks
by co-reliness

Check a UK or EU VAT number against official sources and get the registered name and address

2 tools answering
Trademark search
by foreverworks

Check whether a name is already a registered or pending trademark in the US or the EU.

509 installs/wk local only

Trademark Screen — questions

Answers built from our own checks of this server.

What can Trademark Screen do?
It exposes 12 tools, read directly from the server on our last check. Among them: analyze_name, check_domains, check_global_marks, check_watches, compare_marks, list_watches and 6 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 Trademark Screen working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 85 of 91 checks got a reply (93.4%), average response time 779 ms. The bar chart above shows every period we have measured.
How do I connect Trademark Screen?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Trademark Screen need an API key?
No. Trademark Screen completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 12 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Trademark Screen?
It answers our handshake in 779 ms on average, which is faster than 10% of all working MCP servers we measure. That is on the slow side — worth knowing if the tool sits inside an interactive loop. The comparison comes from our own checks across the whole registry, every 15 minutes.
Is Trademark Screen open source?
The code is open source: it is published under the MIT licence. The licence covers the code in the repository, not the hosted service at trademarkscreen.com, which runs on its operator's own terms.