pubmed_search
Search PubMed with structured metadata extraction to retrieve biomedical literature articles, abstracts, and publication details for research analysis.
Instructions
Search PubMed with enhanced metadata extraction.
This specialized wrapper provides enriched PubMed search results with structured article metadata.
Args: query: PubMed search query (supports all Entrez query syntax) max_results: Maximum results to return (default: 10) sort: Sort order - "relevance", "pub_date", "first_author" (default: "relevance") year_start: Filter by publication year start (e.g., 2020) year_end: Filter by publication year end (e.g., 2024) use_cache: Whether to use cached results (default: True, TTL: 1 hour)
Returns: Dictionary containing: - articles: List of article dictionaries with: - pmid: PubMed ID - title: Article title - abstract: Full abstract text - authors: List of author names - journal: Journal name - year: Publication year - date: Publication date - doi: DOI (if available) - pmc_id: PMC ID (if available) - count: Number of articles returned - total_found: Total matches in PubMed - cached: Whether result was from cache (if use_cache=True)
Examples: >>> pubmed_search("BRCA1 AND breast cancer", max_results=5) >>> pubmed_search("Smith J[Author]", sort="pub_date") >>> pubmed_search("diabetes", year_start=2020, year_end=2024, max_results=20)
Notes: - Uses comprehensive Entrez query syntax - Returns full abstracts when available - Rate limited (3 req/sec or 10 req/sec with API key) - Cached results have 1 hour TTL to balance freshness and API usage
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| max_results | No | ||
| sort | No | relevance | |
| year_start | No | ||
| year_end | No | ||
| use_cache | No |