NCBI E-utilities
liveBiologyHealthNCBI E-utilities — federated Entrez search/fetch across PubMed, Gene, Nucleotide, Protein, Taxonomy, ClinVar, dbSNP, OMIM, etc. Keyless.
Tools
einfoList all available Entrez databases (omit db) or return field definitions and link names for a specific database (e.g. db=pubmed). Use before esearch to discover valid search fields and databases.
No parameters required.
Try it
esearchSearch an Entrez database (e.g. pubmed, gene, nucleotide) by query term and return a list of matching UIDs (up to 10,000) with hit count. Supports pagination via retstart and sort (e.g. pub_date).
No parameters required.
Try it
esummaryFetch document summaries for one or more Entrez UIDs in a given database (e.g. pubmed), returning title, authors, journal, and publication date without the full record body.
No parameters required.
Try it
efetchFull records. Returns text (XML/GenBank/FASTA/…) per rettype.
No parameters required.
Try it
elinkLinks across databases.
No parameters required.
Try it
egqueryGlobal query across all Entrez databases.
No parameters required.
Try it
geo_seriesLook up an NCBI GEO (Gene Expression Omnibus) series by its GSE accession, e.g. GSE75310 -> title, organism, number of samples and their GSM ids, platform (GPL id and name), experiment type (expressio
No parameters required.
Try it
geo_searchSearch NCBI GEO (Gene Expression Omnibus) for expression series (GSE) by keywords, optionally filtered by organism and experiment type. Returns the matching series with title, organism, sample count,
No parameters required.
Try it
Test with curl
The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.
curl -X POST https://gateway.pipeworx.io/ncbi-eutils/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'curl -X POST https://gateway.pipeworx.io/ncbi-eutils/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"einfo","arguments":{}}}'Use with the SDK
Install @pipeworx/sdk to call tools from any TypeScript/Node project.
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("einfo", {});// Or ask in plain English:
const answer = await px.ask("ncbi e-utilities — federated entrez search/fetch across pubmed, gene, nucleotide, protein, taxonomy, clinvar, dbsnp, omim, etc");