GoVeda Patent
Search and analyze patents
- Category
- Data & Analytics
- Primary Subcategory
- IP, Patent & Trademark Tools
Integration details
Description
GoVeda Patent helps users search global patent records, retrieve and compare patent content, locate relevant passages inside long patents, find prior art for known patents, and generate AI-assisted novelty reports. Use it for patentability review, freedom-to-operate research, or patent landscape exploration. Results can include ranked patent matches, abstracts, claims, descriptions, dates, parties, current legal status, legal-event history, citations, family data, CPC/IPC classifications, and standardized assignee names.
- Integration type
- Plugin
- Verification status
- Not applicable
- Platform
- ChatGPT
- Primary Subcategory
- IP, Patent & Trademark Tools
- Secondary Subcategories
- None listed
- Brand
- GoVeda
- Access
- Account required
- First tracked
- 2026-06-09
- Tool count
- 23
- Geography
- US
The Primary Subcategory used for this profile’s headline score.
Other Subcategories where the Integration is listed.
Get alerts for GoVeda Patent
Get updates when GoVeda Patent’s Discoverability Score or category rank changes.
ChatGPT Plugin Discovery Score
ChatGPT Plugin discovery is coming soon
ChatGPT can surface a Plugin when it matches a user's request.Your Plugin Discovery Score measures how often yours appears.
No spam. Unsubscribe any time.
What discovery looks like

