Register for an EPO OPS developer account at ops.epo.org to obtain a consumer key and secret; authenticate via OAuth 2.0 client credentials flow to obtain a bearer token.
Retrieve bibliographic data for a known publication number via GET https://ops.epo.org/3.2/rest-services/published-data/publication/epodoc/{publication_number}/biblio; parse the returned EPODOC XML for title, applicant, inventor, filing date, and priority claims.
Query patent family data via the family endpoint to retrieve all equivalent publications across jurisdictions for a given patent.
Retrieve legal status events (grants, lapses, assignments, license registrations) via the legal endpoint for the publication number; parse events to determine if the patent is currently in force.
For prior art searches, use the full-text search endpoint at /rest-services/published-data/search with CQL query syntax; filter by date, classification (IPC/CPC), and applicant.
Supplement with USPTO Patent Center data via the USPTO PatentsView API (patentsview.org/api) for US-specific prosecution history and assignment records.
Known gotchas
OPS rate limits are enforced per minute and per week by quota tier; bulk downloads of large patent families can exhaust weekly quotas — plan batch jobs accordingly and cache results.
Patent legal status data in OPS reflects information as reported by national offices and may lag weeks behind actual status changes; for high-stakes Freedom to Operate analyses, verify current status directly with the relevant national patent office.
CQL query syntax for OPS full-text search is documented but has quirks around proximity operators and phrase matching — test queries interactively on the OPS portal before automating.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp