Patents MCP Server

Give your AI assistant direct access to Derwent patent data. Run fielded boolean and semantic searches, look up patents by publication number or document ID, and summarize results by assignee, country, classification and date.

Server URL
https://ipone.clarivate.com/patents/mcp
Protocol MCP Tools 4

Overview

The server exposes 4 tools in two groups. Use search to find patents, then use the lookup tools to fetch the full detail for the ones you care about.

Add the server URL above to any MCP-compatible client as a remote server. Your assistant then chooses the right tool from the descriptions below. Some clients show tool names with an ipone-patents___ prefix.

Workflows

Find and review patents

  1. 1. Search

    Run a fielded query. Request only the fields you need, and a listref if you may page through results later.

    searchByQuery
  2. 2. Retrieve

    Fetch fuller records for chosen patents: abstract, claims, description, family and citations.

    documentsByPndocumentsById
  3. 3. Page through

    Return more pages, or different fields, for an earlier search without running it again.

    documentsByListref
Example: fielded search (illustrative values)

Summarize a result set

Pass summarize to searchByQuery to aggregate results by one or more fields, for example pa,cc for the top assignees and countries. Use summarizeSize (1 to 100) to control how many values come back for each field.

Look up a known patent

If you already have a publication number, skip the search and call documentsByPn with the fields you want.

Example: look up by publication number (illustrative values)
{
  "tool": "documentsByPn",
  "arguments": {
    "pns": "<publication number>",
    "return_fields": "ti,ab,cl,fam,cipf"
  }
}

Tool reference

Return fields differ between the search tool and the lookup tools. See the field reference for which tags each one returns.

searchByQuery

Fielded boolean searchQuery up to 1,000 characters

Searches patents with a fielded query. Supports boolean operators, wildcards, phrase queries and proximity (ADJn, NEARn). Returns the fields you request, and can return a listref for paging or aggregate results with summarize.

ParameterTypeRequiredNotes
querystringYesFielded query, for example ti=(lithium ADJ battery) AND cc=US. Maximum 1,000 characters. See query syntax.
collectionsstringNoComma-separated collection names. Defaults to all collections.
return_fieldsstringNoComma-separated field tags. Default id. See the field reference.
sizeintegerNoMaximum rows to return. Default 10.
offsetintegerNoZero-based result offset. Default 0.
return_listrefbooleanNoReturn a listref that identifies this search.
listrefstringNoA reference to a previously executed query. Leave unset unless you specifically need it.
search_on_datatypestringNoOne of fld, dwpi or fld_dwpi. Default fld_dwpi.
summarizestringNoComma-separated field tags to aggregate: ad, cc, cpc, ic, in, pa, pd, py.
summarizeSizeintegerNoMaximum aggregation values per field, 1 to 100. Default 10.

Lookups

documentsByPn

Retrieves patent data for one or more publication numbers.

ParameterTypeRequiredNotes
pnsstringYesPatent (publication) numbers.
collectionsstringNoComma-separated collection names. Defaults to all collections.
return_fieldsstringNoComma-separated field tags. Default pn.
sizeintegerNoMaximum rows to return. Default 10.
offsetintegerNoZero-based result offset. Default 0.
listrefstringNoA reference to a previously executed query. Leave unset unless you specifically need it.

documentsById

Retrieves patent data for one or more document GUIDs, such as the id values returned by a search.

ParameterTypeRequiredNotes
idsstringYesDocument GUIDs.
collectionsstringNoComma-separated collection names. Defaults to all collections.
return_fieldsstringNoComma-separated field tags. Default pn.
sizeintegerNoMaximum rows to return. Default 10.
offsetintegerNoZero-based result offset. Default 0.

documentsByListref

Retrieves patent data for a previous search using its listref. Use it to fetch further pages or different fields without running the query again.

ParameterTypeRequiredNotes
listrefstringYesThe listref returned by an earlier searchByQuery call made with return_listref set to true.
collectionsstringNoComma-separated collection names. Defaults to all collections.
return_fieldsstringNoComma-separated field tags. Default pn.
sizeintegerNoMaximum rows to return. Default 10.
offsetintegerNoZero-based result offset. Default 0.

Field reference

Use the two-to-five letter tag, not the display name, in query, return_fields and summarize. Only tags marked for a use are accepted for it.

TagFieldSearchReturned by searchReturned by lookupsSummarize
tiTitle✓✓✓—
abAbstract✓—✓—
clClaims✓✓✓—
dscDescription✓—✓—
pdPublication date✓✓✓✓
pyPublication year✓—✓✓
adApplication date✓✓✓✓
ayApplication year✓—✓—
anApplication number✓✓✓—
panDerwent accession number✓✓✓—
pnPublication number✓✓✓—
ccCountry code✓—✓✓
idDocument identifier—✓✓—
paAssignee✓✓✓✓
inInventor✓✓✓✓
copaOptimized assignee✓✓——
copaaAll optimized assignee——✓—
cuppaUltimate parent✓✓——
cuppaaAll ultimate parent——✓—
cpcCPC classification code✓✓✓✓
icIPC classification code✓✓✓✓
ipcIPC classification code (alternate tag)—✓——
cipCiting patent✓—✓—
cipfCited patents——✓—
cinNon-patent citations✓—✓—
famFamily members——✓—
caidPatent dead/alive status✓✓✓—
aisqSemantic (Derwent AI) search, free text✓———

“Lookups” means documentsByPn, documentsById and documentsByListref. The aisq tag runs a free-text semantic search rather than a keyword match.

Query syntax and limits

  • Fielded queries Write clauses as field=value and combine them with AND, OR and NOT. Phrase, wildcard and proximity searching are supported. When the same field repeats across adjacent AND clauses, prefix it once, as in ti=title AND device AND cc=US.
  • Multiple terms in one field Wrap the value in parentheses. If you give several terms with no operator between them, put ADJ between them, as in ti=(lithium ADJ battery).
  • Proximity, wildcard and truncation limits ADJn and NEARn accept n from 1 to 10. Use no more than 10 wildcard characters per term. Truncation is limited to 5 terms per query. The query itself is limited to 1,000 characters.
  • Collections By default all collections are searched. To narrow the search, pass a comma-separated list of exact collection names. Names are a country code plus a type suffix (apps, grants or utils), for example usapps, epgrants or jputils.
  • Request only what you need Search returns id by default and the lookup tools return pn. Add fields to return_fields deliberately, and refine broad queries rather than paging through everything.
  • Rate limits The four tools share one limit of 50 requests per rolling 60 seconds and 50 concurrent requests. If a call is throttled, wait for retry_after_seconds when it is provided instead of retrying immediately.