跳转至

文献、预印本与临床研究查询:参数与补充说明

用法和示例见功能教程。

各功能按作用、API、输入、输出、示例代码和结果说明介绍。运行前按说明准备凭据、本地文件与可选依赖;远程结果随数据库版本与查询时间变化。

按关键词检索 arXiv 论文

dnakit.databases.ar_xiv_search_papers(*, query, limit=None, sort_by=None, sort_order=None, date_from=None, date_to=None, category=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
query string 必填 Search query for arXiv papers. Unquoted, unprefixed space-separated keywords are ANDed together (every keyword must match) -- adding more keywords NARROWS results, it does not broaden them. To search multiple synonyms/phrases and broaden recall, join them with explicit OR, e.g. '"machine learning" OR "deep learning" OR "neural networks"'. Supports field prefixes (au:, ti:, abs:, cat:, all:) and AND/OR/ANDNOT boolean operators, which are passed through as-is.
limit integer None Number of papers to return. This sets the maximum number of papers retrieved from arXiv.
sort_by string None Sort order for results. Options: 'relevance', 'lastUpdatedDate', 'submittedDate'
sort_order string None Sort direction. Options: 'ascending', 'descending'
date_from string None Filter results from this date (format: YYYY-MM-DD). Uses submittedDate, the date of the paper's FIRST version -- a paper revised/updated after this date but originally submitted earlier is still excluded.
date_to string None Filter results up to this date (format: YYYY-MM-DD). Uses submittedDate, the date of the paper's FIRST version -- a paper revised/updated after this date but originally submitted earlier is still included.
category string None 分类或结果类别,按当前接口的枚举/来源定义填写。
verbose bool True 运行提示开关。

按 DOI 查询 bioRxiv 预印本元数据

dnakit.databases.bio_rxiv_get_preprint(*, doi, server=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
doi string 必填 bioRxiv or medRxiv DOI. Can be full DOI (e.g., '10.1101/2023.12.01.569554') or just the numeric part after '10.1101/' (e.g., '2023.12.01.569554'). Find DOIs using EuropePMC_search_articles, web_search, or from paper citations.
server string None Server to query: 'biorxiv' for bioRxiv preprints or 'medrxiv' for medRxiv preprints. Default is 'biorxiv'.
verbose bool True 运行提示开关。

按日期范围列出近期预印本

dnakit.databases.bio_rxiv_list_recent_preprints(*, start_date=None, end_date=None, server=None, cursor=None, query=None, limit=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
start_date string None Start date in YYYY-MM-DD format (e.g., '2024-01-01'). Date range must not exceed 60 days.
end_date string None End date in YYYY-MM-DD format (e.g., '2024-01-03'). Date range must not exceed 60 days.
server string None Server: 'biorxiv' for biology preprints, 'medrxiv' for health sciences preprints
cursor integer None Pagination cursor (0 for first 100 results, 100 for next 100, etc.)
query string None 检索词或查询表达式;语法由当前数据源定义。
limit integer None 当前请求的返回数量上限;不是全库命中总数。
verbose bool True 运行提示开关。

按疾病、干预或申办方检索临床研究

dnakit.databases.clinical_trials_search_studies(*, operation=None, query_cond=None, query_intr=None, query_term=None, filter_status=None, filter_phase=None, filter_study_type=None, page_size=None, next_page_token=None, query=None, condition=None, status=None, max_results=None, intervention=None, sponsor=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
operation string None Operation (optional; defaults to 'search' for this tool).
query_cond string | null None Disease or condition to search for (e.g., 'breast cancer', 'type 2 diabetes', 'COVID-19'). Supports Boolean operators (AND, OR, NOT). Multi-word values are matched as an exact phrase (e.g. 'kidney transplantation' is sent as "kidney transplantation"), which is narrower than a loose keyword match. For looser matching, wrap the value in parentheses (e.g. '(kidney transplantation)') to send it verbatim. Values already containing Essie syntax (AND/OR/NOT/AREA[]/quotes) are passed through unchanged. See executed_query in the response for what actually ran.
query_intr string | null None Intervention or drug to search for (e.g., 'pembrolizumab', 'metformin', 'chemotherapy'). Matched against each study's registered intervention names and synonyms (InterventionName/InterventionOtherName), not free text in study summaries, and multi-word values are matched as an EXACT PHRASE -- so 'donor derived cell therapy' matches 0 studies even though 251 trials match the same words loosely. For looser matching, wrap the value in parentheses (e.g. '(donor derived cell therapy)') to send it verbatim, or use ClinicalTrials_search_studies with query_term for free text across all study fields. Prefer the generic/INN name over a brand name. See executed_query and relaxed_match_check in the response.
query_term string | null None Free-text search across all study fields. Use for general keyword search.
filter_status string | null None Filter by recruitment status. Options: 'RECRUITING', 'NOT_YET_RECRUITING', 'ACTIVE_NOT_RECRUITING', 'COMPLETED', 'WITHDRAWN', 'SUSPENDED', 'TERMINATED', 'ENROLLING_BY_INVITATION'. Comma-separate multiple values.
filter_phase string | null None Filter by trial phase. Options: 'EARLY_PHASE1', 'PHASE1', 'PHASE2', 'PHASE3', 'PHASE4', 'NA'. Comma-separate multiple (e.g., 'PHASE2,PHASE3').
filter_study_type string | null None Filter by study type: 'INTERVENTIONAL', 'OBSERVATIONAL', 'EXPANDED_ACCESS'.
page_size integer None Number of results per page (default 10, max 1000).
next_page_token string | null None Token for retrieving the next page of results (obtained from previous response).
query string | null None General keyword search across all fields. Alias for query_term. E.g., "FLT3 AML", "KRAS NSCLC".
condition string | null None Disease or condition to search for. Alias for query_cond. E.g., "acute myeloid leukemia". Multi-word values are matched as an exact phrase (e.g. 'kidney transplantation' is sent as "kidney transplantation"), which is narrower than a loose keyword match. For looser matching, wrap the value in parentheses (e.g. '(kidney transplantation)') to send it verbatim. Values already containing Essie syntax (AND/OR/NOT/AREA[]/quotes) are passed through unchanged. See executed_query in the response for what actually ran.
status string | null None Recruitment status filter. Alias for filter_status. E.g., "RECRUITING", "COMPLETED".
max_results integer | null None Maximum number of results to return. Alias for page_size.
intervention string | null None Intervention or drug to search for. Alias for query_intr. E.g., "pembrolizumab", "metformin". Matched against each study's registered intervention names and synonyms (InterventionName/InterventionOtherName), not free text in study summaries, and multi-word values are matched as an EXACT PHRASE -- so 'donor derived cell therapy' matches 0 studies even though 251 trials match the same words loosely. For looser matching, wrap the value in parentheses (e.g. '(donor derived cell therapy)') to send it verbatim, or use ClinicalTrials_search_studies with query_term for free text across all study fields. Prefer the generic/INN name over a brand name. See executed_query and relaxed_match_check in the response.
sponsor string | null None Lead sponsor or collaborator name to search for. E.g., "National Cancer Institute". Matched against each study's registered lead-sponsor name (AREA[LeadSponsorName]) only, and multi-word values are matched as an EXACT PHRASE. For looser matching, wrap the value in parentheses (e.g. '(National Cancer Institute)') to send it verbatim. See executed_query and relaxed_match_check in the response.
verbose bool True 运行提示开关。

检索 Crossref 学术文献与 DOI 元数据

dnakit.databases.crossref_search_works(*, query, limit=None, offset=None, filter=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
query string 必填 Search query for Crossref works. Use keywords separated by spaces to refine your search across titles, abstracts, authors, and other bibliographic fields.
limit integer None Number of articles to return in this page. This sets the maximum number of articles retrieved from Crossref. Max 100 per request. It does not change 'total_count', which always reports how many works match the query.
offset integer None Skip this many matching works before returning results. Use with 'limit' to page through a result set larger than 100; the response 'truncation_note' gives the offset for the next page.
filter string None Optional filter string for Crossref API. Examples: 'type:journal-article' (only journal articles), 'from-pub-date:2020-01-01' (published after date), 'has-abstract:true' (only with abstracts). Multiple filters comma-separated.
verbose bool True 运行提示开关。

检索 Europe PMC 文献与摘要

dnakit.databases.europe_pmc_search_articles(*, query, limit=None, require_has_ft=None, fulltext_terms=None, enrich_missing_abstract=None, extract_terms_from_fulltext=None, page_size=None, pageSize=None, source=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
query string 必填 Search query for Europe PMC. Supports Lucene-like fielded syntax (e.g., BODY:"term", INTRO:"term", METHODS:"term").
limit integer None Number of articles to return. This sets the maximum number of articles retrieved from Europe PMC; anything beyond it is silently left behind, so compare it against metadata.total_results in the response (Europe PMC's hitCount) before treating the returned set as complete. Europe PMC accepts up to 1000 per request.
require_has_ft boolean None If true, appends HAS_FT:Y to the query to restrict results to records where Europe PMC has full text indexed. This is NOT the same as having a link to free full text elsewhere (e.g., PMC) and is often the key reason body-only keywords cannot be found via Europe PMC search.
fulltext_terms array None Optional list of terms that must occur in the indexed full text (Europe PMC BODY field). When provided, the tool adds a BODY:"..." clause and automatically enables require_has_ft. {"items": {"type": "string"}}
enrich_missing_abstract boolean None If true, best-effort fills missing abstracts by fetching Europe PMC fullTextXML (bounded to a few results).
extract_terms_from_fulltext array None Optional list of terms to extract from full text (open access only). When provided, automatically fetches fullTextXML for open-access articles and returns snippets around these terms. Terms are processed in batches of 5 internally, so any number of terms is accepted. Bounded to first 3 OA articles to avoid latency. Returns snippets in a 'fulltext_snippets' field for each article. {"items": {"type": "string"}}
page_size integer None Alias for limit — number of results to return
pageSize integer None DNAKit optional alias for limit
source string None 数据来源筛选值;按当前接口允许的来源填写。
verbose bool True 运行提示开关。

按 DOI 查询 medRxiv 预印本元数据

dnakit.databases.med_rxiv_get_preprint(*, doi=None, server=None, query=None, limit=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
doi string None medRxiv DOI. Can be full DOI (e.g., '10.1101/2021.04.29.21256344') or just the numeric part after '10.1101/' (e.g., '2021.04.29.21256344'). Find DOIs using EuropePMC_search_articles, web_search, or from paper citations.
server string None Server to query - always 'medrxiv' for this tool.
query string None 检索词或查询表达式;语法由当前数据源定义。
limit integer None 当前请求的返回数量上限;不是全库命中总数。
verbose bool True 运行提示开关。

按 OpenAlex 编号查询作者详情

dnakit.databases.openalex_get_author(*, author_id, mailto=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
author_id string 必填 OpenAlex Author ID (A...) or full OpenAlex URL.
mailto string None Optional contact email for OpenAlex polite pool.
verbose bool True 运行提示开关。

使用 OpenAlex 检索学术文献

dnakit.databases.openalex_literature_search(*, search_keywords=None, query=None, max_results=None, limit=None, num_results=None, year_from=None, start_year=None, year_to=None, end_year=None, open_access=None, require_has_fulltext=None, fulltext_terms=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
search_keywords string None Keywords to search for in paper titles/abstracts/etc. For full-text-index-only matching, also use require_has_fulltext/fulltext_terms.
query string None Alias for search_keywords (recommended when you standardize on query across multiple paper-search tools).
max_results integer None Maximum number of papers to retrieve (default: 10, maximum: 200).
limit integer None Alias for max_results (OpenAlex max 200).
num_results integer None Alias for max_results (OpenAlex max 200).
year_from integer None Start year for publication date filter (e.g., 2020). Optional parameter to limit search to papers published from this year onwards.
start_year integer None Alias for year_from.
year_to integer None End year for publication date filter (e.g., 2023). Optional parameter to limit search to papers published up to this year.
end_year integer None Alias for year_to.
open_access boolean None Filter for open access papers only. Set to true for open access papers, false for non-open access, or omit for all papers.
require_has_fulltext boolean None If true, filters to works where OpenAlex indicates a full-text index is available (has_fulltext:true).
fulltext_terms array None Optional list of terms that must occur in OpenAlex full-text index (adds fulltext.search:<term> filters and implicitly enables require_has_fulltext). {"items": {"type": "string"}}
verbose bool True 运行提示开关。

以下参数组至少提供一组:search_keywords; query。

按筛选条件检索 OpenAlex 论文记录

dnakit.databases.openalex_search_works(*, search=None, query=None, filter=None, require_has_fulltext=None, fulltext_terms=None, per_page=None, limit=None, page=None, sort=None, mailto=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
search string None Search query for works. Use filter + fulltext_terms/require_has_fulltext when you need full-text-index-only matching.
query string None Alias for search (recommended when you standardize on query across multiple paper-search tools).
filter string None OpenAlex filter string (comma-separated). Example: "from_publication_date:2020-01-01,is_oa:true".
require_has_fulltext boolean None If true, appends OpenAlex filter has_fulltext:true (keeps only works with full-text index available).
fulltext_terms array None Optional list of terms to match in OpenAlex full-text index. Adds one or more fulltext.search:<term> filters and implicitly enables require_has_fulltext. {"items": {"type": "string"}}
per_page integer None Results per page (OpenAlex max 200).
limit integer None Alias for per_page (OpenAlex max 200).
page integer None Page number (1-indexed).
sort string None Sort order string, e.g. "cited_by_count:desc".
mailto string None Optional contact email for OpenAlex polite pool. If omitted, ToolUniverse uses a default.
verbose bool True 运行提示开关。

以下参数组至少提供一组:search; query。

按 PMID 获取 PubMed 文献完整元数据

dnakit.databases.pub_med_get_article(*, pmid, verbose=True)

参数 类型 必填 / 默认值 说明与约束
pmid string | integer 必填 PubMed ID (PMID) as string or integer (e.g., '12345678' or 12345678, '33250470' or 33250470). Find PMIDs using PubMed_search_articles. Can also accept comma-separated PMIDs as string for multiple articles.
verbose bool True 运行提示开关。

查询引用指定 PubMed 文献的论文

dnakit.databases.pub_med_get_cited_by(*, pmid, limit=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
pmid string 必填 PubMed ID (PMID) for which to find citing articles (e.g., '12345678'). Find PMIDs using PubMed_search_articles.
limit integer None Maximum number of citing articles to return (default: 20, max: 100).
verbose bool True 运行提示开关。

dnakit.databases.pub_med_get_related(*, pmid, limit=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
pmid string 必填 PubMed ID (PMID) for which to find related articles (e.g., '20210808', '19879512'). Find PMIDs using PubMed_search_articles.
limit integer None Maximum number of related articles to return (default: 20, max: 100).
verbose bool True 运行提示开关。

按检索式查询 PubMed 生物医学文献

dnakit.databases.pub_med_search_articles(*, query, limit=None, mindate=None, maxdate=None, datetype=None, include_abstract=None, sort=None, max_results=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
query string 必填 Search query for PubMed articles. Use keywords, author names, journal names, or MeSH terms. Examples: 'cancer immunotherapy', 'Smith J[Author]', 'Nature[Journal]', 'diabetes[MeSH]'. Use AND/OR/NOT for complex queries. Note: PubMed ANDs every space-separated keyword by default, so a long, highly specific free-text query (5+ concepts) often returns 0 results even when relevant literature exists. Prefer 2-4 key concepts, add explicit OR for synonyms, or try EuropePMC_search_articles for broader relevance-ranked full-text search if this returns 0 results.
limit integer None Number of articles to return. This sets the maximum number of articles retrieved from PubMed (max: 200).
mindate string None Minimum date for results (format: YYYY/MM/DD or YYYY). Requires datetype to be set.
maxdate string None Maximum date for results (format: YYYY/MM/DD or YYYY). Requires datetype to be set.
datetype string None Type of date to filter on: 'pdat' (publication date), 'edat' (Entrez date), or 'mdat' (modification date). Required when using mindate/maxdate.
include_abstract boolean None If true, best-effort fetches abstracts via efetch (adds abstract/abstract_source fields).
sort string None Sort order for results. Valid values: 'pub_date' (newest first), 'Author' (alphabetical by first author), 'JournalName' (alphabetical by journal), 'relevance' (default PubMed ranking).
max_results integer None Alias for limit — maximum number of results to return
verbose bool True 运行提示开关。

按疾病、药物或关键词查找临床试验

dnakit.databases.search_clinical_trials(*, condition=None, intervention=None, query_term=None, pageSize=None, pageToken=None, overall_status=None, max_results=None, limit=None, status=None, keyword=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
condition string None Query for condition or disease using Essie expression syntax (e.g., 'lung cancer', '(head OR neck) AND pain AND NOT "back pain"'). Sent to ClinicalTrials.gov verbatim (this tool does not rewrite condition values); see executed_query in the response for what actually ran.
intervention string None Query for intervention/treatment using Essie expression syntax (e.g., 'chemotherapy', 'immunotherapy', 'olaparib', 'combination therapy'). Matched against each study's registered intervention names and synonyms (InterventionName/InterventionOtherName), not free text in study summaries, so prefer the generic/INN name: a brand name that no registrant recorded in either field can return zero results. Values that already contain Essie syntax (AREA[...]/AND/OR/NOT/quotes) are passed through unchanged. Matched against each study's registered intervention names and synonyms (InterventionName/InterventionOtherName), not free text in study summaries, and multi-word values are matched as an EXACT PHRASE -- so 'donor derived cell therapy' matches 0 studies even though 251 trials match the same words loosely. For looser matching, wrap the value in parentheses (e.g. '(donor derived cell therapy)') to send it verbatim, or use ClinicalTrials_search_studies with query_term for free text across all study fields. Prefer the generic/INN name over a brand name. See executed_query and relaxed_match_check in the response.
query_term string None Query for 'other terms' with Essie expression syntax (e.g., 'combination', 'AREA[LastUpdatePostDate]RANGE[2023-01-15,MAX]', 'Phase II'). Can be used to search for all other protocol fields, including but not limited to title, outcome measures, status, phase, location, etc.
pageSize integer None Maximum number of studies to return per page (default 10, max 1000).
pageToken string None Token to retrieve the next page of results, obtained from the 'nextPageToken' field of the previous response. Do not specify it for first page. When you make an initial request to the API which supports pagination, the response will include a nextPageToken. This token can then be used as a parameter in the subsequent API request to retrieve the next set of data.
overall_status array None Filter by overall study status (e.g., ['RECRUITING'], ['COMPLETED'], ['RECRUITING', 'NOT_YET_RECRUITING']). Valid values: RECRUITING, NOT_YET_RECRUITING, ACTIVE_NOT_RECRUITING, COMPLETED, ENROLLING_BY_INVITATION, SUSPENDED, TERMINATED, WITHDRAWN. {"items": {"type": "string"}}
max_results integer None Maximum number of studies to return (alias for pageSize, default 10, max 1000).
limit integer None Alias for max_results: maximum number of studies to return (default 10, max 1000).
status object | None None Alias for overall_status. Filter by trial status, e.g. "RECRUITING", "COMPLETED". {"oneOf": [{"type": "string"}, {"type": "array", "items": {"type": "string"}}]}
keyword string None Alias for query_term. Free-text keyword search across all trial fields (e.g., drug name, condition, investigator).
verbose bool True 运行提示开关。

检索论文、摘要与简短总结

dnakit.databases.semantic_scholar_search_papers(*, query, limit=None, year=None, sort=None, include_abstract=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
query string 必填 Search query for Semantic Scholar. Use keywords separated by spaces to refine the search.
limit integer None Maximum number of papers to return from Semantic Scholar.
year string None Filter results by publication year. Use a single year (e.g., '2024') or a range (e.g., '2020-2024').
sort string None Sort results. Options: 'citationCount:desc', 'citationCount:asc', 'publicationDate:desc', 'publicationDate:asc'.
include_abstract boolean None If true, best-effort fetches missing abstracts via the paper detail endpoint (only when abstract is missing in search results).
verbose bool True 运行提示开关。

通过搜索引擎检索网页

dnakit.databases.web_search(*, query, max_results=None, search_type=None, backend=None, region=None, safesearch=None, verbose=True)

参数 类型 必填 / 默认值 说明与约束
query string 必填 Search query string
max_results integer None Maximum number of results to return
search_type string None Type of search to perform
backend string None Search engine backend to use. Selecting 'parallel' sends the query to https://search.parallel.ai/mcp; that backend does not apply ToolUniverse region or safesearch controls. Selecting 'serpbase' sends the query to https://api.serpbase.dev (requires SERPBASE_API_KEY) for real Google SERP results; that backend applies region but not safesearch.
region string None Search region/locale for DDGS backends, and country/language for the SerpBase backend (split on the hyphen into gl/hl). Parallel does not support this control; only the default value is accepted with backend='parallel'.
safesearch string None Safe search level for DDGS backends. Parallel and SerpBase do not support this control; only the default value is accepted with those backends.
verbose bool True 运行提示开关。