GleanMark Trademark Search
REMOTE · GLEANMARK.COM · SCANNED AUG 3
Search 13.7M+ USPTO trademarks. Clearance, phonetic matching, TTAB stats, analytics.
Available components
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. How we score →
Endpoint Security74
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability78
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 13036 tokens (~176/item across 74 items; 60 tools + 14 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage97
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 89% of tool parameters carry a description.Partial
- Structured output schemas are declared (30% of tools); any adoption earns full credit.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
- Supports UI / widget rendering.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · gleanmark.com
claude mcp add --transport http com-gleanmark-trademark-search https://gleanmark.com/mcp
[mcp_servers.com-gleanmark-trademark-search] url = "https://gleanmark.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"com-gleanmark-trademark-search": {
"type": "remote",
"url": "https://gleanmark.com/mcp",
"enabled": true
}
}
} openclaw mcp add com-gleanmark-trademark-search --url https://gleanmark.com/mcp --transport streamable-http
mcp_servers:
com-gleanmark-trademark-search:
url: "https://gleanmark.com/mcp" {
"mcpServers": {
"com-gleanmark-trademark-search": {
"type": "http",
"url": "https://gleanmark.com/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Aug 26 +2
- The server rewrote its instructions, which are the text every model session reads security
- Schema quality: good → excellent functional
- MCP protocol: Implements a current MCP spec version (2026-07-28). functional
- MCP protocol version: 2025-11-25 → 2026-07-28 functional
- New tool “get_owner_related_parties” functional
- 2 Aug 26 +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.
- 31 Jul 26 +3
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.
- 28 Jul 26 +4
- Authorization: unverified → partial ▲ security
- Tool “get_correspondent_marks” rewrote its description, which is the text the model reads security
- Tool “get_correspondent_specialization” rewrote its description, which is the text the model reads security
- Tool “get_firm_correspondent_tasks” rewrote its description, which is the text the model reads security
- Tool “get_firm_top_correspondents” rewrote its description, which is the text the model reads security
- Tool “get_mark_owner_landscape” rewrote its description, which is the text the model reads security
- Tool “get_top_filers” rewrote its description, which is the text the model reads security
- Tool “search_design_codes” rewrote its description, which is the text the model reads security
- Tool “count_trademarks_by_attributes” rewrote its description, which is the text the model reads security
- “search_design_codes” reworded the description of “mode” cosmetic
- Tool “get_class_relationships” changed its title: Get Related Nice Classes cosmetic
- Tool “get_cohort_event_intervals” changed its title: Cohort Event Intervals cosmetic
- Tool “get_correspondent_marks” changed its title: Marks for a Correspondent cosmetic
- Tool “get_correspondent_specialization” changed its title: Correspondent Specialization cosmetic
- Tool “get_deadline_satisfaction_mapping” changed its title: Deadline Satisfaction Reference cosmetic
- Tool “get_event_code_reference” changed its title: USPTO Event Code Reference cosmetic
- Tool “get_event_status_mapping” changed its title: USPTO Event Status Reference cosmetic
- Tool “get_fame_profile” changed its title: Fame Profile for a Mark cosmetic
- Tool “get_firm_correspondent_tasks” changed its title: Firm Correspondent Tasks cosmetic
- Tool “get_firm_deadlines” changed its title: Firm Deadlines cosmetic
- Tool “get_firm_oa_outcomes” changed its title: Firm Office Action Outcomes cosmetic
- Tool “get_firm_top_correspondents” changed its title: Top Correspondents at a Firm cosmetic
- Tool “get_latest_office_action” changed its title: Latest Office Action for a Mark cosmetic
- Tool “get_mark_ai_summary” changed its title: AI Summary of a Mark cosmetic
- Tool “get_mark_deadlines” changed its title: Deadlines for a Mark cosmetic
- Tool “get_mark_international_profile” changed its title: International Filings for a Mark cosmetic
- Tool “get_mark_owner_landscape” changed its title: Owner Landscape for a Mark cosmetic
- Tool “get_mark_prosecution_summary” changed its title: Prosecution Summary for a Mark cosmetic
- Tool “get_nice_classes” changed its title: Look Up Nice Classes cosmetic
- Tool “get_owner_ai_summary” changed its title: AI Summary of an Owner cosmetic
- Tool “get_owner_deadlines” changed its title: Deadlines for an Owner cosmetic
- Tool “get_owner_filing_trends” changed its title: Owner Filing Trends cosmetic
- Tool “get_owner_goods_keywords” changed its title: Owner Goods & Services Keywords cosmetic
- Tool “get_owner_ttab_enforcement” changed its title: TTAB Enforcement History for an Owner cosmetic
- Tool “get_owner_ttab_stats” changed its title: TTAB Statistics for an Owner cosmetic
- Tool “get_prosecution_document” changed its title: Get a Prosecution Document cosmetic
- Tool “get_prosecution_timeline” changed its title: Prosecution Timeline cosmetic
- Tool “get_reference_lookup” changed its title: Reference Data Lookup cosmetic
- Tool “get_similar_marks” changed its title: Find Similar Marks cosmetic
- Tool “get_top_filers” changed its title: Top Trademark Filers cosmetic
- Tool “get_trademark_analytics” changed its title: Trademark Analytics cosmetic
- Tool “get_ttab_document” changed its title: Get a TTAB Document cosmetic
- Tool “get_ttab_proceeding_details” changed its title: TTAB Proceeding Details cosmetic
- Tool “is_mark_famous” changed its title: Check Whether a Mark Is Famous cosmetic
- Tool “list_prosecution_documents” changed its title: List Prosecution Documents cosmetic
- Tool “lookup_trademark” changed its title: Look Up Trademark by Serial Number cosmetic
- Tool “phonetic_search” changed its title: Search Marks That Sound Alike cosmetic
- Tool “recommend_nice_classes” changed its title: Recommend Nice Classes cosmetic
- Tool “research_office_action” changed its title: Research an Office Action cosmetic
- Tool “resolve_trademark_subject” changed its title: Resolve an Ambiguous Name cosmetic
- Tool “run_dupont_analysis” changed its title: Run DuPont Likelihood-of-Confusion Analysis cosmetic
- Tool “run_knockout_search” changed its title: Run Knockout Search cosmetic
- Tool “run_safe_analytics” changed its title: Run Safe Analytics Query cosmetic
- Tool “search_attorneys” changed its title: Search Trademark Attorneys cosmetic
- Tool “search_by_owner” changed its title: Search Marks by Owner cosmetic
- Tool “search_claimed_colors” changed its title: Search Marks by Claimed Color cosmetic
- Tool “search_design_codes” changed its title: Search USPTO Design Codes cosmetic
- Tool “search_mark_statements” changed its title: Search Mark Statements cosmetic
- Tool “search_trademarks” changed its title: Search Trademarks cosmetic
- Tool “search_ttab_proceedings” changed its title: Search TTAB Proceedings cosmetic
- Tool “suggest_gs_descriptions” changed its title: Suggest Goods & Services Descriptions cosmetic
- Tool “validate_gs_description” changed its title: Validate a Goods & Services Description cosmetic
- Tool “web_research” changed its title: Web Research cosmetic
- Tool “analyze_prosecution_history” changed its title: Analyze Prosecution History cosmetic
- Tool “analyze_ttab_proceeding” changed its title: Analyze a TTAB Proceeding cosmetic
- Tool “check_brand_availability” changed its title: Check Brand Availability cosmetic
- Tool “check_domain_availability” changed its title: Check Domain Availability cosmetic
- Tool “compare_marks” changed its title: Compare Two Marks for Confusion cosmetic
- Tool “count_trademarks_by_attributes” changed its title: Count Trademarks by Attributes cosmetic
- 27 Jul 26 +1
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Jul 26 62
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Probed https://gleanmark.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=gleanmark.com | CN=YR2,O=Let's Encrypt,C=US | 20 Jul 2026 | 18 Oct 2026 | RSA 2048 | SHA256-RSA | 5e8af32ff0ff1664f08f58964865949b492 |
| SANs: gleanmark.com | ||||||
| CN=YR2,O=Let's Encrypt,C=US (CA) | CN=Root YR,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | RSA 2048 | SHA256-RSA | 4ebd24947e24d394802d84a52fd5b319 |
| CN=Root YR,O=ISRG,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | RSA 4096 | SHA256-RSA | f24b6d17f9d9ad7cb1c9fea78782699f |
DNSSEC insecure
Validation of gleanmark.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| gleanmark.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://gleanmark.com/mcp | Verified | 200 | |
| http (plaintext) | http://gleanmark.com/mcp | HTTPS enforced | 301 | https://gleanmark.com/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
analyze_prosecution_history Analyze Prosecution History ~99
Analyze the full prosecution history of a trademark — narrative timeline of office actions, responses, examiner decisions, and current status, with examiner-behavior patterns. For authenticated users this launches asynchronously (usually done in under a minute; longer for large file histories) and returns a processing handle — then call get_prosecution_history_status to fetch the completed result. Tell the user it is running.
| Name | Type | Req | Description |
|---|---|---|---|
| serial_number | string | yes | USPTO serial number |
No output schema declared.
No examples provided.
analyze_ttab_proceeding Analyze a TTAB Proceeding ~136
Analyze a TTAB (Trademark Trial and Appeal Board) proceeding in depth — fetches and analyzes proceeding documents, identifies key arguments, and returns a structured summary with timeline, party positions, and strategic assessment. For authenticated full-mode runs this launches asynchronously (typically 1-2 minutes) and returns a processing handle — then call get_ttab_proceeding_analysis_status to fetch the completed result. Tell the user it is running.
| Name | Type | Req | Description |
|---|---|---|---|
| proceeding_number | string | yes | TTAB proceeding number (e.g., "91284756") |
| quick_mode | boolean | — | Quick mode skips lower-priority documents for faster results |
No output schema declared.
No examples provided.
check_brand_availability Check Brand Availability ~97
Quick brand availability check — combines domain availability with a trademark conflict signal. Returns a recommendation tier (avoid, probably avoid, promising, or no conflicts found). Good first step before a full clearance search.
| Name | Type | Req | Description |
|---|---|---|---|
| brand_name | string | yes | Brand name to check |
| business_description | string | — | Brief description of the business |
| industries | array | — | Industry categories |
| nice_classes | array | — | Nice classes to check against |
No output schema declared.
No examples provided.
check_domain_availability Check Domain Availability ~96
Check domain availability for a brand name. Returns status (available, parked, commercially used, or taken) for each TLD, plus .com variations (e.g., getbrand.com, brandhq.com).
| Name | Type | Req | Description |
|---|---|---|---|
| brand_name | string | yes | Brand name to check (e.g., "Moonlight Coffee") |
| tlds | array | — | TLDs to check. Defaults to com/ai/app/io/co when omitted. |
No output schema declared.
No examples provided.
compare_marks Compare Two Marks for Confusion ~65
Compare two trademarks for likelihood of confusion using DuPont-style analysis. Returns similarity scores and risk assessment.
| Name | Type | Req | Description |
|---|---|---|---|
| mark_a | string | yes | First trademark to compare |
| mark_b | string | yes | Second trademark to compare |
| nice_classes | array | — | Nice classes for overlap analysis |
| Name | Type | Req | Description |
|---|---|---|---|
| dupont_factors_summary | array | yes | — |
| mark_a | string | yes | — |
| mark_b | string | yes | — |
| nice_class_overlap | boolean | yes | — |
| open_in_gleanmark | string | — | — |
| risk_explanation | string | yes | — |
| risk_level | string | yes | — |
| similarity | object | yes | — |
No examples provided.
count_trademarks_by_attributes Count Trademarks by Attributes ~223
Count and preview USPTO marks by record attributes rather than owner identity, with mark-type, standard-character, and Nice-class breakdowns plus metadata coverage. Use this for drawing type, standard-character, Nice-class, status, and cross-attribute counts. It can intersect claimed-color criteria with those attributes; color-only counts, rankings, lists, and vocabulary are outside its scope.
| Name | Type | Req | Description |
|---|---|---|---|
| claimed_color_families | array | — | Normalized color families. Burgundy and maroon, for example, count as red. |
| claimed_color_shades | array | — | Exact canonical shades from the USPTO color claim. |
| class_match_mode | string | — | — |
| color_match_mode | string | — | all permits additional claimed colors; only requires exactly the selected colors; only_bw also permits black/white. |
| limit | integer | — | — |
| mark_types | array | — | — |
| nice_classes | array | — | — |
| standard_characters | boolean | — | — |
| status_filter | string | — | Use registered for currently live registrations; live also includes pending applications. |
No output schema declared.
No examples provided.
get_class_relationships Get Related Nice Classes ~92
Look up coordinated Nice classes or related Nice classes for a given class number.
| Name | Type | Req | Description |
|---|---|---|---|
| class_number | integer | yes | Nice class number to inspect. |
| include_legacy | boolean | — | Include legacy US classes A, B, and 200 when returning coordinated classes. |
| limit | integer | — | Maximum rows to return. |
| relationship_type | string | — | Whether to return USPTO coordinated classes or curated related classes. |
No output schema declared.
No examples provided.
get_cohort_event_intervals Cohort Event Intervals ~384
Aggregate event-to-event pendency across a COHORT of marks — e.g. "average days from office action to publication for marks published in Q2 2026". Pick the cohort by an anchor event (preset: publication, notice_of_publication, registration, notice_of_allowance, abandonment, first_office_action — or raw event codes, trailing * = prefix) within a date window (max 366 days), and an interval start/end event. Returns avg/median/percentiles in days, how many cohort marks never had the start event, and example marks. Samples up to max_sample marks from the start of the window and says so when truncated. Use get_event_code_reference first if you need non-preset event codes.
| Name | Type | Req | Description |
|---|---|---|---|
| cohort_date_from | string | yes | Cohort window start (YYYY-MM-DD). Required. |
| cohort_date_to | string | yes | Cohort window end (YYYY-MM-DD). Required. Window max 366 days. |
| cohort_event | string | — | Preset anchor event defining cohort membership (e.g. publication = PUBO). |
| cohort_event_codes | array | — | Alternative to cohort_event: raw USPTO event codes; trailing * matches a prefix (e.g. "NPUB*"). |
| end_event | string | — | Interval end event (first occurrence on/after the start event). Defaults to the cohort event itself. |
| end_event_codes | array | — | Alternative to end_event: raw event codes (trailing * = prefix). |
| max_sample | integer | — | Max cohort marks to measure (default 1000, max 2000). |
| start_event | string | — | Interval start event (first occurrence on/before the cohort event). Defaults to first_office_action. |
| start_event_codes | array | — | Alternative to start_event: raw event codes (trailing * = prefix). |
No output schema declared.
No examples provided.
get_correspondent_marks Marks for a Correspondent ~195
Get all trademarks handled by a specific attorney/correspondent, with prosecution event counts and office action flags. Returns marks sorted by prosecution history length. Use this for attorney-specific mark queries.
| Name | Type | Req | Description |
|---|---|---|---|
| canonical_correspondent_id | string | — | UUID of the correspondent (from search_attorneys result). Use this if you already have the ID. |
| correspondent_id | string | — | Alias for canonical_correspondent_id. |
| correspondent_name | string | — | Alias for search_term. Preferred when the caller already knows this is a correspondent name. |
| limit | integer | — | Maximum marks to return. |
| recent_window_days | integer | — | How many days back to count recent office actions. Use 90 for "last 3 months". |
| search_term | string | — | Attorney name to search for (e.g., "Todd Schneider"). Will find the best match. |
| status_filter | string | — | Filter marks by status. |
No output schema declared.
No examples provided.
get_correspondent_specialization Correspondent Specialization ~125
Summarize what a named correspondent specializes in, including top clients, top Nice classes, and prosecution-versus-TTAB profile. Use this when the user asks what a specific correspondent or attorney specializes in.
| Name | Type | Req | Description |
|---|---|---|---|
| correspondent_name | string | — | Alias for search_term. |
| search_term | string | — | Correspondent or attorney name to resolve. |
| top_class_limit | integer | — | Maximum top Nice classes to return. |
| top_client_limit | integer | — | Maximum top clients to return. |
| url_key | string | — | Known correspondent url_key, if already resolved. |
| Name | Type | Req | Description |
|---|---|---|---|
| correspondent_detail_url | — | — | — |
| correspondent_name | string | yes | — |
| firm_detail_url | — | — | — |
| firm_name | — | — | — |
| found | boolean | yes | — |
| headline | string | yes | — |
| practice_profile | object | yes | — |
| primary_email | — | — | — |
| prosecution_profile | object | yes | — |
| summary | string | yes | — |
| ttab_profile | object | yes | — |
| url_key | string | yes | — |
No examples provided.
get_deadline_satisfaction_mapping Deadline Satisfaction Reference ~70
Check whether a specific USPTO event code satisfies a specific deadline type such as office action response, opposition period, Section 8, or Section 15.
| Name | Type | Req | Description |
|---|---|---|---|
| deadline_type | string | yes | Deadline family to test against. |
| event_code | string | yes | USPTO event code to inspect. |
No output schema declared.
No examples provided.
get_event_code_reference USPTO Event Code Reference ~119
Look up USPTO event codes used in trademark prosecution. Search by exact code, code prefix, or keyword in the event description. Returns the code, human-readable description, and category.
| Name | Type | Req | Description |
|---|---|---|---|
| code | string | — | Exact USPTO event code or prefix (e.g., "OAIN" for exact, "OA" for prefix match). |
| limit | integer | — | Maximum number of results to return (default 20). |
| search | string | — | Keyword to search in event descriptions (e.g., "office action", "abandoned"). |
No output schema declared.
No examples provided.
get_event_status_mapping USPTO Event Status Reference ~54
Look up which USPTO status code and status definition most commonly follow a specific prosecution event code.
| Name | Type | Req | Description |
|---|---|---|---|
| event_code | string | yes | USPTO event code to inspect. |
| limit | integer | — | Maximum mappings to return. |
No output schema declared.
No examples provided.
get_fame_profile Fame Profile for a Mark ~158
Get the full fame profile for a brand (by mark wording or brand stem): fame tier (broad/dilution-tier vs market-specific), the fame "path" it cleared (concentrated dominant family vs large multi-class portfolio), its famous class footprint, corporate-family portfolio size and class breadth, brand-stem crowding, and TTAB enforcement history. Use to explain WHY a mark is (or is not) famous, or to profile a senior mark before a §2(d) / opposition / dilution strategy. Circumstantial signal, not statutory fame proof.
| Name | Type | Req | Description |
|---|---|---|---|
| mark_or_stem | string | yes | A mark ("THE DISNEY STORE") or a bare brand stem ("disney"). Both resolve to the same family. |
No output schema declared.
No examples provided.
get_firm_correspondent_tasks Firm Correspondent Tasks ~186
Resolve a trademark law firm and return what its lawyers should focus on: overdue/next-window action-required deadlines plus recent Office Actions from both case-file events and prosecution documents, including ROA-filed and §2(d) indicators. Use this for questions like "what correspondent tasks should this firm focus on over the next 30 days?" or "what recent OAs does this law firm have?".
| Name | Type | Req | Description |
|---|---|---|---|
| deadline_days | integer | — | How many days ahead to include action-required deadlines. Overdue items still in grace are also included. |
| firm_name | string | yes | Law firm name or normalized key, e.g. "Imani Law" or "imanilawllp". |
| limit | integer | — | Maximum deadlines/recent OAs/task previews to return. |
| recent_oa_days | integer | — | How many days back to include recent Office Actions. |
No output schema declared.
No examples provided.
get_firm_deadlines Firm Deadlines ~191
Get public, system-generated trademark deadlines across marks handled by a specific law firm. Uses public firm resolution and prosecution mappings only. Does not expose any workspace, client, reminder, or user-created deadline data.
| Name | Type | Req | Description |
|---|---|---|---|
| days_ahead | integer | — | How far forward to look. Defaults to 365 days. |
| days_back | integer | — | How far back to include overdue or recently resolved deadlines. Defaults to 60 days. |
| firm_name | string | yes | Law firm name to resolve and analyze. |
| include_informational_windows | boolean | — | Include informational review windows such as publication opposition windows. Defaults to false. |
| include_opposition_period | boolean | — | Deprecated alias for include_informational_windows. Defaults to false. |
| limit | integer | — | Maximum number of deadline rows to return. Defaults to 50. |
| status_filter | string | — | Deadline status filter. Defaults to active. |
| Name | Type | Req | Description |
|---|---|---|---|
| counts_by_status | object | yes | — |
| counts_by_type | object | yes | — |
| days_ahead | integer | yes | — |
| days_back | integer | yes | — |
| deadlines | array | yes | — |
| firm_detail_url | — | — | — |
| firm_name | string | yes | — |
| include_informational_windows | boolean | yes | — |
| include_opposition_period | boolean | yes | — |
| is_partial | boolean | yes | — |
| matched_mark_count | integer | yes | — |
| message | — | — | — |
| open_in_gleanmark | — | — | — |
| returned | integer | yes | — |
| status_filter | string | yes | — |
| title | string | yes | — |
| total | integer | yes | — |
No examples provided.
get_firm_oa_outcomes Firm Office Action Outcomes ~112
Resolve a trademark law firm and compute mark-level Office Action outcome rates: how many firm-handled marks registered after receiving an OA, raw and excluding pending matters. Use this for questions like "what percentage registered after an OA?" or "OA success rate for this firm".
| Name | Type | Req | Description |
|---|---|---|---|
| firm_name | string | yes | Law firm name or normalized key, e.g. "Imani Law" or "imanilawllp". |
| limit | integer | — | Maximum examples to return in each outcome bucket. |
No output schema declared.
No examples provided.
get_firm_top_correspondents Top Correspondents at a Firm ~96
Get the leading correspondents or attorneys inside one named law firm, ranked by filing volume with prosecution and TTAB activity counts. Use this when the user asks for top correspondents at a specific firm, such as "Who are the top correspondents at Fross Zelnick?"
| Name | Type | Req | Description |
|---|---|---|---|
| firm_name | string | yes | Law firm name or normalized firm key. |
| limit | integer | — | Maximum correspondents to return. |
| Name | Type | Req | Description |
|---|---|---|---|
| firm_detail_url | — | — | — |
| firm_name | string | yes | — |
| headline | string | yes | — |
| leader_detail_url | — | — | — |
| leader_name | — | — | — |
| leader_total_filings | integer | yes | — |
| presentation | object | yes | — |
| returned | integer | yes | — |
| summary | string | yes | — |
| total_correspondents | integer | yes | — |
No examples provided.
get_latest_office_action Latest Office Action for a Mark ~95
Get the latest office action for a trademark serial number, plus the latest recorded response if one exists, and the VERIFIED refusal grounds (with cited registration numbers) parsed from the OA text. Use refusal_grounds as the authoritative answer to "what is this OA about / what ground is the refusal" — never infer the basis from the document title or general knowledge.
| Name | Type | Req | Description |
|---|---|---|---|
| serial_number | string | yes | USPTO serial number |
No output schema declared.
No examples provided.
get_mark_ai_summary AI Summary of a Mark ~55
Get an AI-generated deep-dive summary of a specific trademark. Covers mark details, goods/services, status, owner, prosecution context, and any active legal proceedings.
| Name | Type | Req | Description |
|---|---|---|---|
| serial_number | string | yes | USPTO serial number |
No output schema declared.
No examples provided.
get_mark_deadlines Deadlines for a Mark ~224
Get public, system-generated trademark deadlines for a specific mark. Accepts a serial number directly or resolves a mark name to a specific serial first. Does not expose any workspace, client, reminder, or user-created deadline data.
| Name | Type | Req | Description |
|---|---|---|---|
| days_ahead | integer | — | How far forward to look. Defaults to 365 days. |
| days_back | integer | — | How far back to include overdue or recently resolved deadlines. Defaults to 60 days. |
| include_informational_windows | boolean | — | Include informational review windows such as publication opposition windows. Defaults to false. |
| include_opposition_period | boolean | — | Deprecated alias for include_informational_windows. Defaults to false. |
| limit | integer | — | Maximum number of deadline rows to return. Defaults to 50. |
| serial_number | string | — | USPTO serial number for the specific mark. |
| status_filter | string | — | Deadline status filter. Defaults to active. |
| subject_name | string | — | Specific mark text or serial-number-like query. Use when the user names the mark instead of giving a serial. |
| Name | Type | Req | Description |
|---|---|---|---|
| counts_by_status | object | yes | — |
| counts_by_type | object | yes | — |
| days_ahead | integer | yes | — |
| days_back | integer | yes | — |
| deadlines | array | yes | — |
| include_informational_windows | boolean | yes | — |
| include_opposition_period | boolean | yes | — |
| is_partial | boolean | yes | — |
| mark_name | — | — | — |
| message | — | — | — |
| open_in_gleanmark | — | — | — |
| owner_name | — | — | — |
| returned | integer | yes | — |
| serial_number | — | — | — |
| status_filter | string | yes | — |
| title | string | yes | — |
| total | integer | yes | — |
No examples provided.
get_mark_international_profile International Filings for a Mark ~153
Get the international / foreign footprint of a U.S. trademark by serial number: its Madrid Protocol international registration (IR number, date, status, renewal), whether it was filed as a 66(a) Madrid extension, Madrid maintenance (§8/§15, renewal), and the foreign applications/registrations it claims as priority or basis (country, registration number, dates). Use this for ANY question about a mark's foreign, international, Madrid Protocol, WIPO, or EUIPO registrations. Data comes from USPTO records, so it is only available for marks with a USPTO record — it does not query WIPO/EUIPO live.
| Name | Type | Req | Description |
|---|---|---|---|
| serial_number | string | yes | USPTO serial number |
No output schema declared.
No examples provided.
get_mark_owner_landscape Owner Landscape for a Mark ~163
Show which owners hold marks matching a shared trademark term and summarize what else those owners have in their broader portfolios. Use this for crowded owner-landscape questions like "Which companies own a trademark for COMET?" or "Who owns trademarks for GLEAN?" Returns the matching owners ranked by footprint, with each owner's wider portfolio context.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | Maximum number of owners to return. |
| mark_text | string | yes | Trademark term to analyze across owners, such as COMET or GLOW. |
| match_mode | string | — | How to match the mark text: contains, exact, or starts_with. |
| nice_classes | array | — | Optional Nice classes to narrow the landscape. |
| status_filter | string | — | Optional status filter. Default is live. |
| Name | Type | Req | Description |
|---|---|---|---|
| headline | string | yes | — |
| leader_detail_url | — | — | — |
| leader_matching_mark_count | integer | yes | — |
| leader_name | — | — | — |
| leader_total_portfolio_mark_count | integer | yes | — |
| mark_text | string | yes | — |
| match_mode | string | yes | — |
| nice_classes | array | yes | — |
| returned | integer | yes | — |
| status_filter | string | yes | — |
| summary | string | yes | — |
| title | string | yes | — |
| total_matching_live_marks | integer | yes | — |
| total_matching_marks | integer | yes | — |
| total_matching_owners | integer | yes | — |
No examples provided.
get_mark_prosecution_summary Prosecution Summary for a Mark ~56
Get a compact prosecution summary for a trademark serial number. Returns current status, document counts, latest office action/response dates, milestones, and the latest key event.
| Name | Type | Req | Description |
|---|---|---|---|
| serial_number | string | yes | USPTO serial number |
No output schema declared.
No examples provided.
get_nice_classes Look Up Nice Classes ~77
Get information about Nice Classification classes used for trademark registration. Lookup specific class numbers or search for classes by keyword.
| Name | Type | Req | Description |
|---|---|---|---|
| class_numbers | array | — | Specific class numbers to look up (1-45) |
| search_term | string | — | Search term to find relevant classes (e.g., "software", "clothing", "restaurant") |
| Name | Type | Req | Description |
|---|---|---|---|
| classes | array | yes | — |
| open_in_gleanmark | string | — | — |
No examples provided.
get_owner_ai_summary AI Summary of an Owner ~91
Get an AI-generated strategic analysis of a trademark owner. Covers brand protection philosophy, litigation posture, portfolio evolution, class distribution, and likely future behavior. Results are cached for 30 days.
| Name | Type | Req | Description |
|---|---|---|---|
| normalized_owner | string | yes | Normalized owner name (lowercase, no punctuation, e.g., "appleinc", "homeboxofficeinc"). Use search_by_owner first to find the correct normalized name. |
No output schema declared.
No examples provided.
get_owner_deadlines Deadlines for an Owner ~186
Get public, system-generated trademark deadlines across a specific owner’s marks. Uses public USPTO owner resolution only. Does not expose any workspace, client, reminder, or user-created deadline data.
| Name | Type | Req | Description |
|---|---|---|---|
| days_ahead | integer | — | How far forward to look. Defaults to 365 days. |
| days_back | integer | — | How far back to include overdue or recently resolved deadlines. Defaults to 60 days. |
| include_informational_windows | boolean | — | Include informational review windows such as publication opposition windows. Defaults to false. |
| include_opposition_period | boolean | — | Deprecated alias for include_informational_windows. Defaults to false. |
| limit | integer | — | Maximum number of deadline rows to return. Defaults to 50. |
| owner_name | string | yes | Owner name to resolve and analyze. |
| status_filter | string | — | Deadline status filter. Defaults to active. |
| Name | Type | Req | Description |
|---|---|---|---|
| counts_by_status | object | yes | — |
| counts_by_type | object | yes | — |
| days_ahead | integer | yes | — |
| days_back | integer | yes | — |
| deadlines | array | yes | — |
| include_informational_windows | boolean | yes | — |
| include_opposition_period | boolean | yes | — |
| is_partial | boolean | yes | — |
| matched_mark_count | integer | yes | — |
| message | — | — | — |
| open_in_gleanmark | — | — | — |
| owner_detail_url | — | — | — |
| owner_name | string | yes | — |
| returned | integer | yes | — |
| status_filter | string | yes | — |
| title | string | yes | — |
| total | integer | yes | — |
No examples provided.
get_owner_filing_trends Owner Filing Trends ~107
Get a trademark owner's filing trends over time — yearly filing counts broken down by Nice class. Shows how the owner's trademark portfolio has evolved.
| Name | Type | Req | Description |
|---|---|---|---|
| end_year | integer | — | End year (default: current year) |
| owner_name | string | yes | Owner name as shown in USPTO records (e.g., "NIKE, INC."). Use search_by_owner first to find the exact name. |
| start_year | integer | — | Start year (default: 2000) |
No output schema declared.
No examples provided.
get_owner_goods_keywords Owner Goods & Services Keywords ~91
Get the most frequent goods/services keywords for a trademark owner. Shows what products and services the owner focuses on, useful for understanding their brand strategy and identifying class patterns.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | Max keywords to return |
| owner_name | string | yes | Owner name as shown in USPTO records (e.g., "NIKE, INC."). Use search_by_owner first to find the exact name. |
No output schema declared.
No examples provided.
get_owner_related_parties Likely Related Parties for an Owner ~161
Find entities likely related to a trademark owner (predecessors, subsidiaries, sister companies) from USPTO evidence: shared ownership history on the same marks, shared filing addresses (agent addresses excluded), and shared distinctive name tokens. Returns evidence and a high/possible confidence tier per hit — treat 'possible' as tentative. Use when analyzing an owner's full corporate family, portfolio scope, or whether two owners of similar marks are actually affiliated. Pass the owner name exactly as recorded (resolve with resolve_trademark_subject first if ambiguous).
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | Maximum related parties to return |
| owner_name | string | yes | Owner name as recorded at the USPTO (e.g., "Netflix, Inc."). Normalized internally to the owner key. |
No output schema declared.
No examples provided.
get_owner_ttab_enforcement TTAB Enforcement History for an Owner ~339
Analyze one trademark owner's TTAB enforcement in a single call. Filters and counts only target marks that actually satisfy the requested class, mark-type, and claimed-color criteria; separately reports all targets attached to qualifying proceedings. Supports exact class-only questions with target_class_match=only. Claimed-color metadata identifies candidate marks but does not prove color was alleged in the pleading; use analyze_ttab_proceeding for that evidence.
| Name | Type | Req | Description |
|---|---|---|---|
| date_from | string | — | Inclusive filing-date start in YYYY-MM-DD format. |
| date_to | string | — | Inclusive filing-date end in YYYY-MM-DD format. |
| include_extensions | boolean | — | Include Extensions of Time to Oppose, reported separately from substantive cases. |
| include_owner_marks | boolean | — | Include the enforcing owner's asserted marks. Leave false for class/type/color target lists to keep the result compact. |
| limit | integer | — | — |
| owner_name | string | yes | Owner name, including a likely typo such as "Niked" for NIKE, Inc. |
| proceeding_types | array | — | — |
| role | string | — | Use plaintiff for proceedings the owner initiated. |
| target_claims_color | boolean | — | When true, require a USPTO color claim on each qualifying target mark. |
| target_class_match | string | — | any = at least one selected class; all = every selected class; only = exactly the selected class set and no others. |
| target_classes | array | — | Nice classes required on the qualifying challenged/target marks. |
| target_color_families | array | — | Optional normalized color families that qualifying target marks must claim. |
| target_mark_types | array | — | — |
No output schema declared.
No examples provided.
get_owner_ttab_stats TTAB Statistics for an Owner ~97
Get a compact TTAB history for one owner with substantive inter partes, opposition, cancellation, extension, appeal, and role breakdowns. Do not equate total records with initiated oppositions. Use get_owner_ttab_enforcement for date ranges or challenged-mark/class analysis.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | — |
| owner_name | string | yes | Owner name to search for |
| year | integer | — | Filter to a specific year |
No output schema declared.
No examples provided.
get_prosecution_document Get a Prosecution Document ~202
Retrieve one specific USPTO prosecution document by the stable document_id returned from list_prosecution_documents, USPTO document id, code, or date. Returns the working USPTO document link, extraction/readability status, cached document text, and optional query-centered excerpts. Use text_query when the user asks what the document says about a particular issue.
| Name | Type | Req | Description |
|---|---|---|---|
| document_code | string | — | Document code such as NFIN, FREF, ROA, or RFR. |
| document_date | string | — | Exact document date in YYYY-MM-DD. |
| document_id | string | — | Stable GleanMark document UUID from list_prosecution_documents; preferred exact selector. |
| max_chars | integer | — | — |
| serial_number | string | yes | Eight-digit USPTO serial number. |
| text_query | string | — | Optional word or phrase; returns up to five excerpts centered on matches. |
| uspto_document_id | string | — | USPTO document identifier from list_prosecution_documents. |
No output schema declared.
No examples provided.
get_prosecution_timeline Prosecution Timeline ~57
Get the prosecution timeline for a trademark — chronological list of office actions, responses, and key events (publication, registration, suspension, etc.). Raw data without AI analysis.
| Name | Type | Req | Description |
|---|---|---|---|
| serial_number | string | yes | USPTO serial number |
No output schema declared.
No examples provided.
get_reference_lookup Reference Data Lookup ~130
Look up USPTO or TTAB reference codes and small lookup tables such as status codes, statement types, legal entity types, Nice classes, design codes, and TTAB proceeding/status/role codes.
| Name | Type | Req | Description |
|---|---|---|---|
| after_code | string | — | Cursor from next_after_code for the next page when browsing a reference table without code/query filters. |
| code | string | — | Exact code to look up when known. |
| limit | integer | — | Maximum entries to return. |
| query | string | — | Free-text search across code descriptions and labels. |
| reference_type | string | yes | Which small lookup/reference table to search. |
No output schema declared.
No examples provided.
get_similar_marks Find Similar Marks ~133
Find USPTO trademarks similar to a given mark name. Uses examiner-style knockout search with phonetic, trigram, and component matching to identify potential conflicts. Returns similarity_score (mark-only similarity) and confusion_score (blended mark + commercial overlap). Useful for trademark clearance searches.
| Name | Type | Req | Description |
|---|---|---|---|
| include_dead | boolean | — | Include dead/abandoned trademarks in results |
| limit | integer | — | Maximum number of similar marks to return |
| mark_text | string | yes | Trademark name to find similar marks for |
| nice_classes | array | — | Filter by Nice Classification classes (similar marks in same classes are higher risk) |
| Name | Type | Req | Description |
|---|---|---|---|
| open_in_gleanmark | string | — | — |
| query_mark | string | yes | — |
| risk_summary | string | yes | — |
| similar_marks | array | yes | — |
No examples provided.
get_top_filers Top Trademark Filers ~184
Get a ranked filer table for a date range, filer type, and optional Nice classes. Use this when the user asks for top filers, top owners, top law firms, or top correspondents by class or date, such as "Who are the top 10 filers in Class 9 in 2025?" Returns the ranked rows with per-filer live, registered, and pending counts plus corpus totals.
| Name | Type | Req | Description |
|---|---|---|---|
| end_date | string | yes | Inclusive end date in YYYY-MM-DD format. |
| filer_type | string | — | Whether to rank owners, law firms, or individual correspondents. |
| limit | integer | — | Maximum number of ranked filers to return. |
| nice_classes | array | — | Optional Nice classes to filter by. Use integers like 42 or 9. |
| start_date | string | yes | Inclusive start date in YYYY-MM-DD format. |
| Name | Type | Req | Description |
|---|---|---|---|
| end_date | string | yes | — |
| filer_type | string | yes | — |
| headline | string | yes | — |
| leader_detail_url | — | — | — |
| leader_filing_count | integer | yes | — |
| leader_name | — | — | — |
| nice_classes | array | yes | — |
| presentation | object | yes | — |
| returned | integer | yes | — |
| start_date | string | yes | — |
| summary | string | yes | — |
| title | string | yes | — |
| total_matching_filers | integer | yes | — |
| total_matching_filings | integer | yes | — |
No examples provided.
get_trademark_analytics Trademark Analytics ~97
Get aggregate statistics about USPTO trademark filings, registrations, and TTAB proceedings.
| Name | Type | Req | Description |
|---|---|---|---|
| end_date | string | — | End date for custom period (YYYY-MM-DD) |
| group_by | string | — | — |
| metric | string | yes | Type of analytics to query |
| nice_class | integer | — | — |
| start_date | string | — | Start date for custom period (YYYY-MM-DD) |
| time_period | string | — | — |
No output schema declared.
No examples provided.
get_ttab_document Get a TTAB Document ~147
Retrieve and read one specific TTABVUE filing by proceeding number and entry number. Returns filing metadata, a working USPTO TTABVUE viewer link, direct PDF link when available, extraction/readability status, document text, and optional query-centered excerpts. Use get_ttab_proceeding_details first when the entry number is unknown.
| Name | Type | Req | Description |
|---|---|---|---|
| entry_number | integer | yes | TTABVUE entry number returned by get_ttab_proceeding_details. |
| max_chars | integer | — | — |
| proceeding_number | string | yes | Seven- or eight-digit TTAB proceeding number. |
| text_query | string | — | Optional word or phrase; returns up to five excerpts centered on matches. |
No output schema declared.
No examples provided.
get_ttab_proceeding_details TTAB Proceeding Details ~99
Get raw details for a TTAB proceeding — parties, involved marks, counsel, and recent filings with entry numbers and working TTABVUE document links. Use get_ttab_document to read one selected filing. Use get_owner_ttab_enforcement for owner-wide distributions and analyze_ttab_proceeding for AI-powered merits analysis.
| Name | Type | Req | Description |
|---|---|---|---|
| proceeding_number | string | yes | TTAB proceeding number (e.g., "91284756") |
No output schema declared.
No examples provided.
is_mark_famous Check Whether a Mark Is Famous ~260
Check whether a trademark is FAMOUS — and, critically, famous FOR A SPECIFIC MARKET (you pass the applicant's Nice class as a PROXY for that market; fame is market-determined, there is no per-class fame doctrine). Fame is market-specific (Joseph Phelps Vineyards v. Fairmont): a mark famous for electronics is not automatically famous for fresh fruit. Returns is_famous, famous_in_class, the fame tier (broad/dilution-tier household name vs market-specific), the famous market footprint (expressed as Nice classes), portfolio size, and the corporate family's TTAB-as-plaintiff enforcement history. Use for "is X a famous trademark?", "is X famous for <goods>?", gauging a senior mark's §2(d) strength, or §43(c) dilution eligibility. It is a circumstantial signal, not statutory fame proof.
| Name | Type | Req | Description |
|---|---|---|---|
| class | string | — | Optional Nice class number 1-45 (e.g. "25"), used as a proxy for the relevant market to test market-specific fame. Omit for a class-agnostic read. |
| mark | string | yes | The mark wording to check (e.g. "MONSTER", "DELTA", "APPLE"). |
No output schema declared.
No examples provided.
list_prosecution_documents List Prosecution Documents ~86
List prosecution documents for a trademark serial number, including stable document identifiers, working USPTO links when available, extraction/readability status, office actions, responses, notices, and other dated filings. Use get_prosecution_document to read one selected document.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | Maximum documents to return (default 50). |
| serial_number | string | yes | USPTO serial number |
No output schema declared.
No examples provided.
lookup_trademark Look Up Trademark by Serial Number ~78
Get detailed information about a specific USPTO trademark by its serial number. Returns owner, status, filing dates, goods/services, correspondent (attorney/law firm of record — use this for "which firm represents/is correspondent for" questions), and more.
| Name | Type | Req | Description |
|---|---|---|---|
| serial_number | string | yes | USPTO serial number (exactly 8 digits) |
| Name | Type | Req | Description |
|---|---|---|---|
| found | boolean | yes | — |
| open_in_gleanmark | — | — | — |
| serial_number | string | yes | — |
| trademark | — | yes | — |
No examples provided.
phonetic_search Search Marks That Sound Alike ~214
Find trademarks whose WHOLE mark sounds similar to the given mark (Metaphone + trigram, whole-mark similarity threshold). LIMITS: it compares entire marks, so multi-word marks that merely CONTAIN a sound-alike word are invisible to it — "KWIK REWARDS" will NOT surface for a QUICK query even though KWIK sounds like QUICK. Thin or empty results are NEVER evidence that no sound-alike marks exist and NEVER support an availability/clearance conclusion: cross-check with list_marks_containing_term on the likely variant spellings (e.g. KWIK, QUIK, QWIK for QUICK — it enumerates ALL containing marks, including compounds), and answer availability questions with run_knockout_search, the actual clearance engine.
| Name | Type | Req | Description |
|---|---|---|---|
| include_dead | boolean | — | — |
| limit | integer | — | — |
| mark_text | string | yes | Trademark name to find sound-alike matches for |
| nice_classes | array | — | Filter by Nice classes |
| similarity_threshold | number | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| open_in_gleanmark | string | — | — |
| query_mark | string | yes | — |
| results | array | yes | — |
| search_method | string | yes | — |
| total_found | integer | yes | — |
No examples provided.
recommend_nice_classes Recommend Nice Classes ~76
Recommend Nice trademark classes based on a business description. Returns the most relevant classes with confidence scores and explanations.
| Name | Type | Req | Description |
|---|---|---|---|
| business_description | string | yes | Detailed description of the business, products, or services (minimum 50 characters). Pass the full user description, do not summarize. |
| industry | string | — | Optional industry category for context |
No output schema declared.
No examples provided.
research_office_action Research an Office Action ~114
Research the Office Action for a trademark — returns structured refusal categories, latest OA/response context, cited marks, and third-party registrations that support coexistence arguments. For authenticated users this launches asynchronously (typically 1-2 minutes) and returns a processing handle — then call get_office_action_research_status to fetch the completed result. Tell the user it is running. Use this before draft_oa_response for preliminary research.
| Name | Type | Req | Description |
|---|---|---|---|
| serial_number | string | yes | USPTO serial number of the trademark with the Office Action |
No output schema declared.
No examples provided.
resolve_trademark_subject Resolve an Ambiguous Name ~106
Resolve an owner, law firm, correspondent, mark, TTAB proceeding, client, or portfolio to the best trademark entity match. Resolving clients and portfolios requires authentication.
| Name | Type | Req | Description |
|---|---|---|---|
| entity | string | yes | What kind of trademark subject to resolve. |
| limit | integer | — | Maximum number of candidate matches to return. |
| subject_name | string | yes | Raw owner, firm, correspondent, mark text/serial number, TTAB proceeding query, client name, or portfolio name to resolve. |
No output schema declared.
No examples provided.
run_dupont_analysis Run DuPont Likelihood-of-Confusion Analysis ~94
Run a full 13-factor DuPont likelihood of confusion analysis between two trademarks. Includes web research on the companies, market overlap analysis, and detailed factor-by-factor scoring. This is the most thorough confusion analysis available — use compare_marks for a quick check first.
| Name | Type | Req | Description |
|---|---|---|---|
| serial_a | string | yes | USPTO serial number of the first mark |
| serial_b | string | yes | USPTO serial number of the second mark |
No output schema declared.
No examples provided.
run_knockout_search Run Knockout Search ~470
Run an examiner-style knockout search with scoring via the unified knockout engine — the same engine the GleanMark product uses. This is a PURE USPTO conflict search over 14M trademark records (exact, phonetic, trigram, component words, coordinated class expansion, doctrine of foreign equivalents, design codes) with mark-similarity and commercial-overlap scoring. Returns 4-tier risk-grouped results (very_high/high/medium/low) with confusion scores, plus a dead-mark "naming territory" sample. ALWAYS pass goods_description when the user has told you what they sell — the risk bands score goods/services relatedness, so an identical mark in a related-goods class reads VERY_HIGH only when the goods are supplied (class-only scoring understates it). It does NOT check domain availability and does NOT run a brand/web availability check — for that, use check_brand_availability instead. Most searches finish in under a minute; before calling, give the user a one-line heads-up that it may take up to a minute. Optional owner_name adds portfolio context — shows the applicant's existing marks in searched classes.
| Name | Type | Req | Description |
|---|---|---|---|
| design_codes | array | — | USPTO design codes to include in the search (optional) |
| goods_description | string | — | The goods/services the applicant plans to sell (e.g., "hair extensions; synthetic hair pieces and wigs"). STRONGLY RECOMMENDED whenever known: it drives goods-relatedness scoring, so conflicts on rel… |
| include_dead | boolean | — | Include dead/abandoned marks in results (default: false, live only) |
| mark_name | string | yes | The proposed mark name to search for (e.g., "BARLYTICS", "WAR MUSCLE") |
| max_results | integer | — | Maximum scored results to return (default: 200) |
| nice_classes | array | — | Nice classes to search (e.g., ["042", "035"]). The search automatically expands to coordinated classes. Optional — omit to search all classes. |
| owner_name | string | — | Optional: the applicant/owner company name (e.g., "APPLE INC."). Adds portfolio context showing their existing marks in the searched classes and flags same-owner conflicts. |
No output schema declared.
No examples provided.