Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

GleanMark Trademark Search

REMOTE · GLEANMARK.COM · SCANNED SEP 21

Search 13.7M+ USPTO trademarks. Clearance, phonetic matching, TTAB stats, analytics.

Available components

0 this week 85 Trust /100
Trust breakdown (7 categories)

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 → Why this is hard to score →

Endpoint Security74
Transport & Reachability100
Schema Quality & AI Usability79
  • 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 14758 tokens (~189/item across 78 items; 64 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 Management98
  • Stability check failed: schema churn in the 30 days we've observed: 1 tool removals, 0 breaking changes, 0 auth/transport breaks, 4 additions. See how to fix → Fail
Tool Coverage97
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 90% of tool parameters carry a description.Partial
  • Structured output schemas are declared (28% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 64 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 66 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Install

How do I install the GleanMark Trademark Search MCP server?

GleanMark Trademark Search is a hosted endpoint at https://gleanmark.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · gleanmark.com

# add to Claude Code
claude mcp add --transport http com-gleanmark-trademark-search 'https://gleanmark.com/mcp'
// .cursor/mcp.json
{
  "mcpServers": {
    "com-gleanmark-trademark-search": {
      "url": "https://gleanmark.com/mcp"
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "com-gleanmark-trademark-search": {
      "type": "http",
      "url": "https://gleanmark.com/mcp"
    }
  }
}
# ~/.codex/config.toml
[mcp_servers.com-gleanmark-trademark-search]
url = "https://gleanmark.com/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-gleanmark-trademark-search": {
      "type": "remote",
      "url": "https://gleanmark.com/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add com-gleanmark-trademark-search --url 'https://gleanmark.com/mcp' --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  com-gleanmark-trademark-search:
    url: "https://gleanmark.com/mcp"
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "com-gleanmark-trademark-search": {
      "Transport": "http",
      "Url": "https://gleanmark.com/mcp"
    }
  }
}
# add to Vellum
assistant mcp add com-gleanmark-trademark-search -t streamable-http -u 'https://gleanmark.com/mcp'
// mcp.json
{
  "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.

Changelog

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.

  • 11 Sept 26 0
    • The server rewrote its instructions, which are the text every model session reads security
  • 10 Sept 26 0
    • Tool “phonetic_search” rewrote its description, which is the text the model reads security
    • Tool “search_mark_statements” rewrote its description, which is the text the model reads security
    • Tool “search_trademarks” rewrote its description, which is the text the model reads security
    • “run_knockout_search” reworded the description of “include_dead” cosmetic
    • “run_knockout_search” reworded the description of “max_results” cosmetic
    • “search_ttab_proceedings” reworded the description of “type_filter” cosmetic
  • 9 Sept 26 −1
    • Stability: pass → fail security
    • A breaking change shipped without a version bump: still 1.2.0 security
    • Tool “run_dupont_analysis” was removed security
    • The server rewrote its instructions, which are the text every model session reads security
    • Tool “analyze_prosecution_history” rewrote its description, which is the text the model reads security
    • Tool “analyze_ttab_proceeding” rewrote its description, which is the text the model reads security
    • Tool “get_latest_office_action” 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 “research_office_action” rewrote its description, which is the text the model reads security
  • 5 Sept 26 0
    • The server rewrote its instructions, which are the text every model session reads security
    • Tool “check_brand_availability” rewrote its description, which is the text the model reads security
    • New tool “fetch” functional
    • New tool “get_chain_of_title” functional
    • New tool “get_ttab_top_opposition_filers” functional
    • New tool “search” functional
  • 4 Sept 26 0
    • The server rewrote its instructions, which are the text every model session reads security
  • 3 Sept 26 +8
    • Judged manipulation: unverified → pass security
    • Schema quality: unverified → excellent functional
  • 2 Sept 26 −8
    • Judged manipulation: pass → unverified security
    • The server rewrote its instructions, which are the text every model session reads security
    • Schema quality: excellent → unverified functional
  • 1 Sept 26 0
    • Tool “get_top_filers” rewrote its description, which is the text the model reads security
    • “get_top_filers” added an optional parameter “filer_profile” cosmetic
    • “get_top_filers” added an optional parameter “min_filings” cosmetic
    • “get_top_filers” added an optional parameter “rank_by” cosmetic
Diagnostics

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 21 Sept 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 18 Sept 2026 17 Dec 2026 RSA 2048 SHA256-RSA 57b181409fd91cd0873659dd47e162169e5
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

Background: What to check on a remote MCP endpoint →

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

Background: How OAuth 2.1 works in the 2026 MCP spec →

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
MCP tools · 64 exposed · ~10,938 tokens

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. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
analyze_prosecution_history ~87

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 used to retrieve the completed result once ready.

NameTypeReqDescription
serial_numberstringyesUSPTO serial number

No output schema declared.

No examples provided.

analyze_ttab_proceeding ~121

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 used to retrieve the completed result once ready.

NameTypeReqDescription
proceeding_numberstringyesTTAB proceeding number (e.g., "91284756")
quick_modebooleanQuick mode skips lower-priority documents for faster results

No output schema declared.

No examples provided.

check_brand_availability ~171

Quick brand SCREEN — combines domain availability with a trademark conflict signal for the industries given. NOT a clearance search and NEVER an availability answer: it does not see common-law rights, state registrations, or goods relatedness in any depth. Returns a screening tier (avoid, probably avoid, promising, or nothing surfaced). Report a clean result as "our quick search did not surface close conflicts" — never as "no conflicts", "available", or "clear" — and always point the user to a complete clearance search. Availability conclusions come only from run_knockout_search.

NameTypeReqDescription
brand_namestringyesBrand name to check
business_descriptionstringBrief description of the business
industriesarrayIndustry categories
nice_classesarrayNice classes to check against

No output schema declared.

No examples provided.

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).

NameTypeReqDescription
brand_namestringyesBrand name to check (e.g., "Moonlight Coffee")
tldsarrayTLDs to check. Defaults to com/ai/app/io/co when omitted.

No output schema declared.

No examples provided.

compare_marks ~65

Compare two trademarks for likelihood of confusion using DuPont-style analysis. Returns similarity scores and risk assessment.

NameTypeReqDescription
mark_astringyesFirst trademark to compare
mark_bstringyesSecond trademark to compare
nice_classesarrayNice classes for overlap analysis
NameTypeReqDescription
dupont_factors_summaryarrayyes
mark_astringyes
mark_bstringyes
nice_class_overlapbooleanyes
open_in_gleanmarkstring
risk_explanationstringyes
risk_levelstringyes
similarityobjectyes

No examples provided.

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.

NameTypeReqDescription
claimed_color_familiesarrayNormalized color families. Burgundy and maroon, for example, count as red.
claimed_color_shadesarrayExact canonical shades from the USPTO color claim.
class_match_modestring
color_match_modestringall permits additional claimed colors; only requires exactly the selected colors; only_bw also permits black/white.
limitinteger
mark_typesarray
nice_classesarray
standard_charactersboolean
status_filterstringUse registered for currently live registrations; live also includes pending applications.

No output schema declared.

No examples provided.

fetch ~94

Retrieve the full USPTO record for one trademark, using an id returned by the search tool. Returns mark, owner, status, filing and registration dates, Nice classes, the goods and services text, and counsel of record, with a public gleanmark.com URL for citation.

NameTypeReqDescription
idstringyesDocument id from a search result, e.g. "uspto-72303482". A bare serial number is also accepted.

No output schema declared.

No examples provided.

get_chain_of_title ~169

Trace who has owned a trademark over time — the ownership stages USPTO recorded (original applicant/registrant through each successive new owner), plus any recorded assignment documents we hold. Use this whenever the user asks who owns a mark now versus who filed it, whether a mark was sold, transferred or assigned, how it came to its current owner, or for chain-of-title / due-diligence questions. lookup_trademark returns only the CURRENT owner and cannot answer any of these. Owners listed within a single stage are joint owners, not successive ones. Not a title opinion.

NameTypeReqDescription
serial_numberstringyesUSPTO serial number of the mark, e.g. "98725143". Registration numbers are not accepted — resolve to a serial first with lookup_trademark or search_trademarks.

No output schema declared.

No examples provided.

get_class_relationships ~92

Look up coordinated Nice classes or related Nice classes for a given class number.

NameTypeReqDescription
class_numberintegeryesNice class number to inspect.
include_legacybooleanInclude legacy US classes A, B, and 200 when returning coordinated classes.
limitintegerMaximum rows to return.
relationship_typestringWhether to return USPTO coordinated classes or curated related classes.

No output schema declared.

No examples provided.

get_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.

NameTypeReqDescription
cohort_date_fromstringyesCohort window start (YYYY-MM-DD). Required.
cohort_date_tostringyesCohort window end (YYYY-MM-DD). Required. Window max 366 days.
cohort_eventstringPreset anchor event defining cohort membership (e.g. publication = PUBO).
cohort_event_codesarrayAlternative to cohort_event: raw USPTO event codes; trailing * matches a prefix (e.g. "NPUB*").
end_eventstringInterval end event (first occurrence on/after the start event). Defaults to the cohort event itself.
end_event_codesarrayAlternative to end_event: raw event codes (trailing * = prefix).
max_sampleintegerMax cohort marks to measure (default 1000, max 2000).
start_eventstringInterval start event (first occurrence on/before the cohort event). Defaults to first_office_action.
start_event_codesarrayAlternative to start_event: raw event codes (trailing * = prefix).

No output schema declared.

No examples provided.

get_correspondent_marks ~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.

NameTypeReqDescription
canonical_correspondent_idstringUUID of the correspondent (from search_attorneys result). Use this if you already have the ID.
correspondent_idstringAlias for canonical_correspondent_id.
correspondent_namestringAlias for search_term. Preferred when the caller already knows this is a correspondent name.
limitintegerMaximum marks to return.
recent_window_daysintegerHow many days back to count recent office actions. Use 90 for "last 3 months".
search_termstringAttorney name to search for (e.g., "Todd Schneider"). Will find the best match.
status_filterstringFilter marks by status.

No output schema declared.

No examples provided.

get_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.

NameTypeReqDescription
correspondent_namestringAlias for search_term.
search_termstringCorrespondent or attorney name to resolve.
top_class_limitintegerMaximum top Nice classes to return.
top_client_limitintegerMaximum top clients to return.
url_keystringKnown correspondent url_key, if already resolved.
NameTypeReqDescription
correspondent_detail_url
correspondent_namestringyes
firm_detail_url
firm_name
foundbooleanyes
headlinestringyes
practice_profileobjectyes
primary_email
prosecution_profileobjectyes
summarystringyes
ttab_profileobjectyes
url_keystringyes

No examples provided.

get_deadline_satisfaction_mapping ~106

Check what role a USPTO event code plays for a deadline type (satisfies it, triggers it, abandons it, suspends it) per the deadline vocabulary table deadline_event_roles — office action response, opposition period, Statement of Use, Section 8/9/15, post-registration office action, ITU notice.

NameTypeReqDescription
deadline_typestringyesDeadline family to test against.
event_codestringyesUSPTO event code to inspect.

No output schema declared.

No examples provided.

get_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.

NameTypeReqDescription
codestringExact USPTO event code or prefix (e.g., "OAIN" for exact, "OA" for prefix match).
limitintegerMaximum number of results to return (default 20).
searchstringKeyword to search in event descriptions (e.g., "office action", "abandoned").

No output schema declared.

No examples provided.

get_event_status_mapping ~54

Look up which USPTO status code and status definition most commonly follow a specific prosecution event code.

NameTypeReqDescription
event_codestringyesUSPTO event code to inspect.
limitintegerMaximum mappings to return.

No output schema declared.

No examples provided.

get_fame_profile ~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.

NameTypeReqDescription
mark_or_stemstringyesA 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 ~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?".

NameTypeReqDescription
deadline_daysintegerHow many days ahead to include action-required deadlines. Overdue items still in grace are also included.
firm_namestringyesLaw firm name or normalized key, e.g. "Imani Law" or "imanilawllp".
limitintegerMaximum deadlines/recent OAs/task previews to return.
recent_oa_daysintegerHow many days back to include recent Office Actions.

No output schema declared.

No examples provided.

get_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.

NameTypeReqDescription
days_aheadintegerHow far forward to look. Defaults to 365 days.
days_backintegerHow far back to include overdue or recently resolved deadlines. Defaults to 60 days.
firm_namestringyesLaw firm name to resolve and analyze.
include_informational_windowsbooleanInclude informational review windows such as publication opposition windows. Defaults to false.
include_opposition_periodbooleanDeprecated alias for include_informational_windows. Defaults to false.
limitintegerMaximum number of deadline rows to return. Defaults to 50.
status_filterstringDeadline status filter. Defaults to active.
NameTypeReqDescription
counts_by_statusobjectyes
counts_by_typeobjectyes
days_aheadintegeryes
days_backintegeryes
deadlinesarrayyes
firm_detail_url
firm_namestringyes
include_informational_windowsbooleanyes
include_opposition_periodbooleanyes
is_partialbooleanyes
matched_mark_countintegeryes
message
open_in_gleanmark
returnedintegeryes
status_filterstringyes
titlestringyes
totalintegeryes

No examples provided.

get_firm_oa_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".

NameTypeReqDescription
firm_namestringyesLaw firm name or normalized key, e.g. "Imani Law" or "imanilawllp".
limitintegerMaximum examples to return in each outcome bucket.

No output schema declared.

No examples provided.

get_firm_top_correspondents ~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?"

NameTypeReqDescription
firm_namestringyesLaw firm name or normalized firm key.
limitintegerMaximum correspondents to return.
NameTypeReqDescription
firm_detail_url
firm_namestringyes
headlinestringyes
leader_detail_url
leader_name
leader_total_filingsintegeryes
presentationobjectyes
returnedintegeryes
summarystringyes
total_correspondentsintegeryes

No examples provided.

get_latest_office_action ~81

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. The refusal_grounds field is the authoritative, parsed basis of the refusal (rather than the document title).

NameTypeReqDescription
serial_numberstringyesUSPTO serial number

No output schema declared.

No examples provided.

get_mark_ai_summary ~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.

NameTypeReqDescription
serial_numberstringyesUSPTO serial number

No output schema declared.

No examples provided.

get_mark_deadlines ~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.

NameTypeReqDescription
days_aheadintegerHow far forward to look. Defaults to 365 days.
days_backintegerHow far back to include overdue or recently resolved deadlines. Defaults to 60 days.
include_informational_windowsbooleanInclude informational review windows such as publication opposition windows. Defaults to false.
include_opposition_periodbooleanDeprecated alias for include_informational_windows. Defaults to false.
limitintegerMaximum number of deadline rows to return. Defaults to 50.
serial_numberstringUSPTO serial number for the specific mark.
status_filterstringDeadline status filter. Defaults to active.
subject_namestringSpecific mark text or serial-number-like query. Use when the user names the mark instead of giving a serial.
NameTypeReqDescription
counts_by_statusobjectyes
counts_by_typeobjectyes
days_aheadintegeryes
days_backintegeryes
deadlinesarrayyes
include_informational_windowsbooleanyes
include_opposition_periodbooleanyes
is_partialbooleanyes
mark_name
message
open_in_gleanmark
owner_name
returnedintegeryes
serial_number
status_filterstringyes
titlestringyes
totalintegeryes

No examples provided.

get_mark_international_profile ~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.

NameTypeReqDescription
serial_numberstringyesUSPTO serial number

No output schema declared.

No examples provided.

get_mark_owner_landscape ~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.

NameTypeReqDescription
limitintegerMaximum number of owners to return.
mark_textstringyesTrademark term to analyze across owners, such as COMET or GLOW.
match_modestringHow to match the mark text: contains, exact, or starts_with.
nice_classesarrayOptional Nice classes to narrow the landscape.
status_filterstringOptional status filter. Default is live.
NameTypeReqDescription
headlinestringyes
leader_detail_url
leader_matching_mark_countintegeryes
leader_name
leader_total_portfolio_mark_countintegeryes
mark_textstringyes
match_modestringyes
nice_classesarrayyes
ownersarray
returnedintegeryes
status_filterstringyes
summarystringyes
titlestringyes
total_matching_live_marksintegeryes
total_matching_marksintegeryes
total_matching_ownersintegeryes

No examples provided.

get_mark_prosecution_summary ~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.

NameTypeReqDescription
serial_numberstringyesUSPTO serial number

No output schema declared.

No examples provided.

get_nice_classes ~77

Get information about Nice Classification classes used for trademark registration. Lookup specific class numbers or search for classes by keyword.

NameTypeReqDescription
class_numbersarraySpecific class numbers to look up (1-45)
search_termstringSearch term to find relevant classes (e.g., "software", "clothing", "restaurant")
NameTypeReqDescription
classesarrayyes
open_in_gleanmarkstring

No examples provided.

get_owner_ai_summary ~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.

NameTypeReqDescription
normalized_ownerstringyesNormalized 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 ~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.

NameTypeReqDescription
days_aheadintegerHow far forward to look. Defaults to 365 days.
days_backintegerHow far back to include overdue or recently resolved deadlines. Defaults to 60 days.
include_informational_windowsbooleanInclude informational review windows such as publication opposition windows. Defaults to false.
include_opposition_periodbooleanDeprecated alias for include_informational_windows. Defaults to false.
limitintegerMaximum number of deadline rows to return. Defaults to 50.
owner_namestringyesOwner name to resolve and analyze.
status_filterstringDeadline status filter. Defaults to active.
NameTypeReqDescription
counts_by_statusobjectyes
counts_by_typeobjectyes
days_aheadintegeryes
days_backintegeryes
deadlinesarrayyes
include_informational_windowsbooleanyes
include_opposition_periodbooleanyes
is_partialbooleanyes
matched_mark_countintegeryes
message
open_in_gleanmark
owner_detail_url
owner_namestringyes
returnedintegeryes
status_filterstringyes
titlestringyes
totalintegeryes

No examples provided.

get_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.

NameTypeReqDescription
end_yearintegerEnd year (default: current year)
owner_namestringyesOwner name as shown in USPTO records (e.g., "NIKE, INC."). Use search_by_owner first to find the exact name.
start_yearintegerStart year (default: 2000)

No output schema declared.

No examples provided.

get_owner_goods_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.

NameTypeReqDescription
limitintegerMax keywords to return
owner_namestringyesOwner 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 ~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).

NameTypeReqDescription
limitintegerMaximum related parties to return
owner_namestringyesOwner 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 ~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.

NameTypeReqDescription
date_fromstringInclusive filing-date start in YYYY-MM-DD format.
date_tostringInclusive filing-date end in YYYY-MM-DD format.
include_extensionsbooleanInclude Extensions of Time to Oppose, reported separately from substantive cases.
include_owner_marksbooleanInclude the enforcing owner's asserted marks. Leave false for class/type/color target lists to keep the result compact.
limitinteger
owner_namestringyesOwner name, including a likely typo such as "Niked" for NIKE, Inc.
proceeding_typesarray
rolestringUse plaintiff for proceedings the owner initiated.
target_claims_colorbooleanWhen true, require a USPTO color claim on each qualifying target mark.
target_class_matchstringany = at least one selected class; all = every selected class; only = exactly the selected class set and no others.
target_classesarrayNice classes required on the qualifying challenged/target marks.
target_color_familiesarrayOptional normalized color families that qualifying target marks must claim.
target_mark_typesarray

No output schema declared.

No examples provided.

get_owner_ttab_stats ~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.

NameTypeReqDescription
limitinteger
owner_namestringyesOwner name to search for
yearintegerFilter to a specific year

No output schema declared.

No examples provided.

get_prosecution_document ~250

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. Call with serial_number alone and it returns the list of documents on file (newest first) so you can pick one — no separate list_prosecution_documents call needed.

NameTypeReqDescription
document_codestringDocument code such as NFIN, FREF, ROA, or RFR.
document_datestringExact document date in YYYY-MM-DD.
document_idstringStable GleanMark document UUID; the exact selector. Omit every selector to get the list of documents for this serial and pick one from it.
max_charsinteger
serial_numberstringyesEight-digit USPTO serial number.
text_querystringOptional word or phrase; returns up to five excerpts centered on matches.
uspto_document_idstringUSPTO document identifier from list_prosecution_documents.

No output schema declared.

No examples provided.

get_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.

NameTypeReqDescription
serial_numberstringyesUSPTO serial number

No output schema declared.

No examples provided.

get_reference_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.

NameTypeReqDescription
after_codestringCursor from next_after_code for the next page when browsing a reference table without code/query filters.
codestringExact code to look up when known.
limitintegerMaximum entries to return.
querystringFree-text search across code descriptions and labels.
reference_typestringyesWhich small lookup/reference table to search.

No output schema declared.

No examples provided.

get_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.

NameTypeReqDescription
include_deadbooleanInclude dead/abandoned trademarks in results
limitintegerMaximum number of similar marks to return
mark_textstringyesTrademark name to find similar marks for
nice_classesarrayFilter by Nice Classification classes (similar marks in same classes are higher risk)
NameTypeReqDescription
open_in_gleanmarkstring
query_markstringyes
risk_summarystringyes
similar_marksarrayyes

No examples provided.

get_top_filers ~569

Get a ranked filer table for a date range, filer type, and optional Nice classes. Handles questions like "Who are the top 10 filers in Class 9 in 2025?" Returns ranked rows with per-filer live, registered, and pending counts plus corpus totals. A single call covers the full ranked list: `limit` (up to 100) sets the number of rows and the date range may span multiple years. `offset` reaches ranks beyond 100 or a specific band (ranks 40-45 = `limit: 6, offset: 39`).

NameTypeReqDescription
end_datestringyesInclusive end date in YYYY-MM-DD format.
filer_profilestringRestrict to a kind of filer. Firm rankings only. 'filing_service' is a curated, human-verified list of productized high-volume filing operations (LegalZoom, Rocket Lawyer, Swyft and similar) — use 'l…
filer_typestringWhether to rank owners, law firms, or individual correspondents.
limitintegerMaximum number of ranked filers to return. Up to 100 in a single call.
min_filingsintegerMinimum filings a filer needs to appear. Defaults to 25 when rank_by is success_rate, 0 otherwise. Required for rate rankings: without a floor a filer with 2 marks and 2 registrations scores 100% and…
nice_classesarrayOptional Nice classes to filter by. Use integers like 42 or 9.
offsetintegerRank to start from, 0-based. Use with limit to reach deeper bands: ranks 40-45 are limit 6, offset 39. Ranks in the response already account for this.
rank_bystringWhat to order by. 'filings' is raw volume and is dominated by high-volume online filing services. 'success_rate' ranks by registrations as a share of DECIDED outcomes (registered vs abandoned), which…
start_datestringyesInclusive start date in YYYY-MM-DD format.
NameTypeReqDescription
end_datestringyes
filer_typestringyes
headlinestringyes
leader_detail_url
leader_filing_countintegeryes
leader_name
nice_classesarrayyes
presentationobjectyes
returnedintegeryes
start_datestringyes
summarystringyes
titlestringyes
total_matching_filersintegeryes
total_matching_filingsintegeryes

No examples provided.

get_trademark_analytics ~97

Get aggregate statistics about USPTO trademark filings, registrations, and TTAB proceedings.

NameTypeReqDescription
end_datestringEnd date for custom period (YYYY-MM-DD)
group_bystring
metricstringyesType of analytics to query
nice_classinteger
start_datestringStart date for custom period (YYYY-MM-DD)
time_periodstring

No output schema declared.

No examples provided.

get_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.

NameTypeReqDescription
entry_numberintegeryesTTABVUE entry number returned by get_ttab_proceeding_details.
max_charsinteger
proceeding_numberstringyesSeven- or eight-digit TTAB proceeding number.
text_querystringOptional word or phrase; returns up to five excerpts centered on matches.

No output schema declared.

No examples provided.

get_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.

NameTypeReqDescription
proceeding_numberstringyesTTAB proceeding number (e.g., "91284756")

No output schema declared.

No examples provided.

get_ttab_top_opposition_filers ~265

Rank the parties that filed the most TTAB oppositions (or cancellations) across the whole Board in a date range — the market-wide "who opposes the most" question. Use this for questions like "which party filed the most oppositions in April 2026?". Do NOT substitute get_owner_ttab_stats (one owner) or get_ttab_proceeding_details (one proceeding); this is the only tool that ranks filers market-wide. Pass the exact calendar range the user implied.

NameTypeReqDescription
end_datestringyesEnd of the filing-date window, YYYY-MM-DD. Inclusive. For "April 2026" use 2026-04-30.
limitintegerHow many ranked parties to return.
party_rolestringRank the party that FILED (plaintiff/opposer) or the party that was targeted (defendant). "Filed the most oppositions" means plaintiff.
proceeding_typestringWhich proceeding type to rank. Oppositions challenge a pending application; cancellations attack a registration.
start_datestringyesStart of the filing-date window, YYYY-MM-DD. Inclusive. For "April 2026" use 2026-04-01.

No output schema declared.

No examples provided.

is_mark_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.

NameTypeReqDescription
classstringOptional 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.
markstringyesThe mark wording to check (e.g. "MONSTER", "DELTA", "APPLE").

No output schema declared.

No examples provided.

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.

NameTypeReqDescription
limitintegerMaximum documents to return (default 50).
serial_numberstringyesUSPTO serial number

No output schema declared.

No examples provided.

lookup_trademark ~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.

NameTypeReqDescription
serial_numberstringyesUSPTO serial number (exactly 8 digits)
NameTypeReqDescription
foundbooleanyes
open_in_gleanmark
serial_numberstringyes
trademarkyes

No examples provided.

phonetic_search ~173

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: answer availability questions with run_knockout_search, the actual clearance engine.

NameTypeReqDescription
include_deadboolean
limitinteger
mark_textstringyesTrademark name to find sound-alike matches for
nice_classesarrayFilter by Nice classes
similarity_thresholdnumber
NameTypeReqDescription
open_in_gleanmarkstring
query_markstringyes
resultsarrayyes
search_methodstringyes
total_foundintegeryes

No examples provided.

recommend_nice_classes ~76

Recommend Nice trademark classes based on a business description. Returns the most relevant classes with confidence scores and explanations.

NameTypeReqDescription
business_descriptionstringyesDetailed description of the business, products, or services (minimum 50 characters). Pass the full user description, do not summarize.
industrystringOptional industry category for context

No output schema declared.

No examples provided.

research_office_action ~89

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 used to retrieve the completed result once ready.

NameTypeReqDescription
serial_numberstringyesUSPTO serial number of the trademark with the Office Action

No output schema declared.

No examples provided.

resolve_trademark_subject ~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.

NameTypeReqDescription
entitystringyesWhat kind of trademark subject to resolve.
limitintegerMaximum number of candidate matches to return.
subject_namestringyesRaw owner, firm, correspondent, mark text/serial number, TTAB proceeding query, client name, or portfolio name to resolve.

No output schema declared.

No examples provided.

Common questions

What is the GleanMark Trademark Search MCP server?

GleanMark Trademark Search is an MCP server listed in the public MCP registry as com.gleanmark/trademark-search. Search 13.7M+ USPTO trademarks. Clearance, phonetic matching, TTAB stats, analytics. This page covers its hosted endpoint (https://gleanmark.com/mcp).

Is the GleanMark Trademark Search MCP server safe to use?

GleanMark Trademark Search scores 85 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the GleanMark Trademark Search MCP server expose?

GleanMark Trademark Search exposes 64 tools: analyze_prosecution_history, analyze_ttab_proceeding, check_brand_availability, check_domain_availability, compare_marks, and 59 more. Their descriptions and schemas cost roughly 10,938 tokens of context every time the server is loaded.

Does the GleanMark Trademark Search MCP server require authentication?

No. We connected to GleanMark Trademark Search without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

Is the GleanMark Trademark Search MCP server still maintained?

GleanMark Trademark Search is still listed as active in the MCP registry. We last reached this channel on 21 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.