search_docs
Search BDC documentation using semantic or keyword queries, filter by document type and date, and retrieve relevant chunks with metadata and scores.
Instructions
Search the BDC (NHLBI BioData Catalyst) documentation database.
Returns the top-k matching chunks with content, metadata (source, doc_type, datetime when available), and a score.
query is the search text. In embedding mode phrase it as a question or topic (e.g. "how do I bring my own data"); in keyword mode give the literal terms to match.
k is the number of chunks to return (default 5). Raise it (10-20) for broad or multi-part questions; each chunk is a small section of a document.
mode toggles the search engine:
"embedding" (default): semantic similarity — best for questions, topics, and paraphrased wording. score is a distance (lower = more similar).
"keyword": fuzzy literal word matching — ignores case and punctuation ("picsure" finds "PIC-SURE") and tolerates small typos — best for exact names, acronyms, tool names, or error messages the embedding may blur. Chunks matching more of the query terms rank first; score is the total number of occurrences (higher = better).
doc_type is a CSV string of types to search (e.g. "page,faq" or "video"). Available types:
docs: BDC GitBook platform documentation — user guides, how-tos, and technical reference (bdcatalyst.gitbook.io)
page: key pages of the BDC website — about/overview, joining BDC, analyzing & sharing data, usage costs and terms
faq: Freshdesk help-desk FAQ articles (support questions & answers)
video: transcripts of BDC YouTube tutorials/webinars, with timestamped links into the video
fellow: BDC Fellows profiles — fellowship recipients and their research projects
update: dated news posts ("latest updates") from the BDC website
event: dated BDC events — webinars, workshops, deadlines When doc_type is omitted, only docs, page, faq, and video are searched — name fellow, update, or event explicitly to search them.
date_from / date_to ("YYYY-MM-DD", inclusive) filter by date. Only event and update docs carry a date, so a date filter implicitly narrows to those types. Results are ranked by relevance, NOT date — for "recent"/"latest" questions, always set date_from to bound the range, then compare the dates returned.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| k | No | ||
| mode | No | embedding | |
| query | Yes | ||
| date_to | No | ||
| doc_type | No | ||
| date_from | No |