TrademarkMind
Server Details
Free trademark checks: brand names and logos vs U.S., international and Canadian registers.
- Status
- Healthy
- Uptime
- 100.0% over 23 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 6 tools
check_brand is a superset of check_name and check_logo, which creates some overlap, but the descriptions explicitly resolve it by stating check_brand is 'the complete check, and the one to prefer.' search_international also overlaps with the international portion of check_name, though the browse-by-name vs. score-against-registers framing distinguishes them reasonably well.
Every tool follows a consistent snake_case verb_noun or verb_object pattern (check_brand, check_logo, check_name, get_result, search_international, suggest_classes). No style mixing or vague verbs.
Six tools is well-scoped for a trademark clearance service, with each tool covering a distinct capability (name, logo, full check, international search, class mapping, async retrieval). No redundant or filler tools.
The surface covers the core clearance lifecycle: class discovery, name and logo checks, a combined verdict, and international lookup, plus async result retrieval. Minor gaps exist around report retrieval beyond the returned link and any monitoring/history of past checks, but the essential workflows are covered.
Available Tools
6 toolscheck_brandFull availability checkAInspect
The complete check, and the one to prefer when someone asks whether a brand is free: the name against the U.S. and international trademark registers, the logo if they share one, and the domains and social handles, all resolved into a single verdict of clear, caution or conflict. Returns a link to the full report and to a PDF of it.
| Name | Required | Description | Default |
|---|---|---|---|
| mark | Yes | The brand name to check. | |
| image | No | The logo, if the user has one. Optional. | |
| classes | Yes | Nice class numbers, 1 to 45. Call suggest_classes first when the user has not named them. |
Output Schema
| Name | Required | Description |
|---|---|---|
| mark | No | |
| job_id | No | |
| status | No | complete, failed, or a running stage. |
| classes | No | |
| pdf_url | No | |
| reasons | No | |
| verdict | No | clear, caution, conflict, or pending. |
| sections | No | |
| results_url | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover the safety/scope profile (readOnlyHint=false, openWorldHint=true, destructiveHint=false). The description adds genuinely useful behavior: the full set of sources consulted, the three-way verdict taxonomy (clear/caution/conflict), and that a report plus PDF link is produced. It omits duration, cost, and any rate limits for what is evidently an expensive multi-register lookup.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, with the decisive routing advice front-loaded. The colon-delimited coverage list is dense but informative; each clause carries content, though the first sentence runs long.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description need not explain returns, and annotations plus the 100%-covered schema handle safety and parameters. An agent has everything needed to select and call it; only cost/latency expectations for a multi-register check are unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so classes, mark, and image are already documented, including the pointer to suggest_classes. The description reframes image as the user's logo and marks it optional, but adds no format or constraint detail beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb-plus-resource with full scope enumerated: name, logo, domains, social handles across U.S. and international registers, resolved into one verdict. It is clearly distinguished from the narrower siblings (check_name, check_logo) by being 'the complete check.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit routing rule: 'the one to prefer when someone asks whether a brand is free,' plus the conditional for the optional logo input. It stops short of naming check_name/check_logo as the narrow alternatives or saying when this heavier check is overkill.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_logoCheck a logoAInspect
Compares a logo image against the registered logos on the U.S. and international registers, three ways: the shape of the image, what the image depicts, and the wording inside it. Each match comes back with a similarity score, how it matched, and whether the registration is still live. Use this when someone shares artwork and asks whether it clashes with an existing mark. The search takes a minute or two, so this returns a job id to read back with get_result.
| Name | Required | Description | Default |
|---|---|---|---|
| image | Yes | The logo image file. | |
| brand_name | No | The wording in the logo, if known. Sharpens the text match. |
Output Schema
| Name | Required | Description |
|---|---|---|
| job_id | No | |
| status | No | complete, failed, or a running stage. |
| pdf_url | No | |
| match_count | No | |
| results_url | No | |
| closest_matches | No | |
| wording_read_from_logo | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint=false, openWorldHint=true, destructiveHint=false. The description adds genuinely useful behavioral context beyond that: the search takes a minute or two and is asynchronous, returning a job id to read back with get_result. It also discloses the shape of each match (similarity score, match type, live-registration status).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, no filler. The capability statement is front-loaded, followed by usage and then the async caveat, which is exactly the ordering an agent needs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, yet the description still usefully previews the return contents and, critically, explains the asynchronous job-id pattern so the agent knows to call get_result. Nothing needed to invoke or follow up on this tool is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already documented, including brand_name's role in sharpening the text match. The description implies the image's 'wording' feeds the third comparison mode but adds no syntax or format detail beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource: compares a logo image against U.S. and international registers via three named comparison modes (shape, depiction, wording). Clearly distinguishable from siblings check_brand and check_name, which operate on brand/word marks rather than artwork.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit triggering scenario ('when someone shares artwork and asks whether it clashes with an existing mark') and routes the agent to get_result for retrieval. It does not explicitly state when-not-to-use or name check_name/check_brand as the word-mark alternative, so routing to siblings is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_nameCheck a brand nameAInspect
Scores a proposed brand name against the U.S. federal trademark register and the international Madrid register in the chosen classes, and returns the closest conflicting marks with their similarity, their status, and whether they are still live. Use this when someone asks whether a name is taken, available, or safe to register.
| Name | Required | Description | Default |
|---|---|---|---|
| mark | Yes | The brand name to check. | |
| classes | Yes | Nice class numbers, 1 to 45. Call suggest_classes first when the user has not named them. |
Output Schema
| Name | Required | Description |
|---|---|---|
| mark | No | |
| job_id | No | |
| status | No | complete, failed, or a running stage. |
| classes | No | |
| pdf_url | No | |
| risk_band | No | minimal, low, medium or high. |
| risk_score | No | 0 to 100, higher is riskier. |
| results_url | No | |
| closest_marks | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag openWorldHint=true and destructiveHint=false, so safety/profile is partly covered. The description adds genuine behavioral context beyond that: which external registers are queried and that the result includes closest conflicting marks with similarity, status, and liveness. It does not discuss rate limits or latency, hence not a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero filler. The capability statement is front-loaded and the usage trigger follows, which is exactly the order an agent benefits from.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return values need not be spelled out, and the description still summarizes them (conflicting marks, similarity, status, liveness). With 100% schema coverage, annotations for the open-world read profile, and clear usage trigger, nothing material is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters including the suggest_classes dependency and the 1-45 Nice class range. The description only alludes to 'the chosen classes' and adds no syntax or format meaning beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (scores) and resource (a proposed brand name) and scopes it to two named registers (U.S. federal trademark and international Madrid) within selected classes. This clearly differentiates it from siblings like check_brand, check_logo, and search_international.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a concrete trigger: 'Use this when someone asks whether a name is taken, available, or safe to register.' That is clear usage context, but it names no alternative tools or when-not-to-use conditions, and the dependency on suggest_classes appears only in the schema, not the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_resultRead a check that was still runningARead-onlyInspect
Returns the current state of a check started earlier, using the job id it gave you. Call it again after a short wait while the status is still running.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| job_id | No | |
| status | No | complete, failed, or a running stage. |
| pdf_url | No | |
| results_url | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds genuine value by disclosing that this is a polling endpoint to be re-invoked while status is running, but it omits status values, expected wait/backoff, and whether results are ephemeral.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences, front-loaded with what the tool returns and followed by the polling instruction. No filler, and every clause carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return-value detail is not the description's burden. Given a single-parameter polling tool with readOnly annotations, the description covers purpose, input provenance, and re-invocation behavior adequately.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the undocumented job_id. It does add provenance meaning ("the job id it gave you"), clarifying where the value comes from, but gives no format, length, or validity guidance beyond that, leaving a gap at 0% coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ("Returns the current state of a check started earlier") and identifies the input source ("the job id it gave you"). This distinguishes it from the check_* siblings, which presumably start checks, but it never names those siblings explicitly, so the contrast is inferred rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives real usage context: call it with the job id produced by an earlier check, and re-call it "after a short wait while the status is still running," which conveys polling semantics. It stops short of naming the specific sibling tools that create job ids or stating any exclusion, so it falls just below the explicit when/when-not bar.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_internationalSearch the international registerARead-onlyInspect
Searches WIPO Madrid System international registrations by name, showing for each one the countries it was designated in and the countries that refused it. Use this for questions about protecting a name abroad.
| Name | Required | Description | Default |
|---|---|---|---|
| mark | Yes | ||
| classes | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | No | |
| results | No | |
| full_search | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=false, so the safety profile is fully covered. The description's added value is stating that results show designated and refusing countries, but a dedicated output schema exists, so this return-content detail is largely duplicative and no auth, rate-limit, or pagination context is provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero filler, and the core capability is front-loaded ahead of the usage hint. Every clause carries information an agent can act on.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Purpose, usage context, and result content are covered, and an output schema plus safety annotations reduce what the description must carry. However, with 0% schema coverage and no explanation of `classes`, an agent cannot tell how to narrow the search, which matters for a search tool with a 100-char name field.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must explain both parameters. "By name" gives partial meaning to `mark`, but the `classes` parameter (Nice classes 1-45, max 6, presumably for limiting hits) is never mentioned, leaving the filtering syntax entirely to inference.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific verb and resource ("Searches WIPO Madrid System international registrations by name") and states what each hit contains. It implicitly separates itself from name/brand lookups via "international" and "abroad," though it never names the sibling tools it competes with.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear when-to-use condition: "Use this for questions about protecting a name abroad." It supplies positive context but no exclusions or explicit routing against check_name, check_brand, or suggest_classes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
suggest_classesFind the right classesARead-onlyInspect
Maps a plain description of what a business sells onto the Nice classes a trademark filing would need. Call this before check_name whenever the user has not given class numbers.
| Name | Required | Description | Default |
|---|---|---|---|
| description | Yes | What the business sells, in plain words. |
Output Schema
| Name | Required | Description |
|---|---|---|
| suggested_classes | No | |
| all_lines_of_business | No | |
| matched_lines_of_business | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=false and destructiveHint=false, so the safety profile is covered. The description adds the sequencing constraint relative to check_name but says nothing about how it behaves on ambiguous or overly broad input, so it clears the reduced bar without exceeding it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero filler, and the mapping purpose is front-loaded ahead of the ordering instruction. Every clause carries actionable information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-input, read-only lookup tool with an output schema, the description covers purpose and workflow placement; return values are handled by the output schema and safety by the annotations, so nothing an agent needs is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter, and schema description coverage is 100% ('What the business sells, in plain words.'). The description restates the same idea without adding format, length or example guidance beyond what the schema already provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (maps) plus both inputs and outputs: a plain-language business description onto Nice classes for a trademark filing. This is distinct from sibling check_name, and an agent can distinguish it purely from the description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit precondition and sibling ordering: 'Call this before check_name whenever the user has not given class numbers.' That is a concrete when-to-use rule tied to a named alternative, leaving little to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
6 tool updates
- First observed
check_brand - First observed
check_logo - First observed
check_name - First observed
get_result - First observed
search_international - First observed
suggest_classes
Related MCP Connectors
Search and screen US and Canadian federal trademarks; records, deadlines, ID Manual.
Free brand-name Clearance Checks from live registries; connect a plan (API key) for full checks.
Trademark search, monitoring and conflict research across 30+ registers, with provenance.
Checks a name against French trademarks in force, by spelling and by sound. Free, no account.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables read-only screening of brand names against US federal trademark records, identifying identical and similar marks across selected classes.9 npmMIT
- AlicenseNot gradedqualityDmaintenanceGenerates startup names with live .com availability checks and screens them against US and EU trademark registers.51 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables cross-border e-commerce sellers to run pre-listing clearance checks on brand names, listing copy, and logos against tens of millions of registered marks across dozens of jurisdictions, and to see whether an owner is a frequent TRO or Schedule A enforcer. It works as a hosted remote server inside any MCP-compatible AI assistant, with coverage and data-freshness lookups included.MIT
- AlicenseAqualityBmaintenanceEnables trademark clearance and research across EU and Benelux registers, plus company, group-structure, and EU VAT lookups, all through free public sources without API keys.14MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.