You're viewing a demo portfolio

Join the waitlist
PRSM

pubmed_search_articles

Active

Tool of io.github.cyanheads/pubmed-mcp-server

declared in 2.9.8

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.

Parameters schema

{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "query"
  ],
  "properties": {
    "sort": {
      "enum": [
        "relevance",
        "pub_date",
        "author",
        "journal"
      ],
      "type": "string",
      "default": "relevance",
      "description": "Sort order: relevance (default), pub_date (newest first), author, or journal"
    },
    "query": {
      "type": "string",
      "minLength": 1,
      "description": "PubMed search query (supports full NCBI syntax)"
    },
    "author": {
      "type": "string",
      "description": "Filter by author name (e.g. \"Smith J\")"
    },
    "offset": {
      "type": "integer",
      "default": 0,
      "maximum": 9007199254740991,
      "minimum": 0,
      "description": "Result offset for pagination (0-based)"
    },
    "journal": {
      "type": "string",
      "description": "Filter by journal name"
    },
    "species": {
      "enum": [
        "humans",
        "animals"
      ],
      "type": "string",
      "description": "Filter by species"
    },
    "language": {
      "type": "string",
      "description": "Filter by language (e.g. \"english\")"
    },
    "dateRange": {
      "type": "object",
      "required": [
        "minDate",
        "maxDate"
      ],
      "properties": {
        "maxDate": {
          "type": "string",
          "pattern": "^$|^\\d{4}([/\\-.]\\d{1,2}([/\\-.]\\d{1,2})?)?$",
          "description": "End date (YYYY/MM/DD, YYYY/MM, or YYYY); empty string disables this bound"
        },
        "minDate": {
          "type": "string",
          "pattern": "^$|^\\d{4}([/\\-.]\\d{1,2}([/\\-.]\\d{1,2})?)?$",
          "description": "Start date (YYYY/MM/DD, YYYY/MM, or YYYY); empty string disables this bound"
        },
        "dateType": {
          "enum": [
            "pdat",
            "mdat",
            "edat"
          ],
          "type": "string",
          "default": "pdat",
          "description": "Date type: pdat (publication), mdat (modification), edat (entrez)"
        }
      },
      "description": "Filter by date range. The filter is applied only when both `minDate` and `maxDate` are non-empty; either one empty disables the entire date range."
    },
    "meshTerms": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Filter by MeSH terms. Multiple terms are AND'd — all must match."
    },
    "maxResults": {
      "type": "integer",
      "default": 20,
      "maximum": 1000,
      "minimum": 1,
      "description": "Maximum results to return"
    },
    "hasAbstract": {
      "type": "boolean",
      "description": "Only include articles with abstracts"
    },
    "freeFullText": {
      "type": "boolean",
      "description": "Only include free full text articles"
    },
    "summaryCount": {
      "type": "integer",
      "default": 0,
      "maximum": 50,
      "minimum": 0,
      "description": "Fetch brief summaries for top N results (0 = PMIDs only)"
    },
    "publicationTypes": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Filter by publication type (e.g. \"Review\", \"Clinical Trial\", \"Meta-Analysis\"). Multiple values are OR'd — any match qualifies."
    }
  }
}

What this tool wraps· 1 endpoint

min confidence0.700.50

Parent server

io.github.cyanheads/pubmed-mcp-server

https://github.com/cyanheads/pubmed-mcp-server

2/7 registries
View full server →
pubmed_search_articles — io.github.cyanheads/pubmed-mcp-server — PRSM MCP