Competing in ChatGPT IP, Patent & Trademark Tools
View Category23 tools agents can invoke
Get up to 25 patents as structured data without rendering a card. More efficient than calling get_patent repeatedly; use show_patent when the user should see a card or comparison table. Use sections to request only the parts needed. Available sections: metadata, legal_status, abstract, claims, description, dates, parties, classifications, legal_events, family. Use 'all' for everything. `legal_status` selects the current status returned alongside fixed metadata; `legal_events` selects the separately paged history. Section-owned response fields: legal_status → legal_status; abstract → abstract; claims → claims; description → description; dates → filing_date, publication_date, dates; parties → inventors, current_assignees, original_assignees, applicant; classifications → classifications; legal_events → legal_events; family → family_scope, family. Choose sections based on user intent: - Titles or basic record metadata only → ["metadata"] - Patent overview → ["abstract", "dates"] (default) - Detailed comparison → ["abstract", "claims", "description"] - Inventor/assignee comparison → ["parties"] - Current legal status → ["legal_status"] - Legal/expiry history → ["legal_events", "dates"] - Related patents → ["family"] - Everything → ["all"] Fixed metadata accompanies every successful row, so do not add 'metadata' to another selection; if a host does, the redundant value is ignored. Long text uses max_chars per row (default 8,000; range 1,000–64,000), then fairly divides a 60,000-character aggregate ceiling across every requested row. List sections use limit (default 50; range 1–200). family_scope selects simple/DOCDB (default) or extended/INPADOC. Returns a PatentBatch object: {"results": [BatchPatentContent, ...]}. On success publication_number, url, and publication_type are always set when available (regardless of sections), while title may be null when the source document has no title. Use sections=['metadata'] to return only those fixed metadata fields. Fields belonging to unrequested sections are omitted; a requested section that completed without source data is returned explicitly as null or an empty list. On row failure, the row carries a structured error with message/code/suggestion. If the whole batch fails, PatentBatch.error is set and results is empty. When a requested section is temporarily unavailable, its field is omitted and the failure is reported in that row's `section_errors`.
batch_get_patents
Check the current status and progress of a novelty report. Pass the report_id from generate_novelty_report. Returns status and progress details only — use get_report_summary for the full assessment once status is 'completed'. Polling guidance: wait 30s if pending/searching/analyzing_query/analyzing_final, wait 60s if analyzing_patents.
get_report_status
Check status of a search or prior art analysis. Returns results if completed. Pass the search_id from semantic_patent_search or prior_art_search. Each call returns the current state without waiting for search completion. If status is reranking, wait 30s and retry. Results include publication_number, title, relevance score, and URL.
get_search_status
Verify canonical assignee (company) names exist and count their patents. Deterministic — no LLM, no web; same input returns the same output. USE FOR: confirming a company is a stored assignee and how many patents it holds, optionally narrowed by date/jurisdiction/classification/status filters, optionally broken down per jurisdiction. NOT FOR: resolving a free-text company name (use lookup_party first), or fetching the patents themselves (use party_patents). Call lookup_party to resolve each name. Matching is exact except that each name also matches its ALL-CAPS storage form, covering patent offices that retain raw applicant casing; other spelling, punctuation, and transliteration variants are not inferred. An unknown name is reported per-name (exists=false, patent_count=0), never as an error; `exists` distinguishes an unknown name from a real one filtered to zero. Batch up to 50 names per call, counted individually. `total` is the union over patents that have a publication date (a patent held by several listed names counts once) — list a company's stored variants together for a merged view. breakdown='authority' adds per-jurisdiction counts.
party_count
Find available patent publication candidates for one or more unresolved references. This tool returns possibilities for review; it does not prove that a candidate is the same patent as the supplied reference and does not select a candidate.
discover_patent_references
Generate a novelty/patentability assessment for an invention idea. Submits async report. NOT for: simple patent search (use semantic_patent_search). Async: returns report_id immediately. Poll with get_report_status. 5-15 minutes typical. IMPORTANT: The report is AI-assisted and is NOT legal advice. Always inform the user that results should be reviewed by a qualified patent attorney.
generate_novelty_report
Get BACKWARD non-patent-literature (NPL) citations — papers, books, standards etc. THIS patent cites. NPL exists only on the backward direction. Paginated: returns one page; use pagination.next_offset to fetch more. Returns a BackwardNplCitationsPage: 'citations' is a list of {text, source, category, author, title, date}. On failure check the nested error object for message/code/suggestion/details.
get_patent_backward_npl_citations
Get BACKWARD patent citations — patents THIS patent cites (patents only; for NPL use get_patent_backward_npl_citations). 'cited_in' is the authoritative structure for every source family member, citation-report source, category, and related-claims occurrence. 'categories' is a derived list of unique non-empty cited_in category codes ordered X, Y, A, then other categories. ORDER uses examiner-category priority where available: X first, then Y, then A, then citations without X/Y/A; ties use publication number. This prioritizes search-report classifications, not semantic similarity. Complete category provenance remains in 'cited_in'. Paginated: returns one page; use pagination.next_offset to fetch more. Returns a BackwardPatentCitationsPage: 'citations' is a list of {publication_number, url, categories, cited_in, title, publication_date, legal_status, publication_type}. When a row's 'url' is present, render it as a Markdown link [publication_number](url). On failure check the nested error object for message/code/suggestion/details.
get_patent_backward_patent_citations
Get content of a specific patent by publication number. Use 'sections' to request only the parts needed. Available sections: metadata, legal_status, abstract, claims, description, dates, parties, classifications, legal_events, family. Use 'all' for everything. `legal_status` selects the current status returned alongside fixed metadata; `legal_events` selects the separately paged history. Section-owned response fields: legal_status → legal_status; abstract → abstract; claims → claims; description → description; dates → filing_date, publication_date, dates; parties → inventors, current_assignees, original_assignees, applicant; classifications → classifications; legal_events → legal_events; family → family_scope, family. Choose sections based on user intent: - Title or basic record metadata only → ["metadata"] - Patent overview → ["abstract", "dates"] (default) - Detailed technical analysis of selected parts → ["abstract", "claims", "description"] - The complete text, to read, summarize, or compare the whole patent → use get_patent_full_text - Who invented/owns it → ["parties"] - Current legal status → ["legal_status"] - Legal/expiry history → ["legal_events", "dates"] - Related patents → ["family"] - Everything → ["all"] Fixed metadata accompanies every successful result, so do not add 'metadata' to another selection; if a host does, the redundant value is ignored. NOT for: topic search (use semantic_patent_search), multiple patents (use batch_get_patents), reading the complete text (use get_patent_full_text, one call without cursors), locating a term inside one patent (use search_patent_content). Long text (abstract, claims, description) shares one body-text char budget (`max_chars`, default 16000; range 1000-64000) that waterfalls in that order; anything cut or omitted is itemized in `truncations` with a `next_cursor`. Calls remain bounded and do not auto-continue: use this tool when you can stop once the evidence is sufficient. When the complete text is needed, call get_patent_full_text instead of following cursors. `completion_required` is deprecated and kept only for compatibility. A single-section call gets the whole budget, and cuts land on whole claims / paragraph boundaries — a paragraph longer than the remaining budget is returned whole rather than split, so `description` can exceed max_chars; its truncations entry reports the actual shown_chars. `max_chars` does not cap the entire serialized tool output: patent metadata, structured sections, progress/truncation fields, and JSON framing add overhead outside the body-text budget. List sections (family, legal_events) page independently via `limit` (default 50, max 200); when a list has more members, its truncations entry carries a non-null next_cursor. For family, `family_scope` selects simple/DOCDB (default) or extended/INPADOC. Paragraph-precise fetch: pass `paragraph_numbers` (max 20, implies description) with values from a previous response — only paragraphs the source document itself numbers can be addressed this way. Returns structured data without rendering a card; use `show_patent` for display. Publication numbers use hyphenated UCID format (for example WO-2015179075-A1), including family members. On success: publication_number, url, and publication_type are always set when available (regardless of sections); title may be null when the source document has no title. Use sections=['metadata'] to return only those fixed metadata fields. Fields belonging to sections that were not requested are omitted. A requested section that completed without source data is returned explicitly as null or an empty list. If a requested section is temporarily unavailable, its data field is omitted, other content is preserved, and `section_errors` identifies the section with code `UPSTREAM_UNAVAILABLE` and `retryable: true`. A successfully fetched family with no members is `family: []`. On failure, nested `error.{message,code,suggestion,details}` is set instead and patent data fields are omitted; callers should check `error` before reading patent data.
get_patent
Get FORWARD citations — patents that CITE this patent (patents only, no NPL). Paginated: returns one page; use the returned pagination.next_offset to fetch more. Forward citations can number in the thousands for foundational patents, so page through rather than expecting everything in one call. USE FOR: who-cites-this, impact/influence, downstream patents. For what THIS patent cites, use get_patent_backward_patent_citations / get_patent_backward_npl_citations instead. ORDER IS BY PUBLICATION NUMBER, not relevance or date — the first page is NOT the most important citing art. Returns a ForwardCitationsPage: 'citations' is a list of {publication_number, url, source, title, publication_date, legal_status, publication_type}; 'pagination' carries total/has_more/next_offset. When a row's 'url' is present, render it as a Markdown link [publication_number](url). On failure check the nested error object for message/code/suggestion/details.
get_patent_forward_citations
Read a patent's complete abstract, claims, and/or description as one Markdown body in a single call. Omit `sections` to read all three, or choose any combination. The title, publication number, and GoVeda link are always included; sections come in abstract, claims, description order with as-filed paragraph numbers, headings, lists, tables, and text formulas preserved. Use this when the task needs the whole text — reading, summarizing, or comparing an entire patent, or most of its description. There is no cursor and no size limit, so the result can be long; for selected sections, specific paragraphs, or bibliographic data use get_patent, and to find where a term appears without reading everything use search_patent_content. Text only: figures and image-only formulas or chemical structures are not included. Figure references in the prose, such as the brief description of the drawings, remain; to view figures, give the user the patent's `url`. A requested section without text is listed in `unavailable_content`. On failure, nested `error.{message,code,suggestion,details}` is set instead; check `error` before reading `markdown`.
get_patent_full_text
Get the transfer (assignment) history of a patent — who owned it and when ownership changed. Combines USPTO reassignment records (US patents) and transfer legal events (CN/EP/... patents) into one timeline, newest first. Each event has from_parties (previous owners), to_parties (new owners), date, and details. USE FOR: ownership chain, M&A due diligence, checking whether a patent changed hands. NOT FOR: current owner only (use get_patent with sections=["parties"]). An empty transfers list means no transfer was recorded.
get_patent_transfers
Get language variants of a patent's text (title, abstract, claims, description) as stored in the corpus — e.g. Chinese patents carry both ZH and EN text. USE FOR: reading a patent in a specific language, checking which languages are available for a patent. NOT FOR: on-demand machine translation — when the requested language is not stored, the best available variant is returned with is_fallback=true. Check available_languages in the response. TIP: if a field is missing entirely (e.g. an EP-B1 with no abstract), set family_fallback=true to borrow it from a patent-family member.
get_patent_translations
Get detailed analysis for specific patents from a completed novelty report. Pass patent publication numbers from the patent_directory in get_report_summary. Returns the full analysis for each patent including relevance explanation, novelty features, blocking potential, and key differences. Max 10 patents per call. Pass as a list of publication number strings. Only works when report status is 'completed'. Use get_report_status to check first.
get_report_patent_analysis
Get the executive summary and patent directory of a completed novelty report. Returns the full patentability assessment (verdict, threats, recommendations) plus one relevance-sorted page of the analyzed-patent directory (title, relevance score). Use directory_pagination.next_offset to fetch every page. Use get_report_patent_analysis to dig into specific patents from the directory. Only works when report status is 'completed'. Use get_report_status to check first. IMPORTANT: The report is AI-assisted and is NOT legal advice. Always show the disclaimer field to the user.
get_report_summary
Page the patents of canonical assignee (company) names, publication date descending. Synchronous — no task submission or polling. Deterministic over an unchanged index. USE FOR: enumerating a company's patent portfolio (optionally filtered by date/jurisdiction/classification/status) as a clean, paginated list. NOT FOR: resolving a free-text company name (use lookup_party first), or semantic / topic search (use semantic_patent_search). Call lookup_party to resolve each name. Matching is exact except that each name also matches its ALL-CAPS storage form; other spelling, punctuation, and transliteration variants are not inferred. An unknown name simply contributes nothing (no error); a filter matching nothing returns an empty list. Up to 50 names per call. Pagination: pass the previous response's `next` token as `cursor`; `next=null` means done. `limit` is 1-200 per page (default 100). Replaying a cursor on an unchanged index is idempotent. `total` equals party_count.total under the same conditions. Items are summaries (publication_number, dates, jurisdiction, canonical legal status, publication type, language, assignees, IPC/CPC — no title). Fetch full content per publication_number with get_patent.
party_patents
Look up standardized assignee (company) names for use as exact-match values in the `current_assignees` filter of `search_conditions`. USE FOR: resolving a free-text company name (e.g., 'Qualcomm') into the canonical name(s) actually stored on patent records, before passing them to semantic_patent_search or prior_art_search via search_conditions. NOT FOR: looking up inventor names — assignee/company names only. WHY THIS IS REQUIRED: the current_assignees filter is an exact-string match. Variants like 'Qualcomm', 'Qualcomm Inc.', 'QUALCOMM INCORPORATED' refer to the same entity but only one form is stored. Always look up first. Hierarchy expansion (`expand_hierarchy=true`): resolves the ultimate corporate owner and returns all subsidiary names in `all_names`. Pass the full `all_names` list as the value of a `current_assignees` filter to cover an entire corporate group. Hierarchy is only available for entities in the curated dictionary (mostly Russell 3000 / S&P 500 / Nikkei 225 / DAX 40 corporations). Input: free-text company name in any language. Use the **full** official name — common abbreviations may not match. Canonical input: `{"query":"ASML Holding N.V.","limit":5}`. The optional `name` field is a compatibility alias for `query`; provide exactly one. Resolve one company per call.
lookup_party
Look up CPC/IPC patent classification codes by keyword, symbol, or technology description. USE FOR: - Explaining what a known CPC/IPC code means (e.g., 'what is H04L 9/32?'). Always look the code up here instead of answering from memory — classifications are periodically revised and remembered definitions may be outdated or wrong. The tool returns the authoritative title plus the full hierarchy. - Finding the correct CPC/IPC codes to use as filters in semantic_patent_search or prior_art_search. NOT FOR: searching patents directly (use semantic_patent_search). Uses the classification DB's default search (exact-symbol boost + semantic vector search in parallel). Results are ranked by relevance; score and match_type are surfaced so the agent can reason about match confidence. Supports both precise code lookups (e.g., 'H01L', 'H04L 9/32') and natural language descriptions (e.g., 'semiconductor chip packaging').
lookup_classifications
Find prior art for a specific patent. Analyzes the patent's content and finds similar earlier patents. USE FOR: finding patents similar to a KNOWN patent (you have the publication number). NOT FOR: searching by topic or description (use semantic_patent_search). Accepts non-standard patent number formats — auto-resolves to standard UCID. Optional filters via search_conditions: dates, country, language, current_assignees (current owner) / original_assignees (owner at filing time, differs when reassigned), classifications, canonical legal status, and publication type. Supports AND/OR logic — to match a company as either current or original assignee, OR the two fields in a nested group. Use lookup_classifications to find correct CPC/IPC codes before filtering. Use lookup_party to resolve a free-text company name to its standardized form before using the current_assignees / original_assignees filters (exact-string match). Async: returns search_id immediately. Poll with get_search_status. 3-5 minutes typical.
prior_art_search
Record non-sensitive widget hydration field counts for replay diagnostics. This app-only tool accepts counts and categorical values only; never send patent numbers, titles, queries, user identifiers, or result content.
goveda___report_widget_hydration
Full-text search a specific patent's parsed body and return the most relevant paragraphs plus its canonical GoVeda link in the top-level `url`. Companion to get_patent (which reads sections sequentially). Use this to LOCATE where a term / concept appears in a long patent — e.g. after picking a prior-art patent, find the paragraphs that describe a specific feature to cite, then fetch them precisely with get_patent(paragraph_numbers=[...]). match='relevance' (default): case-insensitive tokenized search ranked by term frequency, with a phrase-match boost for "quoted phrases"; -word EXCLUDES every paragraph containing that word. match='exact': literal case-insensitive substring; operators are not interpreted. Search covers original-language text as it appears in the patent. For non-English patents, translate the query to the patent's language first. Each hit carries section, para_num (as-filed paragraph number, e.g. '0034'; null for abstract/claims and unnumbered paragraphs — quote those by text), text, score. Cursor-paginated: returns total_matches / has_more / next_cursor. To read the complete text use get_patent_full_text; to read selected sections or paragraphs use get_patent.
search_patent_content
Search patents by technology description or invention concept. Semantic search across 220M+ global patents, returns ranked results. USE FOR: finding patents about a topic, technology, or invention concept. NOT FOR: finding prior art of a known patent (use prior_art_search), fetching a specific patent by number (use get_patent). Optional filters via search_conditions: dates, country, language, current_assignees (current owner) / original_assignees (owner at filing time, differs when reassigned), classifications, canonical legal status, and publication type. Supports AND/OR logic — to match a company as either current or original assignee, OR the two fields in a nested group. Use lookup_classifications to find correct CPC/IPC codes before filtering. Use lookup_party to resolve a free-text company name to its standardized form before using the current_assignees / original_assignees filters (exact-string match). Polls internally until results are ready (5-15s typical, 180s max).
semantic_patent_search
Show the interactive patent widget: one publication number renders a patent card; several render a comparison table. Use batch_get_patents for pure structured data. On success publication_number and url are set, while title may be null when the source document has no title.
show_patent
How do I improve a ChatGPT Plugin's discoverability?
The levers are the listing surface agents actually read: names, descriptions, keywords, tool metadata, and registry health. Which lever matters depends on where discovery breaks, which is what continuous measurement shows.
What are GoVeda Patent alternatives on ChatGPT?
As of 2026-09-28, GoVeda Patent competes with Clarivate IPOne CM Trademarks, Digip, FindIp, Goalie, Lightbringer, Patent Connector, Patlytics, Patsnap Patent Paper Search, Trademark Dashboard, Trademark Engine in ChatGPT IP, Patent & Trademark Tools, ranked by public Discoverability Score.
Where is this profile measured?
This profile uses the geography attached to the latest public registry snapshot: US. Locale tags are intentionally omitted.