Search PubMed with full query syntax, filters, and date ranges. Returns PMIDs and optional brief summaries. Supports field-specific filters (author, journal, MeSH terms), common filters (language, species, free full text), and pagination via offset for paging through large result sets.
Invocation
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "pubmed_search_articles",
"arguments": {
"query": "<query>"
}
}
}
Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"description": "PubMed search query (supports full NCBI syntax)"
},
"maxResults": {
"default": 20,
"description": "Maximum results to return",
"type": "integer",
"minimum": 1,
"maximum": 1000
},
"offset": {
"default": 0,
"description": "Result offset for pagination (0-based)",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"sort": {
"default": "relevance",
"description": "Sort order: relevance (default), pub_date (newest first), author, or journal",
"type": "string",
"enum": [
"relevance",
"pub_date",
"author",
"journal"
]
},
"dateRange": {
"description": "Filter by date range",
"type": "object",
"properties": {
"minDate": {
"type": "string",
"pattern": "^$|^\\d{4}([/\\-.]\\d{1,2}([/\\-.]\\d{1,2})?)?$",
"description": "Start date (YYYY/MM/DD, YYYY/MM, or YYYY)"
},
"maxDate": {
"type": "string",
"pattern": "^$|^\\d{4}([/\\-.]\\d{1,2}([/\\-.]\\d{1,2})?)?$",
"description": "End date (YYYY/MM/DD, YYYY/MM, or YYYY)"
},
"dateType": {
"default": "pdat",
"description": "Date type: pdat (publication), mdat (modification), edat (entrez)",
"type": "string",
"enum": [
"pdat",
"mdat",
"edat"
]
}
},
"required": [
"minDate",
"maxDate",
"dateType"
],
"additionalProperties": false
},
"publicationTypes": {
"description": "Filter by publication type (e.g. \"Review\", \"Clinical Trial\", \"Meta-Analysis\"). Multiple values are OR'd — any match qualifies.",
"type": "array",
"items": {
"type": "string"
}
},
"author": {
"description": "Filter by author name (e.g. \"Smith J\")",
"type": "string"
},
"journal": {
"description": "Filter by journal name",
"type": "string"
},
"meshTerms": {
"description": "Filter by MeSH terms. Multiple terms are AND'd — all must match.",
"type": "array",
"items": {
"type": "string"
}
},
"language": {
"description": "Filter by language (e.g. \"english\")",
"type": "string"
},
"hasAbstract": {
"description": "Only include articles with abstracts",
"type": "boolean"
},
"freeFullText": {
"description": "Only include free full text articles",
"type": "boolean"
},
"species": {
"description": "Filter by species",
"type": "string",
"enum": [
"humans",
"animals"
]
},
"summaryCount": {
"default": 0,
"description": "Fetch brief summaries for top N results (0 = PMIDs only)",
"type": "integer",
"minimum": 0,
"maximum": 50
}
},
"required": [
"query",
"maxResults",
"offset",
"sort",
"summaryCount"
],
"additionalProperties": false
}