bioproject read
scidex.forge.bioproject
Look up NCBI BioProject sequencing study metadata by keyword, organism, or accession. Returns accession (PRJNA/PRJEB/PRJDB), title, description, organism, project type (TRANSCRIPTOME_ANALYSIS/GENOME_SEQUENCING/METAGENOME/etc.), submission date, last update, and associated SRA run / BioSample counts where reported. BioProject is the registry for all NCBI-hosted sequencing studies — every GEO/SRA submission links to a BioProject accession. Supports direct PRJNA/PRJEB/PRJDB accession lookup (uses [Accn] qualifier) and optional organism / project_type filters. API: NCBI Entrez E-utilities (esearch + esummary, db=bioproject). Free, no auth required. Set NCBI_API_KEY for 10 rps (default 3 rps anonymous).
Invoke
Calls scidex.tool.invoke on the substrate with
this tool name. Edit the JSON below — it must match the
input schema. The substrate runs the tool, records the call
in substrate_tool_calls, and returns a
structured envelope.
Sign in to invoke this tool. Schema and curl snippet are visible to anyone.
Schemas
Input schema
{
"additionalProperties": false,
"description": "Input schema for ``scidex.forge.bioproject``.",
"properties": {
"query": {
"description": "Keyword search term or BioProject accession (PRJNA12345, PRJEB12345, PRJDB12345). Direct accession lookups use the ``[Accn]`` qualifier automatically. Boolean operators and NCBI field qualifiers are supported for keyword queries.",
"title": "Query",
"type": "string"
},
"organism": {
"anyOf": [
{
"maxLength": 256,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Organism name filter (e.g. ``'Homo sapiens'``, ``'Mus musculus'``). Appended as ``AND {organism}[orgn]`` to the eSearch term.",
"title": "Organism"
},
"project_type": {
"anyOf": [
{
"maxLength": 256,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Project type filter (e.g. ``'TRANSCRIPTOME_ANALYSIS'``, ``'GENOME_SEQUENCING'``, ``'METAGENOME'``). Appended as ``AND {project_type}[filter]`` to the eSearch term.",
"title": "Project Type"
},
"limit": {
"default": 10,
"description": "Maximum number of BioProject records to return (1–100, default 10).",
"maximum": 100,
"minimum": 1,
"title": "Limit",
"type": "integer"
}
},
"required": [
"query"
],
"title": "ForgeBioProjectIn",
"type": "object"
}Output schema
{
"$defs": {
"BioProjectEntry": {
"description": "One BioProject study record.",
"properties": {
"accession": {
"description": "BioProject accession (e.g. ``'PRJNA40025'``).",
"title": "Accession",
"type": "string"
},
"title": {
"default": "",
"description": "Project title.",
"title": "Title",
"type": "string"
},
"description": {
"default": "",
"description": "Project description or abstract.",
"title": "Description",
"type": "string"
},
"organism": {
"default": "",
"description": "Primary organism name.",
"title": "Organism",
"type": "string"
},
"project_type": {
"default": "",
"description": "Project type (e.g. ``'TRANSCRIPTOME_ANALYSIS'``, ``'GENOME_SEQUENCING'``, ``'METAGENOME'``, ``'EPIGENOMICS'``).",
"title": "Project Type",
"type": "string"
},
"submission_date": {
"default": "",
"description": "Registration/submission date (YYYY/MM/DD HH:MM or ISO-8601).",
"title": "Submission Date",
"type": "string"
},
"last_update": {
"default": "",
"description": "Last modification date.",
"title": "Last Update",
"type": "string"
},
"sra_run_count": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Number of associated SRA runs (None if not reported in summary).",
"title": "Sra Run Count"
},
"biosample_count": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Number of associated BioSamples (None if not reported in summary).",
"title": "Biosample Count"
},
"relevance_score": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "Relevance score from eSearch (None if not available).",
"title": "Relevance Score"
}
},
"required": [
"accession"
],
"title": "BioProjectEntry",
"type": "object"
}
},
"description": "Response shape for ``scidex.forge.bioproject``.",
"properties": {
"query": {
"description": "The search term that was submitted.",
"title": "Query",
"type": "string"
},
"results": {
"description": "BioProject records matching the query, in eSearch rank order.",
"items": {
"$ref": "#/$defs/BioProjectEntry"
},
"title": "Results",
"type": "array"
},
"total_found": {
"default": 0,
"description": "Total project count returned by eSearch before the limit was applied.",
"title": "Total Found",
"type": "integer"
},
"not_found": {
"default": false,
"description": "True if eSearch returned zero results for the query.",
"title": "Not Found",
"type": "boolean"
},
"source": {
"default": "NCBI BioProject (ncbi.nlm.nih.gov/bioproject)",
"description": "Data source identifier.",
"title": "Source",
"type": "string"
}
},
"required": [
"query"
],
"title": "ForgeBioProjectOut",
"type": "object"
}curl snippet
Replace $SCIDEX_JWT with a valid bearer token. Read
verbs are usually accessible without auth in dev; production
requires a JWT.
curl -sS -X POST '/api/scidex/forge/bioproject' \
-H 'authorization: Bearer $SCIDEX_JWT' \
-H 'content-type: application/json' \
-d '{
"query": ""
}'Discussion
No comments yet — be the first.