[{"slug":"ZV-2026-1385","server_name":"gleanmark.com","severity":"breaking","title":"gleanmark.com: Tool get_trademark_analytics was removed.","summary":"[breaking] Tool get_trademark_analytics was removed. [safe] Tool count_filings_by_period was added. [risky] Description of check_brand_availability changed (59% word delta). [risky] Description of count_trademarks_by_attributes changed (52% word delta). [risky] Description of get_chain_of_title changed (34% word delta). [risky] Description of get_cohort_event_intervals changed (36% word delta). [risky] Description of get_firm_correspondent_tasks changed (51% word delta). [risky] Description of get_firm_top_correspondents changed (42% word delta). [risky] Description of get_latest_office_action changed (36% word delta). [risky] Description of get_owner_ttab_stats changed (71% word delta). [risky] Description of get_ttab_top_opposition_filers changed (47% word delta). [risky] Description of is_mark_famous changed (35% word delta). [risky] Description of phonetic_search changed (50% word delta). [risky] Description of resolve_trademark_subject changed (48% word delta). [risky] Description of run_knockout_search changed (49% word delta). [risky] Description of run_safe_analytics changed (58% word delta). [risky] Description of search_claimed_colors changed (39% word delta). [risky] Description of search_goods_services changed (30% word delta). [risky] Description of search_mark_statements changed (44% word delta). [risky] Description of search_trademarks changed (42% word delta).","changes":[{"kind":"tool_removed","tool":"get_trademark_analytics","detail":"Tool `get_trademark_analytics` was removed.","severity":"breaking"},{"kind":"tool_added","tool":"count_filings_by_period","detail":"Tool `count_filings_by_period` was added.","severity":"safe"},{"kind":"description_changed","tool":"check_brand_availability","after":"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.","before":"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.","detail":"Description of `check_brand_availability` changed (59% word delta).","severity":"risky","descriptionDelta":0.5851063829787234},{"kind":"description_changed","tool":"count_trademarks_by_attributes","after":"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.","before":"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.","detail":"Description of `count_trademarks_by_attributes` changed (52% word delta).","severity":"risky","descriptionDelta":0.5166666666666666},{"kind":"description_changed","tool":"get_chain_of_title","after":"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.","before":"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.","detail":"Description of `get_chain_of_title` changed (34% word delta).","severity":"risky","descriptionDelta":0.3411764705882353},{"kind":"description_changed","tool":"get_cohort_event_intervals","after":"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.","before":"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.","detail":"Description of `get_cohort_event_intervals` changed (36% word delta).","severity":"risky","descriptionDelta":0.36363636363636365},{"kind":"description_changed","tool":"get_firm_correspondent_tasks","after":"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.","before":"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?\".","detail":"Description of `get_firm_correspondent_tasks` changed (51% word delta).","severity":"risky","descriptionDelta":0.5074626865671642},{"kind":"description_changed","tool":"get_firm_top_correspondents","after":"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.","before":"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?\"","detail":"Description of `get_firm_top_correspondents` changed (42% word delta).","severity":"risky","descriptionDelta":0.41860465116279066},{"kind":"description_changed","tool":"get_latest_office_action","after":"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.","before":"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).","detail":"Description of `get_latest_office_action` changed (36% word delta).","severity":"risky","descriptionDelta":0.36363636363636365},{"kind":"description_changed","tool":"get_owner_ttab_stats","after":"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.","before":"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.","detail":"Description of `get_owner_ttab_stats` changed (71% word delta).","severity":"risky","descriptionDelta":0.7142857142857143},{"kind":"description_changed","tool":"get_ttab_top_opposition_filers","after":"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.","before":"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.","detail":"Description of `get_ttab_top_opposition_filers` changed (47% word delta).","severity":"risky","descriptionDelta":0.4655172413793104},{"kind":"description_changed","tool":"is_mark_famous","after":"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.","before":"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.","detail":"Description of `is_mark_famous` changed (35% word delta).","severity":"risky","descriptionDelta":0.34883720930232553},{"kind":"description_changed","tool":"phonetic_search","after":"Finds trademarks whose whole mark sounds like the given mark, using Metaphone codes and trigram similarity with a whole-mark threshold. Because it compares entire marks, a multi-word mark that only contains a sound-alike word is not returned: for QUICK, KWIK REWARDS does not appear even though KWIK sounds like QUICK. An empty or short result does not show that no sound-alike marks exist and is not a clearance result; run_knockout_search is the conflict search.","before":"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.","detail":"Description of `phonetic_search` changed (50% word delta).","severity":"risky","descriptionDelta":0.5},{"kind":"description_changed","tool":"resolve_trademark_subject","after":"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.","before":"Resolve an owner, law firm, correspondent, mark, TTAB proceeding, client, or portfolio to the best trademark entity match. Resolving clients and portfolios requires authentication.","detail":"Description of `resolve_trademark_subject` changed (48% word delta).","severity":"risky","descriptionDelta":0.475},{"kind":"description_changed","tool":"run_knockout_search","after":"Runs a scored trademark conflict (knockout) search over 14M USPTO records with the same engine as the GleanMark app: exact, phonetic, trigram and component-word matching, coordinated class expansion, foreign-equivalent translation and design codes, scored for mark similarity and commercial overlap. Returns results grouped into four risk tiers (very high, high, medium, low) with confusion scores, a four-level headline verdict (critical conflicts, elevated risk, moderate risk, low risk) with a one-line reason, and a sample of dead marks in the same naming territory. goods_description, when supplied, is scored for goods and services relatedness; without it, scoring uses classes only, which understates conflicts between related goods in different classes. owner_name adds the applicant's existing marks in the searched classes. It searches trademarks only, not domains or web use; check_brand_availability covers domains. Most searches finish in under a minute. Requires a signed-in GleanMark account.","before":"Run an examiner-style knockout search with scoring via the unified knockout engine — the same engine the GleanMark product uses. This is a PURE USPTO conflict search over 14M trademark records (exact, phonetic, trigram, component words, coordinated class expansion, doctrine of foreign equivalents, design codes) with mark-similarity and commercial-overlap scoring. Returns 4-tier risk-grouped results (very_high/high/medium/low) with confusion scores, plus a dead-mark \"naming territory\" sample. The top-line verdict is calibrated four-tier — CRITICAL CONFLICTS / ELEVATED RISK / MODERATE RISK / LOW RISK — with a one-line reason, so multi-name shortlists rank meaningfully. ALWAYS pass goods_description when the user has told you what they sell — the risk bands score goods/services relatedness, so an identical mark in a related-goods class reads VERY_HIGH only when the goods are supplied (class-only scoring understates it). It does NOT check domain availability and does NOT run a brand/web availability check — for that, use check_brand_availability instead. Most searches finish in under a minute; before calling, give the user a one-line heads-up that it may take up to a minute. Optional owner_name adds portfolio context — shows the applicant's existing marks in searched classes.","detail":"Description of `run_knockout_search` changed (49% word delta).","severity":"risky","descriptionDelta":0.49090909090909096},{"kind":"description_changed","tool":"run_safe_analytics","after":"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.","before":"Run a constrained business-level analytics query without exposing schema details. This is the default fallback for bespoke rankings, counts, snapshots, and timelines across owners, firms, and correspondents. Prefer this before chaining search, summary, or web research tools for aggregate business questions.","detail":"Description of `run_safe_analytics` changed (58% word delta).","severity":"risky","descriptionDelta":0.5849056603773585},{"kind":"description_changed","tool":"search_claimed_colors","after":"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).","before":"Search or count US trademarks by the colours they claim, parsed from USPTO colour-claim statements. Neither TESS nor its successor offers this. TWO levels: level=\"family\" (16 families; searching \"red\" also finds dark red, maroon, burgundy) and level=\"shade\" (the exact term as claimed, e.g. \"dark red\"). Use match=\"all\" for \"claims at least these colours\", match=\"only\" for \"claims exactly these and nothing else\", match=\"only_bw\" to also tolerate black/white. Set claimed=false to count marks whose statement DISCLAIMS colour. Modes: count, top_owners, list_marks, vocabulary (list the valid families or shades with corpus counts), explain_term (which family a shade belongs to), by_serial (what one mark claims).","detail":"Description of `search_claimed_colors` changed (39% word delta).","severity":"risky","descriptionDelta":0.3877551020408163},{"kind":"description_changed","tool":"search_goods_services","after":"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.","before":"Full-text search over the goods/services recitations of 14M USPTO marks — answers \"who else claims X in their goods?\" (competitive landscape, descriptiveness/crowded-field evidence, ID-drafting precedent). Keyword-based: the text is tokenized and matched against each mark's indexed goods keywords (match_mode all = every keyword must appear, any = at least one). Rows return a short excerpt around the matched clause, NOT the full recitation. mode=count answers \"how many marks claim X\" with class/status breakdowns; mode=top_owners ranks the owners claiming X — neither pulls rows. This searches goods/services TEXT, not mark names — for mark-name conflicts use run_knockout_search or search_trademarks.","detail":"Description of `search_goods_services` changed (30% word delta).","severity":"risky","descriptionDelta":0.30208333333333337},{"kind":"description_changed","tool":"search_mark_statements","after":"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.","before":"Search the statements USPTO records on a trademark: disclaimer (\"no claim is made to PIZZA apart from the mark\"), description (the examiner's written description of the drawing — \"the mark consists of a red and white striped awning\"), translation (foreign wording), prior_marks (claimed ownership of earlier registrations). Answers \"which marks disclaim PIZZA\" and \"which marks are described as stripes\". Colour claims have their own tool (search_claimed_colors); goods text is served by search_trademarks. Modes: count, top_terms, top_owners, list_marks, by_serial (every statement on one mark), statement_types. USE mode=\"top_terms\" with nice_class to RANK the most-disclaimed terms in a class — this answers \"what is the most disclaimed term in Class 9?\" (returns a ranked list with per-term mark counts; disclaimers only). For top_terms use status \"live\" (= registered + pending; the ranking does not separate them — say so in the answer), \"any\", or \"dead\"; a registered-only RANKING is not available. A single term's registered-only count IS available: mode=\"count\" with text=<term> and status=\"registered\" (any length, even \"AI\"). Neither the USPTO public search nor a web search can produce this ranking.","detail":"Description of `search_mark_statements` changed (44% word delta).","severity":"risky","descriptionDelta":0.43511450381679384},{"kind":"description_changed","tool":"search_trademarks","after":"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.","before":"Search the USPTO trademark database by name — a RANKED similarity/prefix search that returns the closest whole-mark matches (14M records). It is NOT an exhaustive contains-scan: multi-word marks that merely contain the queried word rank low and are usually cut (a KWIK query will miss KWIK REWARDS / KWIK KOPY). Thin results here are never proof a name is absent or available; availability questions belong to run_knockout_search.","detail":"Description of `search_trademarks` changed (42% word delta).","severity":"risky","descriptionDelta":0.4225352112676056}],"published_at":"2026-09-24T07:58:13.941Z"},{"slug":"ZV-2026-0876","server_name":"gleanmark.com","severity":"breaking","title":"gleanmark.com: Tool run_dupont_analysis was removed.","summary":"[breaking] Tool run_dupont_analysis was removed. [safe] Description of analyze_prosecution_history changed (24% word delta). [safe] Description of analyze_ttab_proceeding changed (23% word delta). [risky] Description of get_latest_office_action changed (33% word delta). [risky] Description of get_top_filers changed (54% word delta). [risky] Description of research_office_action changed (30% word delta).","changes":[{"kind":"tool_removed","tool":"run_dupont_analysis","detail":"Tool `run_dupont_analysis` was removed.","severity":"breaking"},{"kind":"description_changed","tool":"analyze_prosecution_history","after":"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.","before":"Analyze the full prosecution history of a trademark — narrative timeline of office actions, responses, examiner decisions, and current status, with examiner-behavior patterns. For authenticated users this launches asynchronously (usually done in under a minute; longer for large file histories) and returns a processing handle — then call get_prosecution_history_status to fetch the completed result. Tell the user it is running.","detail":"Description of `analyze_prosecution_history` changed (24% word delta).","severity":"safe","descriptionDelta":0.23636363636363633},{"kind":"description_changed","tool":"analyze_ttab_proceeding","after":"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.","before":"Analyze a TTAB (Trademark Trial and Appeal Board) proceeding in depth — fetches and analyzes proceeding documents, identifies key arguments, and returns a structured summary with timeline, party positions, and strategic assessment. For authenticated full-mode runs this launches asynchronously (typically 1-2 minutes) and returns a processing handle — then call get_ttab_proceeding_analysis_status to fetch the completed result. Tell the user it is running.","detail":"Description of `analyze_ttab_proceeding` changed (23% word delta).","severity":"safe","descriptionDelta":0.22807017543859653},{"kind":"description_changed","tool":"get_latest_office_action","after":"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).","before":"Get the latest office action for a trademark serial number, plus the latest recorded response if one exists, and the VERIFIED refusal grounds (with cited registration numbers) parsed from the OA text. Use refusal_grounds as the authoritative answer to \"what is this OA about / what ground is the refusal\" — never infer the basis from the document title or general knowledge.","detail":"Description of `get_latest_office_action` changed (33% word delta).","severity":"risky","descriptionDelta":0.33333333333333337},{"kind":"description_changed","tool":"get_top_filers","after":"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`).","before":"Get a ranked filer table for a date range, filer type, and optional Nice classes. Use this when the user asks for top filers, top owners, top law firms, or top correspondents by class or date, such as \"Who are the top 10 filers in Class 9 in 2025?\" Returns the ranked rows with per-filer live, registered, and pending counts plus corpus totals. 🔥 ONE CALL. Ask for everything you need in a SINGLE call by setting `limit` (up to 100) and the full date range, including multi-year. Do NOT make several calls to assemble one list: the windows overlap, each call renders its own table, and the answer ends up showing the same firms two or three times. Use `offset` ONLY to reach past rank 100, or to fetch one specific band the user named (ranks 40-45 is `limit: 6, offset: 39`).","detail":"Description of `get_top_filers` changed (54% word delta).","severity":"risky","descriptionDelta":0.5405405405405406},{"kind":"description_changed","tool":"research_office_action","after":"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.","before":"Research the Office Action for a trademark — returns structured refusal categories, latest OA/response context, cited marks, and third-party registrations that support coexistence arguments. For authenticated users this launches asynchronously (typically 1-2 minutes) and returns a processing handle — then call get_office_action_research_status to fetch the completed result. Tell the user it is running. Use this before draft_oa_response for preliminary research.","detail":"Description of `research_office_action` changed (30% word delta).","severity":"risky","descriptionDelta":0.3035714285714286}],"published_at":"2026-09-09T03:02:14.127Z"}]