uspto-database
affaan-m/everything-claude-code
Official USPTO patent and trademark record lookup with reproducible research logging.
What is uspto-database?
This skill provides structured workflows for querying USPTO patent and trademark databases through official APIs (PatentSearch, TSDR, File Wrapper, assignments). Use it when you need verified IP records, application status, ownership history, or prior-art research with audit trails.
- Search granted patents and pre-grant publications via PatentSearch API with JSON query filters
- Check trademark status, documents, and prosecution history via TSDR API
- Retrieve patent application file-wrapper data and prosecution history from USPTO Open Data Portal
- Query patent and trademark assignment records for ownership verification
- Build reproducible research logs with source, date, query, and result metadata
- Cross-reference official USPTO records against secondary sources like Google Patents and Lens.org
How to install uspto-database
npx skills add https://github.com/affaan-m/everything-claude-code --skill uspto-database- USPTO API key (PatentSearch and/or TSDR) stored in environment variable (USPTO_API_KEY or PATENTSVIEW_API_KEY)
- Access to USPTO Open Data Portal, PatentSearch, or TSDR endpoints
- Familiarity with patent/trademark identifiers (patent numbers, application numbers, serial numbers)
How to use uspto-database
- 1.Set your USPTO API key in an environment variable (e.g., export PATENTSVIEW_API_KEY=...)
- 2.Identify the appropriate endpoint: PatentSearch for patents, TSDR for trademarks, ODP for file-wrapper data, or assignment search for ownership records
- 3.Build a JSON query with explicit filters (date range, assignee, classification, etc.) and request only needed fields
- 4.Execute the API request with proper headers and rate-limit handling
- 5.Record the search in a reproducible log table with source, date, query, filters, and result count
- 6.Review results and cross-check against official record detail pages before citing
Use cases
- Verify patent ownership and assignment chain before licensing or acquisition due diligence
- Search for prior art by assignee, inventor, classification, and date range to support patentability analysis
- Check trademark application status and document history during brand clearance review
- Build IP landscape reports with deterministic, auditable query logs for reproducibility
- Retrieve prosecution history and file-wrapper documents for patent litigation preparation
- Patent attorneys and IP counsel
- IP researchers and analysts
- Product teams conducting freedom-to-operate analysis
- Due diligence professionals evaluating patent portfolios
- Inventors and entrepreneurs researching prior art
uspto-database FAQ
Always start with official USPTO sources (PatentSearch, ODP, TSDR) for authoritative data. Use secondary sources only as convenience indexes; cross-check the official record when the answer matters.
Store API keys in environment variables or a secret manager, never in committed files, shell history, or output logs. Use os.environ to access them in code.
A table with columns for Source, Date searched, Identifier/query, Filters applied, Result count, and Notes. This ensures your research can be audited and replicated.
No. This skill is for data gathering and record verification only. Treat findings as facts to be reviewed by qualified IP counsel; avoid making legal conclusions yourself.
Respect documented rate limits for each API endpoint, especially for PDF, ZIP, and bulk downloads. Paginate deterministically and space requests appropriately.
Full instructions (SKILL.md)
Source of truth, from affaan-m/everything-claude-code.
name: uspto-database description: USPTO patent and trademark data workflow for official record lookup, PatentSearch queries, TSDR checks, assignment data, and reproducible IP research logs. metadata: origin: community
USPTO Database
Use this skill when a task needs official United States patent or trademark records from USPTO systems.
When to Use
- Searching granted patents or pre-grant publications.
- Checking patent application status, file-wrapper data, assignments, or public prosecution history.
- Looking up trademark status, documents, or assignment history.
- Building reproducible prior-art, portfolio, or IP landscape research logs.
- Comparing USPTO records with secondary tools such as Google Patents, Lens.org, Semantic Scholar, or company patent pages.
Do not use this skill to give legal advice. Treat it as a data-gathering and record-verification workflow.
Source Selection
Prefer official USPTO or USPTO-supported surfaces first:
- Open Data Portal (ODP): current home for migrated USPTO datasets and APIs.
- Patent File Wrapper: public patent application bibliographic data and file wrapper records.
- PatentSearch API: PatentsView search API for granted patents and pre-grant publication datasets.
- TSDR Data API: trademark status and document retrieval.
- Patent and Trademark Assignment Search: ownership transfer records.
- PTAB data in ODP: Patent Trial and Appeal Board proceedings.
Use secondary sources only as convenience indexes. When the answer matters, cross-check the official record.
Authentication and Secrets
Many USPTO API flows require an API key. Store keys in environment variables or a secret manager, never in committed files or pasted transcripts.
Common environment names:
export USPTO_API_KEY="..."
export PATENTSVIEW_API_KEY="..."
For PatentSearch, send the key with the X-Api-Key header. For TSDR, follow
the current USPTO API Manager instructions and rate-limit guidance.
PatentSearch Workflow
Use PatentSearch for broad patent and pre-grant publication search when the question is about trends, inventors, assignees, classifications, dates, or portfolio slices.
Workflow:
- Identify the endpoint from the current PatentSearch reference or Swagger UI.
- Build a JSON query with explicit filters.
- Request only the fields needed for the analysis.
- Sort and paginate deterministically.
- Record the endpoint, query body, date, data currency note, and result count.
Python request skeleton:
import os
import requests
API_KEY = os.environ["PATENTSVIEW_API_KEY"]
BASE = "https://search.patentsview.org/api/v1"
payload = {
"q": {
"_and": [
{"patent_date": {"_gte": "2024-01-01"}},
{"assignees.assignee_organization": {"_text_any": ["Google", "Alphabet"]}},
]
},
"f": ["patent_id", "patent_title", "patent_date"],
"s": [{"patent_date": "desc"}],
"o": {"per_page": 100, "page": 1},
}
response = requests.post(
f"{BASE}/patent/",
headers={"X-Api-Key": API_KEY, "Content-Type": "application/json"},
json=payload,
timeout=30,
)
response.raise_for_status()
print(response.json())
Before reusing a query, verify current endpoint names, field paths, request parameters, and API-key availability in the live PatentSearch docs.
Trademark/TSDR Workflow
Use TSDR when the task needs trademark case status, documents, images, owner history, or prosecution events.
Workflow:
- Normalize the serial number or registration number.
- Check the current TSDR API instructions and required API-key header.
- Fetch status first, then documents only if needed.
- Respect the lower rate limit for PDF, ZIP, and multi-case downloads.
- Capture retrieval date and serial/registration identifier in the output.
For large trademark pulls, prefer documented bulk-data flows rather than screen-scraping public pages.
File Wrapper and Prosecution History
For application status, transaction history, and prosecution documents:
- Start with ODP Patent File Wrapper search.
- Use exact identifiers when available: application number, publication number, patent number, or party name.
- Record whether the record is a granted patent, pre-grant publication, or pending application.
- Cross-check document dates and status against the record detail page before citing them.
Assignment Workflow
For patent or trademark ownership:
- Search official assignment data by patent/application/registration number, assignor, assignee, or reel/frame when available.
- Record conveyance text, execution date, recordation date, and parties.
- Distinguish assignment records from current legal ownership conclusions.
- If ownership is material, flag the result for attorney or subject-matter review.
Reproducible Output
Every USPTO research pass should include a log table:
| Source | Date searched | Identifier/query | Filters | Results | Notes |
| --- | --- | --- | --- | ---: | --- |
| PatentSearch | 2026-05-11 | `assignee=Alphabet AND date>=2024` | patent endpoint | 118 | API docs checked before run |
| TSDR | 2026-05-11 | `serial=90000000` | status only | 1 | API-key flow, no document bulk pull |
For final writeups, separate:
- official record facts
- inferred analysis
- secondary-source convenience matches
- unresolved gaps or records that require legal review
Review Checklist
- Did you use an official USPTO or USPTO-supported source first?
- Did you verify current endpoint and field names before running code?
- Are API keys kept out of files, shell history, and output logs?
- Does the query log include the date searched and exact request shape?
- Are rate limits respected?
- Are legal conclusions avoided or explicitly escalated?
- Are secondary sources labeled as secondary?
References
Related skills
More from affaan-m/everything-claude-code and the wider catalog.

verification-loop
Comprehensive verification system for Claude Code sessions covering builds, types, linting, tests, security, and diffs.

video-editing
AI-assisted editing pipeline for cutting, structuring, and augmenting real footage using FFmpeg, Remotion, and ElevenLabs.

videodb
Ingest, index, search, and edit video and audio with real-time desktop capture and live stream monitoring.

visa-doc-translate
Translate visa documents to English and generate bilingual PDFs automatically

vite-patterns
Vite build tool patterns for config, plugins, HMR, env variables, and optimization.

windows-desktop-e2e
E2E testing for Windows native desktop apps (WPF, WinForms, Win32/MFC, Qt) using pywinauto and UI Automation.