Semantic Scholar Tools#
Configuration File: semantic_scholar_tools.json
Tool Type: Local
Tools Count: 2
This page contains all tools defined in the semantic_scholar_tools.json configuration file.
Available Tools#
SemanticScholar_get_pdf_snippets (Type: SemanticScholarPDFSnippetsTool)#
Fetch a paper’s open-access PDF from Semantic Scholar and return bounded text snippets around pro…
SemanticScholar_get_pdf_snippets tool specification
Tool Information:
Name:
SemanticScholar_get_pdf_snippetsType:
SemanticScholarPDFSnippetsToolDescription: Fetch a paper’s open-access PDF from Semantic Scholar and return bounded text snippets around provided terms. Uses markitdown to convert PDF to markdown. Useful when key details (methods, experimental parameters) are in the full text rather than abstract.
Parameters:
paper_id(string) (optional) Semantic Scholar paper ID (e.g., from SemanticScholar_search_papers). The tool will fetch the PDF URL if available.open_access_pdf_url(string) (optional) Direct open access PDF URL (recommended when you already have it from SemanticScholar_search_papers).terms(array) (required) Terms to search for in the extracted full text (case-insensitive).window_chars(integer) (optional) Context window size (characters) before and after each match.max_snippets_per_term(integer) (optional) Maximum number of snippets returned per term.max_total_chars(integer) (optional) Hard cap on total characters returned across all snippets.
Example Usage:
query = {
"name": "SemanticScholar_get_pdf_snippets",
"arguments": {
"terms": ["item1", "item2"]
}
}
result = tu.run(query)
SemanticScholar_search_papers (Type: SemanticScholarTool)#
Search for papers on Semantic Scholar including abstracts and AI-generated TLDR summaries. This t…
SemanticScholar_search_papers tool specification
Tool Information:
Name:
SemanticScholar_search_papersType:
SemanticScholarToolDescription: Search for papers on Semantic Scholar including abstracts and AI-generated TLDR summaries. This tool queries the Semantic Scholar API using natural language keywords and returns papers with details such as title, abstract, TLDR summary, fields of study, publication year, journal (venue), and URL. Returns one page of results: metadata.returned is how many papers are in data, metadata.total is Semantic Scholar’s approximate count of ALL papers matching the query in the corpus (null when the API does not report it, see metadata.total_source), and the top-level truncated flag plus truncation_note say when more matches exist than were returned. Do not treat metadata.returned as the size of the literature. Unsorted relevance search uses offset pagination (up to Semantic Scholar’s first 10,000 results). Sorted search uses the bulk API: consume each upstream page with metadata.next_offset, then switch to metadata.next_token at offset 0. Metadata also reports has_more and whether the database result set is fully retrievable. Anonymous traffic uses a shared upstream pool and may be throttled dynamically; authenticated traffic uses the request-scoped SEMANTIC_SCHOLAR_API_KEY and an isolated upstream quota (new keys currently start at 1 request/second).
Parameters:
query(string) (required) Search query for Semantic Scholar. Use keywords separated by spaces to refine the search.limit(integer) (optional) Maximum papers to return. Regular search allows up to 100; sorted bulk search allows up to 1000. A value of 0 returns no records without querying.year(string) (optional) Filter results by publication year. Use a single year (e.g., ‘2024’) or a range (e.g., ‘2020-2024’).sort(string) (optional) Sort results. Options: ‘citationCount:desc’, ‘citationCount:asc’, ‘publicationDate:desc’, ‘publicationDate:asc’.offset(integer) (optional) Regular search: server result offset (0-9999). Sorted search: local offset within the current bulk page (0-999); reuse the same token until next_offset is null.token(string) (optional) Opaque bulk-page token, valid only with sort. Omit for the first upstream page; use metadata.next_token at offset 0 after the current page is exhausted.include_abstract(boolean) (optional) If true, best-effort fetches missing abstracts via the paper detail endpoint (only when abstract is missing in search results).
Example Usage:
query = {
"name": "SemanticScholar_search_papers",
"arguments": {
"query": "example_value"
}
}
result = tu.run(query)