Skip to content

GleanMark USPTO Trademark Search

com.gleanmark/trademark-searchgleanmark.comstreamable-httpv1.2.0Scanned

USPTO trademark data: 14M+ marks, owners, Office Actions, TTAB cases. Public tools need no account.

64 tools: 12 change things and 52 only read.

Tools: 0 delete, 0 irreversible, 12 write, 52 read.
  • Reads private data · 11
  • Reads text others write · 5
  • Can send data out · 0
  • 7 findings

Tools listed without sign-in. Remote posture

Anlyon alternative

12 of these tools change something. Run those as governed actions.

Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.

Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.

Import an OpenAPI spec →

Tools

Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.

64 tools

Changes things 12Claude Code: ask
  • analyze_prosecution_historyAnalyze the full prosecution history of a trademark — narrative timeline of office actions, responses, examiner decisions, and current status, with examiner-behavior patterns.1 finding

    Why it is in this group

    • The name "analyze_prosecution_history" says "analyze": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "analyze_prosecution_history" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}; The name "analyze_prosecution_history" says "analyze": a word for reading.

      What this check looks for
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: false
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: false
  • analyze_ttab_proceedingAnalyze a TTAB (Trademark Trial and Appeal Board) proceeding in depth — fetches and analyzes proceeding documents, identifies key arguments, and returns a structured summary with t…Reads private data1 finding

    Why it is in this group

    • The name "analyze_ttab_proceeding" says "analyze": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    What it can reach

    • private-dataThe description's first sentence says "analyze" and "document": it reads documents.

    Findings

    • Warn

      The server marks "analyze_ttab_proceeding" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}; The name "analyze_ttab_proceeding" says "analyze": a word for reading.

      What this check looks for
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: false
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: false
  • check_brand_availabilityQuick brand-name screen: checks whether the name's domains are registered and whether the .com site is in use, looks for similar registered trademarks in the given industries or cl…Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Quick brand-name screen: checks whether the name's domains are registered and whether the .com site is in use, looks for similar registered trademarks in the given industries or classes, and returns a screening tier (avoid, probably avoid, promising, or no close conflicts surfaced) with the top conflicts and a domain snapshot. It is a first look, not a clearance search: it does not cover common-law use, state registrations or a full goods-relatedness analysis, so a result with no conflicts means none surfaced in this screen, not that the name is available. run_knockout_search is the fuller trademark conflict search.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
    • destructiveHint: false
    • idempotentHint: true
  • check_domain_availabilityCheck domain availability for a brand name.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    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).

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
    • destructiveHint: false
    • idempotentHint: true
  • get_event_code_referenceLook up USPTO event codes used in trademark prosecution.1 finding

    Why it is in this group

    • The name "get_event_code_reference" says "get": a word for reading.
    • The input takes a statement or command to run (input.code), which can change anything it can reach.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "get_event_code_reference" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "get_event_code_reference" says "get": a word for reading.

      What this check looks for
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_reference_lookupLook 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…Reads private data1 finding

    Why it is in this group

    • The name "get_reference_lookup" says "get": a word for reading.
    • The input takes a statement or command to run (input.code), which can change anything it can reach.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • private-dataThe description's first sentence says "table": it reads databases.

    Findings

    • Warn

      The server marks "get_reference_lookup" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "get_reference_lookup" says "get": a word for reading.

      What this check looks for
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • is_mark_famousChecks whether a trademark is famous, and whether it is famous for a specific market, using the applicant's Nice class as a stand-in for that market (fame is market-specific under …1 finding

    Why it is in this group

    • The name "is_mark_famous" says "mark": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "is_mark_famous" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "is_mark_famous" says "mark": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Checks whether a trademark is famous, and whether it is famous for a specific market, using the applicant's Nice class as a stand-in for that market (fame is market-specific under 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 household-name fame or market-specific fame), the classes where the mark is famous, portfolio size, and the corporate family's record as a TTAB plaintiff. Relevant to whether a mark is famous, the strength of a senior mark under Section 2(d), and dilution eligibility under Section 43(c). A circumstantial signal, not proof of statutory fame.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • recommend_nice_classesRecommend Nice trademark classes based on a business description.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Recommend Nice trademark classes based on a business description. Returns the most relevant classes with confidence scores and explanations.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • research_office_actionResearch the Office Action for a trademark — returns structured refusal categories, latest OA/response context, cited marks, and third-party registrations that support coexistence …Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: false
    • openWorldHint: true
    • destructiveHint: false
    • idempotentHint: false
  • run_safe_analyticsRuns a constrained analytics query over owners, law firms and correspondents (rankings, counts, snapshots and timelines) and returns the results without exposing database details.1 finding

    Why it is in this group

    • The name "run_safe_analytics" says "run": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "run_safe_analytics" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "run_safe_analytics" says "run": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Runs a constrained analytics query over owners, law firms and correspondents (rankings, counts, snapshots and timelines) and returns the results without exposing database details. Suited to custom aggregate business questions that a single search or summary tool does not answer.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • web_researchResearch a company, trademark, or legal topic on the internet.Reads text others writeNo findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    Research a company, trademark, or legal topic on the internet. Returns grounded results with source citations. Use for company background, recent news, common law trademark use, or case law research.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
    • destructiveHint: false
    • idempotentHint: true
