Summarize the patent catalogue
aggregate_patentsGroup-by count of patent families across one or two axes. Single axis: set groupByPrimary to 'compound' | 'compoundClass' | 'topic' | 'owner' | 'patentType' | 'office' | 'stage' | 'priorityYear'. Two axes: also set groupBySecondary (e.g. groupByPrimary='compoundClass', groupBySecondary='priorityYear'). Returns ranked buckets with sample citations; a 'priorityYear' axis is ordered by year. A family with two compounds is in two buckets. withoutPrimaryValue is the number of matching families with no value on the primary axis (no linked owner, no compound, no priority date): disclose it when it is large. The 'owner' axis counts only owners that are linked to a Blossom organisation record. Same filter shape as search_patents; filters are optional.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"filters": "<filters>",
"groupByPrimary": "<groupByPrimary>"
},
"name": "aggregate_patents"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| filters | Yes | Same filter shape as search_patents, except publicationNumbers and orderBy. Filters are OPTIONAL for aggregates: pass `{}` to group across all patent families. | |
| groupByPrimary | Yes | Primary axis ("compound" | "compoundClass" | "topic" | "owner" | "patentType" | "office" | "stage" | "priorityYear"). Required. "owner" counts only owners that are linked to a Blossom organisation record. | |
| groupBySecondary | No | Optional second axis for a 2D matrix (e.g. "compoundClass" with "priorityYear", or "owner" with "compound"). The result has rowKey/colKey/count cells and stops at 50 buckets. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |