Google Patents indexes over 120 million patent documents from USPTO, EPO, WIPO, JPO, and 100 more offices, and it is the first stop for any prior-art or competitor search. Getting that data out programmatically is another story. I wanted patent filings inside an agent workflow and found the usual wall: a rich web app with no way in. This post covers the manual route, then the shortcut: the Google Patents API on Apify, which also runs as a Google Patents MCP tool inside Claude and Cursor.
Disclosure: the Apify links in this post are affiliate links. If you run the Actor, I may earn a referral commission at no extra cost to you.
Does Google Patents have an API?
No. Some individual patent offices publish developer APIs, but they stop at their own borders and their own field sets. Google Patents, the index that spans all of them with citation networks and family graphs, has no official public API. So the practical answer to "what is the API for the Google Patents database" is a scraper you call like an API: query in, structured patent records out.
What the Google Patents API returns
The Google Patents API returns patent search results and full patent details as structured JSON: IDs, titles, assignees, inventors, dates, claims, citations, and PDF links.
| Field | Example | Notes |
|---|---|---|
patent_id |
patent/US10123456B2/en |
Also feeds the details lookup |
title, snippet
|
"Solid state battery cell..." |
Per hit |
assignee, inventor
|
["Toyota"], ["..."]
|
Arrays, comma-searchable on input |
filing_date, grant_date
|
2019-01-15, 2021-11-23
|
Plus priority and publication dates |
pdf |
https://patentimages.storage.googleapis.com/... |
Direct document link |
ai_summary |
top assignees and CPC classes with percentages | Optional, for landscaping |
With include_details set, each result also carries a details object: claims text, CPC classifications, backward and forward citations with cited_by counts, worldwide applications, the family graph, and legal events.
Who this is for
IP attorneys running prior-art and freedom-to-operate searches, R&D teams watching what competitors file, valuation analysts feeding forward-citation counts into models, and anyone wiring patent lookup into an AI agent.
The manual way, and where it breaks
The DIY route scrapes patents.google.com with a headless browser. The site is a JavaScript application, so nothing useful arrives over plain HTTP. Search results, claims, citations, and family data live on separate views, which means several rendered pages per patent, multiplied by every patent in your result set. Selectors change, sessions expire, and a hundred-patent landscape becomes thousands of browser page loads. I would not maintain that for money, which is roughly what maintaining it costs.
The faster way: run the Google Patents scraper
Apify Console
- Open the Google Patents API and click Try for free.
- Fill in a query like
graphene battery, optionally withcountry, date filters, andmax_pages. - Run it and download the dataset as JSON, CSV, or Excel.
REST
curl -X POST "https://api.apify.com/v2/acts/johnvc~google-patents-api/runs?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "q": "graphene battery", "country": "US,EP", "after": "filing:20200101", "max_pages": 3, "include_ai_summary": true }'
Run endpoint reference: the Apify API docs.
Search patents in Python
from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("johnvc/google-patents-api").call(
run_input={
"assignee": "Toyota",
"q": "solid state battery",
"after": "publication:20260101",
"max_pages": 2,
}
)
for page in client.dataset(run["defaultDatasetId"]).iterate_items():
for p in page.get("patents", []):
print(p["publication_number"], p["filing_date"], p["title"])
Pull a company's whole patent portfolio
The task Find all patents assigned to OpenAI runs an assignee search and returns the portfolio with numbers, dates, inventors, and statuses, which is the fastest way to size up what a company is actually protecting.
Build a citation network from one patent
Build a patent citation network starts from a single patent_id and returns backward and forward citations per cited patent, the raw material for valuation models and prior-art maps.
Landscape a technology with AI summaries
Get AI patent summaries from Google Patents attaches the ai_summary block to a search: top assignees, inventors, and CPC classes with percentage and year-range frequency, which turns "who owns this space" into one chart.
Track a competitor's new filings on a schedule
Track new solid state battery patents from Toyota pairs a saved task with an Apify Schedule and an after: publication:YYYYMMDD cursor, so each run returns only patents published since the last check.
Use the Google Patents MCP from Claude and Cursor
This is where the Actor earns the MCP in its name. Point Claude, Claude Code, or Cursor at the Apify MCP server (https://mcp.apify.com/?tools=actors,docs,johnvc/google-patents-api) and the agent runs patent searches mid-conversation: "which assignees dominate CPC class H01M this year" becomes a data answer. The task Run patent searches in Claude via a Google Patents MCP shows it live, and claude.ai is where to pick up Claude if you need it.
The example repo
johnisanerd
/
Apify-Google-Patents-API
Google Patents API on Apify - Python (uv) + MCP example. Patent search by keyword, inventor, or assignee, with full details and AI summaries as structured JSON.
📜 Google Patents API: Patent Search and Details in Clean JSON
The efficient, reliable, and developer-friendly way to use the Google Patents API.
Actor page: apify.com/johnvc/google-patents-api Input schema: apify.com/johnvc/google-patents-api/input-schema
The Google Patents API searches Google Patents by keyword, inventor, or assignee and returns clean, structured JSON: title, snippet, inventors, assignees, priority/filing/grant/publication dates, publication number, and a PDF link per patent. Every search also returns an AI summary (top assignees, inventors, and CPC classifications with year-range frequencies). Pull full details (claims, citations, family members, CPC) for each result, or fetch a single patent directly. Built for prior-art search, competitive IP research, patent landscaping, and AI agent workflows.
Video Walkthrough
Quick Start
Prerequisites
- Python 3.11 or higher
- An Apify account and API key (get a free key here)
-
Clone the repository
git clone https://github.com/johnisanerd/Apify-Google-Patents-API.git cd Apify-Google-Patents-API -
Install dependencies with UV
# Install UV if you do not have it: curl…
Python quick start plus MCP setup walkthroughs for Claude, Cursor, and ChatGPT.
FAQ about scraping Google Patents
What does the Google Patents scraper cost?
Pay per event: a $0.02 setup fee per run and $0.02 per page processed, where a search page holds about ten patents and a details lookup counts as one page. max_pages and include_details are the two spend controls, and new Apify accounts include free platform credit.
Can this patent scraper run as an MCP server for Claude?
Yes, that is the headline use. Through the hosted Apify MCP server it appears as a callable tool in Claude, Claude Code, Cursor, or ChatGPT, and every input parameter carries a description the agent can read, so it picks sensible filters on its own.
Can I schedule the patent scraper to watch new filings?
Yes. Save a task per query or assignee, attach a schedule, and pair each run with an after: publication:YYYYMMDD cursor so only fresh filings come back. Start from the Google Patents API.
Does the scraper cover patent offices outside the USPTO?
Yes. It searches the same index Google Patents serves: USPTO, EPO, WIPO, JPO, CN, KR, and 100+ offices, filterable with comma-separated country codes and 16 language codes.
What does the patent scraper not do?
It returns the public record, not legal judgment: dates, claims, citations, and statuses, and you decide what they mean. One practical limit worth knowing: include_details enriches up to 10 patents per run, so for a big result set you loop details lookups by patent_id instead.
More from Truffle Pig Data
Patent research rarely stops at patents. Related Actors: the Google Scholar API for non-patent prior art, the Google Scholar Case Law API for litigation research, and the Google News API for the announcements that trail the filings.
Wrapping up
There is no official Google Patents API, but search, details, citations, and AI summaries are all one JSON call away. Try the Google Patents API, or clone the example repo and run the quick start.

Top comments (0)