Only reads 52Show 52 read-only tools
  • compare_marksCompare two trademarks for likelihood of confusion using DuPont-style analysis.No findings

    Why it is in this group

    • The name "compare_marks" says "compare": a word for reading.
    Description, as the server wrote it
    Compare two trademarks for likelihood of confusion using DuPont-style analysis. Returns similarity scores and risk assessment.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • count_filings_by_periodCounts U.S.No findings

    Why it is in this group

    • The name "count_filings_by_period" says "count": a word for reading.
    Description, as the server wrote it
    Counts U.S. trademark applications filed across the whole register in a date range, grouped by calendar year, month or day, with each period split into U.S.-filed and Madrid Protocol (79-series) applications and the change from the previous period. Answers questions such as how many trademark applications were filed in 2025 and how that compares with 2024, or which month of a year had the most filings. Counts are one per serial number by the filing date on the USPTO record; they are calendar periods, not USPTO fiscal-year statistics, and not class counts. Returns data_through, the latest filing date on the register; recent periods grow as late records arrive.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • count_trademarks_by_attributesCounts and previews USPTO marks by record attributes (drawing type, standard-character claim, Nice class, status, and combinations of these), with breakdowns by mark type, standard…No findings

    Why it is in this group

    • The name "count_trademarks_by_attributes" says "count": a word for reading.
    Description, as the server wrote it
    Counts and previews USPTO marks by record attributes (drawing type, standard-character claim, Nice class, status, and combinations of these), with breakdowns by mark type, standard character and class, plus how complete the underlying data is. Claimed-color criteria can be combined with these attributes; counts by color alone, rankings, lists and color vocabulary are outside its scope.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • fetchRetrieve the full USPTO record for one trademark, using an id returned by the search tool.No findings

    Why it is in this group

    • The name "fetch" says "fetch": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_chain_of_titleTraces who has owned a trademark over time: the ownership stages the USPTO recorded, from the original applicant or registrant through each later owner, plus any recorded assignmen…Reads private dataNo findings

    Why it is in this group

    • The name "get_chain_of_title" says "get": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "document": it reads documents.
    Description, as the server wrote it
    Traces who has owned a trademark over time: the ownership stages the USPTO recorded, from the original applicant or registrant through each later owner, plus any recorded assignment documents GleanMark holds. Answers questions such as who owns a mark now versus who filed it, whether it was sold, transferred or assigned, and how it reached its current owner, including chain-of-title and due-diligence questions. lookup_trademark shows only the current owner. Owners listed within one stage are joint owners, not successive ones. Not a title opinion.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_class_relationshipsLook up coordinated Nice classes or related Nice classes for a given class number.No findings

    Why it is in this group

    • The name "get_class_relationships" says "get": a word for reading.
    Description, as the server wrote it
    Look up coordinated Nice classes or related Nice classes for a given class number.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_cohort_event_intervalsMeasures the time between two prosecution events across a group of marks, e.g.No findings

    Why it is in this group

    • The name "get_cohort_event_intervals" says "get": a word for reading.
    Description, as the server wrote it
    Measures the time between two prosecution events across a group of marks, e.g. the average days from Office Action to publication for marks published in Q2 2026. The group is chosen by an anchor event (preset: publication, notice_of_publication, registration, notice_of_allowance, abandonment or first_office_action, or raw event codes, where a trailing * matches a prefix) within a date window of up to 366 days; the interval runs from a start event to an end event. Returns the average, median and percentiles in days, how many marks in the group had no start event, and example marks. Samples up to max_sample marks from the start of the window and says when the sample is truncated. Event codes beyond the presets are listed by get_event_code_reference.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_correspondent_marksGet all trademarks handled by a specific attorney/correspondent, with prosecution event counts and office action flags.No findings

    Why it is in this group

    • The name "get_correspondent_marks" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_correspondent_specializationSummarize what a named correspondent specializes in, including top clients, top Nice classes, and prosecution-versus-TTAB profile.No findings

    Why it is in this group

    • The name "get_correspondent_specialization" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_deadline_satisfaction_mappingCheck 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 a…Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "get_deadline_satisfaction_mapping" says "get": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "table": it reads databases.
    • untrusted-inputThe description's first sentence says "post": it reads posts, which other people can write.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_event_status_mappingLook up which USPTO status code and status definition most commonly follow a specific prosecution event code.No findings

    Why it is in this group

    • The name "get_event_status_mapping" says "get": a word for reading.
    Description, as the server wrote it
    Look up which USPTO status code and status definition most commonly follow a specific prosecution event code.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_fame_profileGet 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 …No findings

    Why it is in this group

    • The name "get_fame_profile" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_firm_correspondent_tasksResolves a trademark law firm and returns its action-required work: overdue deadlines and those in the next window, plus recent Office Actions from case-file events and prosecution…Reads private dataNo findings

    Why it is in this group

    • The name "get_firm_correspondent_tasks" says "get": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "resolve" and "file": it reads files.
    Description, as the server wrote it
    Resolves a trademark law firm and returns its action-required work: overdue deadlines and those in the next window, plus recent Office Actions from case-file events and prosecution documents, with flags for a filed response and for Section 2(d) refusals. Answers questions such as which correspondent tasks a firm has in the next 30 days or which recent Office Actions a firm has received.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_firm_deadlinesGet public, system-generated trademark deadlines across marks handled by a specific law firm.No findings

    Why it is in this group

    • The name "get_firm_deadlines" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_firm_oa_outcomesResolve 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.No findings

    Why it is in this group

    • The name "get_firm_oa_outcomes" says "get": a word for reading.
    Description, as the server wrote it
    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".

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_firm_top_correspondentsRanks the correspondents or attorneys within one named law firm by filing volume, with prosecution and TTAB activity counts.No findings

    Why it is in this group

    • The name "get_firm_top_correspondents" says "get": a word for reading.
    Description, as the server wrote it
    Ranks the correspondents or attorneys within one named law firm by filing volume, with prosecution and TTAB activity counts. Answers questions such as who the top correspondents at Fross Zelnick Lehrman & Zissu are.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_latest_office_actionReturns the most recent Office Action for a trademark serial number, the latest recorded response if there is one, and the refusal grounds parsed from the Office Action text, with …No findings

    Why it is in this group

    • The name "get_latest_office_action" says "get": a word for reading.
    Description, as the server wrote it
    Returns the most recent Office Action for a trademark serial number, the latest recorded response if there is one, and the refusal grounds parsed from the Office Action text, with the cited registration numbers. refusal_grounds is taken from the text of the action, not from the document title.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_mark_ai_summaryGet an AI-generated deep-dive summary of a specific trademark.No findings

    Why it is in this group

    • The name "get_mark_ai_summary" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_mark_deadlinesGet public, system-generated trademark deadlines for a specific mark.No findings

    Why it is in this group

    • The name "get_mark_deadlines" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_mark_international_profileGet the international / foreign footprint of a U.S.No findings

    Why it is in this group

    • The name "get_mark_international_profile" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_mark_owner_landscapeShow which owners hold marks matching a shared trademark term and summarize what else those owners have in their broader portfolios.No findings

    Why it is in this group

    • The name "get_mark_owner_landscape" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_mark_prosecution_summaryGet a compact prosecution summary for a trademark serial number.No findings

    Why it is in this group

    • The name "get_mark_prosecution_summary" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_nice_classesGet information about Nice Classification classes used for trademark registration.No findings

    Why it is in this group

    • The name "get_nice_classes" says "get": a word for reading.
    Description, as the server wrote it
    Get information about Nice Classification classes used for trademark registration. Lookup specific class numbers or search for classes by keyword.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_owner_ai_summaryGet an AI-generated strategic analysis of a trademark owner.No findings

    Why it is in this group

    • The name "get_owner_ai_summary" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_owner_deadlinesGet public, system-generated trademark deadlines across a specific owner’s marks.No findings

    Why it is in this group

    • The name "get_owner_deadlines" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_owner_goods_keywordsGet the most frequent goods/services keywords for a trademark owner.No findings

    Why it is in this group

    • The name "get_owner_goods_keywords" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_owner_ttab_enforcementAnalyze one trademark owner's TTAB enforcement in a single call.No findings

    Why it is in this group

    • The name "get_owner_ttab_enforcement" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_owner_ttab_statsReturns a compact TTAB history for one owner: counts of inter partes proceedings, oppositions, cancellations, extensions of time to oppose and appeals, broken down by the owner's r…No findings

    Why it is in this group

    • The name "get_owner_ttab_stats" says "get": a word for reading.
    Description, as the server wrote it
    Returns a compact TTAB history for one owner: counts of inter partes proceedings, oppositions, cancellations, extensions of time to oppose and appeals, broken down by the owner's role. The total counts every record, including extensions and cases the owner defended, so it is not the number of oppositions the owner started. get_owner_ttab_enforcement covers date ranges and the marks and classes challenged.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_prosecution_documentRetrieve one specific USPTO prosecution document by the stable document_id returned from list_prosecution_documents, USPTO document id, code, or date.Reads private dataNo findings

    Why it is in this group

    • The name "get_prosecution_document" says "get": a word for reading.

    What it can reach

    • private-dataThe name "get_prosecution_document" says "get" and "document": it reads documents.
    • private-dataThe description's first sentence says "retrieve" and "document": it reads documents.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_prosecution_timelineGet the prosecution timeline for a trademark — chronological list of office actions, responses, and key events (publication, registration, suspension, etc.).No findings

    Why it is in this group

    • The name "get_prosecution_timeline" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_similar_marksFind USPTO trademarks similar to a given mark name.No findings

    Why it is in this group

    • The name "get_similar_marks" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_top_filersGet a ranked filer table for a date range, filer type, and optional Nice classes.Reads private dataNo findings

    Why it is in this group

    • The name "get_top_filers" says "get": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "get" and "table": it reads databases.
    Description, as the server wrote it
    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`).

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_ttab_documentRetrieve and read one specific TTABVUE filing by proceeding number and entry number.Reads private dataNo findings

    Why it is in this group

    • The name "get_ttab_document" says "get": a word for reading.

    What it can reach

    • private-dataThe name "get_ttab_document" says "get" and "document": it reads documents.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_ttab_proceeding_detailsGet raw details for a TTAB proceeding — parties, involved marks, counsel, and recent filings with entry numbers and working TTABVUE document links.Reads private dataNo findings

    Why it is in this group

    • The name "get_ttab_proceeding_details" says "get": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "get" and "document": it reads documents.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • get_ttab_top_opposition_filersRanks the parties that filed the most TTAB oppositions (or cancellations) across the whole Board in a date range.No findings

    Why it is in this group

    • The name "get_ttab_top_opposition_filers" says "get": a word for reading.
    Description, as the server wrote it
    Ranks the parties that filed the most TTAB oppositions (or cancellations) across the whole Board in a date range. Answers market-wide questions such as which party filed the most oppositions in April 2026. Takes a calendar date range. One owner's record is covered by get_owner_ttab_stats, and one proceeding by get_ttab_proceeding_details.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • list_prosecution_documentsList prosecution documents for a trademark serial number, including stable document identifiers, working USPTO links when available, extraction/readability status, office actions, …Reads private dataNo findings

    Why it is in this group

    • The name "list_prosecution_documents" says "list": a word for reading.

    What it can reach

    • private-dataThe name "list_prosecution_documents" says "list" and "document": it reads documents.
    • private-dataThe description's first sentence says "list" and "document": it reads documents.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • lookup_trademarkGet detailed information about a specific USPTO trademark by its serial number.No findings

    Why it is in this group

    • The name "lookup_trademark" says "lookup": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • resolve_trademark_subjectMatches a name to one trademark entity (an owner, law firm, correspondent, mark, TTAB proceeding, client or portfolio) and returns the match with its identifiers, or the top candid…No findings

    Why it is in this group

    • The name "resolve_trademark_subject" says "resolve": a word for reading.
    Description, as the server wrote it
    Matches a name to one trademark entity (an owner, law firm, correspondent, mark, TTAB proceeding, client or portfolio) and returns the match with its identifiers, or the top candidates when the name is ambiguous. Resolving clients and portfolios requires a signed-in account.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • search_attorneysSearch for trademark attorneys or law firms.No findings

    Why it is in this group

    • The name "search_attorneys" says "search": a word for reading.
    Description, as the server wrote it
    Search for trademark attorneys or law firms. Returns prosecution statistics, TTAB proceeding counts (as plaintiff/defendant), and contact information.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • search_by_ownerSearch for trademark owners by name.No findings

    Why it is in this group

    • The name "search_by_owner" says "search": a word for reading.
    Description, as the server wrote it
    Search for trademark owners by name. Use this to resolve or list candidate owners, not for owner counts, rankings, prosecution snapshots, or recent activity checks. Returns matching companies/individuals with their trademark portfolio statistics (total marks, live/dead counts, registered/pending).

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • search_claimed_colorsSearches or counts U.S.No findings

    Why it is in this group

    • The name "search_claimed_colors" says "search": a word for reading.
    Description, as the server wrote it
    Searches or counts U.S. trademarks by the colors they claim, parsed from USPTO color-claim statements. Two levels: level="family" (16 color families; red also finds dark red, maroon and burgundy) and level="shade" (the exact term claimed, e.g. dark red). match="all" finds marks claiming at least the given colors, match="only" marks claiming exactly those colors, and match="only_bw" the same while also allowing black and white. claimed=false counts marks whose statement says color is not claimed. Modes: count, top_owners, list_marks, vocabulary (the valid families or shades with counts), explain_term (the family a shade belongs to) and by_serial (what one mark claims).

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • search_design_codesFind US trademarks by USPTO design code — the codes examiners assign to the visual elements of a logo (26.17.01 = straight bands, 24.11 = crowns).No findings

    Why it is in this group

    • The name "search_design_codes" says "search": a word for reading.
    Description, as the server wrote it
    Find US trademarks by USPTO design code — the codes examiners assign to the visual elements of a logo (26.17.01 = straight bands, 24.11 = crowns). Accepts dotted (26.17.01) or packed (261701) form. USPTO design vocabulary is literal and narrow: it records "Bands, straight" where a person says "stripe", and has no entry for words like "swoosh", so a plain shape word resolves to a code through mode="search_codes" before marks can be counted or listed. Modes: count, top_owners, list_marks, by_serial (what codes one mark carries), describe_code, search_codes. Omitting mode infers it from the arguments supplied.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • search_goods_servicesFull-text search over the goods and services identifications of 14M USPTO marks, for questions such as which other owners claim a product in their goods (competitive landscape, des…No findings

    Why it is in this group

    • The name "search_goods_services" says "search": a word for reading.
    Description, as the server wrote it
    Full-text search over the goods and services identifications of 14M USPTO marks, for questions such as which other owners claim a product in their goods (competitive landscape, descriptiveness or crowded-field evidence, identification drafting precedent). Keyword-based: the query is tokenized and matched against each mark's indexed goods keywords (match_mode all requires every keyword, any requires at least one). Rows include a short excerpt around the matched clause, not the full identification. mode=count returns how many marks claim the goods, with class and status breakdowns; mode=top_owners ranks the owners claiming them; neither returns rows. Searches goods and services text, not mark names; run_knockout_search and search_trademarks search mark names.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • search_mark_statementsSearches the statements the USPTO records on a trademark: disclaimers ("no claim is made to PIZZA apart from the mark"), descriptions of the drawing ("the mark consists of a red an…No findings

    Why it is in this group

    • The name "search_mark_statements" says "search": a word for reading.
    Description, as the server wrote it
    Searches the statements the USPTO records on a trademark: disclaimers ("no claim is made to PIZZA apart from the mark"), descriptions of the drawing ("the mark consists of a red and white striped awning"), translations of foreign wording, and claims of prior registrations. Answers questions such as which marks disclaim a word or which marks are described as stripes. Modes: count, top_terms, top_owners, list_marks, by_serial (every statement on one mark) and statement_types. mode=top_terms with nice_class ranks the most-disclaimed terms in a class with per-term mark counts (disclaimers only); its status filter accepts live (registered and pending together), any or dead, so a registered-only ranking is not available. A single term's registered-only count is available with mode=count, text set to the term, and status=registered. Color claims are searched with search_claimed_colors.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • search_trademarksSearches USPTO trademarks by name (14M records) and returns the closest whole-mark matches, ranked by similarity and prefix.No findings

    Why it is in this group

    • The name "search_trademarks" says "search": a word for reading.
    Description, as the server wrote it
    Searches USPTO trademarks by name (14M records) and returns the closest whole-mark matches, ranked by similarity and prefix. It is not an exhaustive contains-search: multi-word marks that only contain the queried word rank low and are often cut (a KWIK query can miss KWIK REWARDS or KWIK KOPY); search_marks_by_pattern returns complete lists. A short result does not show that a name is absent from the register or available.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • search_ttab_proceedingsSearch TTAB proceedings using the same discovery index as the GleanMark TTAB workspace.No findings

    Why it is in this group

    • The name "search_ttab_proceedings" says "search": a word for reading.
    Description, as the server wrote it
    Search TTAB proceedings using the same discovery index as the GleanMark TTAB workspace. Use for broad proceeding discovery by party name, exact 8-digit proceeding number, 8-digit trademark serial number, or 7-digit registration number. Supports status, proceeding type, matched party role, and owner-name filters. For one known case after discovery, use get_ttab_proceeding_details; for owner enforcement statistics, use get_owner_ttab_enforcement.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • suggest_gs_descriptionsSearch the USPTO Trademark ID Manual (pre-approved, surcharge-free goods & services identifications) by plain words.No findings

    Why it is in this group

    • The description's first verb is "search": a word for reading.
    Description, as the server wrote it
    Search the USPTO Trademark ID Manual (pre-approved, surcharge-free goods & services identifications) by plain words. Call once per distinct product/service line (e.g. construction services and lighting products are two separate calls), not once per whole business. Returns selectable Term IDs; entries with {curly-brace} placeholders are fill-in templates.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true
  • validate_gs_descriptionCheck a draft goods & services description against the USPTO ID Manual, clause by clause (clauses split on ";").No findings

    Why it is in this group

    • The name "validate_gs_description" says "validate": a word for reading.
    Description, as the server wrote it
    Check a draft goods & services description against the USPTO ID Manual, clause by clause (clauses split on ";"). Each clause comes back verbatim (selectable pre-approved entry), close (with up to 3 pre-approved substitutes), or freeform (subject to the USPTO $200/class free-form surcharge). Deterministic — no AI rewriting.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
    • destructiveHint: false
    • idempotentHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Exfil surface

Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.

No private-data, untrusted-input, outbound path in this server alone: no tool is tagged outbound.

Reads text others write5
Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
Can send data out0
Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.

Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.

Remote posture

What anyone on the internet sees at the remote endpoint: an anonymous initialize and tools/list, and the public OAuth metadata.

Tools listed without sign-in

Looked at Oct 22, 2026, 14:33 UTC, unchanged since Oct 22, 2026. No credentials were sent and no tool was called. What is looked at.

Reachable
yes
HTTP status of an anonymous initialize
200
tools/list served without credentials
yes
Tools that change things, listed without credentials
12
Protocol version
2025-06-18
WWW-Authenticate on 401
not observed
resource_metadata in WWW-Authenticate
not observed
RFC 9728 protected resource metadata
https://gleanmark.com/.well-known/oauth-protected-resource/mcp
Authorization servers
https://gleanmark.com/
Legacy HTTP+SSE transport
no
Dynamic client registration
yes
Client ID metadata documents
yes
  • WarnThe whole server

    The endpoint served tools/list without credentials, and the list has 12 tools that change things (12 write). Whether a call also works without credentials was not tested: tools are never called.

    Matched text

    https://gleanmark.com/mcp: tools/list returned 64 tools to an anonymous client, including analyze_prosecution_history (write), analyze_ttab_proceeding (write), check_brand_availability (write), check_domain_availability (write), get_event_code_reference (write) and 7 more

    What this check looks for

Findings

Matches of fixed checks, with the text they matched.

7 warn
  • The server marks "analyze_prosecution_history" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}; The name "analyze_prosecution_history" says "analyze": a word for reading.

    What this check looks for
  • The server marks "analyze_ttab_proceeding" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}; The name "analyze_ttab_proceeding" says "analyze": a word for reading.

    What this check looks for
  • The server marks "get_event_code_reference" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "get_event_code_reference" says "get": a word for reading.

    What this check looks for
  • The server marks "get_reference_lookup" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "get_reference_lookup" says "get": a word for reading.

    What this check looks for
  • The server marks "is_mark_famous" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "is_mark_famous" says "mark": a word for a change.

    What this check looks for
  • The server marks "run_knockout_search" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "run_knockout_search" says "run": a word for a change.

    What this check looks for
Show 1 more finding
  • The server marks "run_safe_analytics" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "run_safe_analytics" says "run": a word for a change.

    What this check looks for

History

Changes to its tool definitions and to its remote endpoint, newest first.

No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.

Install

Pinned to version 1.2.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http trademark-search https://gleanmark.com/mcp
claude mcp add --transport http trademark-search https://gleanmark.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__trademark-search__compare_marks",
      "mcp__trademark-search__count_filings_by_period",
      "mcp__trademark-search__count_trademarks_by_attributes",
      "mcp__trademark-search__fetch",
      "mcp__trademark-search__get_chain_of_title",
      "mcp__trademark-search__get_class_relationships",
      "mcp__trademark-search__get_cohort_event_intervals",
      "mcp__trademark-search__get_correspondent_marks",
      "mcp__trademark-search__get_correspondent_specialization",
      "mcp__trademark-search__get_deadline_satisfaction_mapping",
      "mcp__trademark-search__get_event_status_mapping",
      "mcp__trademark-search__get_fame_profile",
      "mcp__trademark-search__get_firm_correspondent_tasks",
      "mcp__trademark-search__get_firm_deadlines",
      "mcp__trademark-search__get_firm_oa_outcomes",
      "mcp__trademark-search__get_firm_top_correspondents",
      "mcp__trademark-search__get_latest_office_action",
      "mcp__trademark-search__get_mark_ai_summary",
      "mcp__trademark-search__get_mark_deadlines",
      "mcp__trademark-search__get_mark_international_profile",
      "mcp__trademark-search__get_mark_owner_landscape",
      "mcp__trademark-search__get_mark_prosecution_summary",
      "mcp__trademark-search__get_nice_classes",
      "mcp__trademark-search__get_owner_ai_summary",
      "mcp__trademark-search__get_owner_deadlines",
      "mcp__trademark-search__get_owner_filing_trends",
      "mcp__trademark-search__get_owner_goods_keywords",
      "mcp__trademark-search__get_owner_related_parties",
      "mcp__trademark-search__get_owner_ttab_enforcement",
      "mcp__trademark-search__get_owner_ttab_stats",
      "mcp__trademark-search__get_prosecution_document",
      "mcp__trademark-search__get_prosecution_timeline",
      "mcp__trademark-search__get_similar_marks",
      "mcp__trademark-search__get_top_filers",
      "mcp__trademark-search__get_ttab_document",
      "mcp__trademark-search__get_ttab_proceeding_details",
      "mcp__trademark-search__get_ttab_top_opposition_filers",
      "mcp__trademark-search__list_prosecution_documents",
      "mcp__trademark-search__lookup_trademark",
      "mcp__trademark-search__phonetic_search",
      "mcp__trademark-search__resolve_trademark_subject",
      "mcp__trademark-search__search",
      "mcp__trademark-search__search_attorneys",
      "mcp__trademark-search__search_by_owner",
      "mcp__trademark-search__search_claimed_colors",
      "mcp__trademark-search__search_design_codes",
      "mcp__trademark-search__search_goods_services",
      "mcp__trademark-search__search_mark_statements",
      "mcp__trademark-search__search_trademarks",
      "mcp__trademark-search__search_ttab_proceedings",
      "mcp__trademark-search__suggest_gs_descriptions",
      "mcp__trademark-search__validate_gs_description"
    ],
    "ask": [
      "mcp__trademark-search__analyze_prosecution_history",
      "mcp__trademark-search__analyze_ttab_proceeding",
      "mcp__trademark-search__check_brand_availability",
      "mcp__trademark-search__check_domain_availability",
      "mcp__trademark-search__get_event_code_reference",
      "mcp__trademark-search__get_reference_lookup",
      "mcp__trademark-search__is_mark_famous",
      "mcp__trademark-search__recommend_nice_classes",
      "mcp__trademark-search__research_office_action",
      "mcp__trademark-search__run_knockout_search",
      "mcp__trademark-search__run_safe_analytics",
      "mcp__trademark-search__web_research"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as trademark-search. Review it before you use it.

Capability tags behind 15 rules
  • mcp__trademark-search__analyze_ttab_proceeding private-data
  • mcp__trademark-search__check_brand_availability untrusted-input
  • mcp__trademark-search__check_domain_availability untrusted-input
  • mcp__trademark-search__get_chain_of_title private-data
  • mcp__trademark-search__get_deadline_satisfaction_mapping private-data, untrusted-input
  • mcp__trademark-search__get_firm_correspondent_tasks private-data
  • mcp__trademark-search__get_prosecution_document private-data
  • mcp__trademark-search__get_reference_lookup private-data
  • mcp__trademark-search__get_top_filers private-data
  • mcp__trademark-search__get_ttab_document private-data
  • mcp__trademark-search__get_ttab_proceeding_details private-data
  • mcp__trademark-search__list_prosecution_documents private-data
  • mcp__trademark-search__research_office_action untrusted-input
  • mcp__trademark-search__search private-data
  • mcp__trademark-search__web_research untrusted-input

Pin

Keep the decision: fail CI when the tools change, follow every change, or show a badge.

Pin in CI

Fail a build when the tools you reviewed are not the tools the server serves today.

curl -s "https://anlyon.dev/api/v1/servers/com.gleanmark/trademark-search/verify?hash=910b522b436287134e5a3b373678d335c3a7f9475d9630ee9dbe0729786191fb" | jq -e '.changed == false'

Pinned hash 910b522b4362, from Oct 21, 2026, 18:50 UTC.

Watch

Get told when its tools change: a new tool, a new description, a new class.

https://anlyon.dev/servers/com.gleanmark/trademark-search/changes.xml

An Atom feed. Works in any feed reader or Slack's RSS app.

Badge

anlyon.dev badge for com.gleanmark/trademark-search
[![anlyon.dev](https://anlyon.dev/badge/com.gleanmark/trademark-search.svg)](https://anlyon.dev/servers/com.gleanmark/trademark-search)

Source: MCP Registry. Synced Oct 21, 2026, 17:55 UTC.