Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
k-dense-ai avatar

Exa Search

  • 730 installs
  • 32.7k repo stars
  • Updated August 3, 2026
  • k-dense-ai/scientific-agent-skills

exa-search is a scientific agent skill powered by the Exa API that performs semantic web search and URL content extraction tuned for technical, scientific, and academic sources.

About

exa-search is a k-dense-ai scientific-agent-skills toolkit for developers who need higher-quality web research than generic search. Built on the exa-py Python SDK with an EXA_API_KEY, it supports semantic lookups, optional `category=research paper` filtering, academic domain filters, and batch URL extraction for pages, articles, and PDFs. Use exa-search when an agent must search the web, fetch a page, or extract scholarly content with MIT-licensed tooling and internet access. Triggers include search, look up, fetch, and extract requests where technical accuracy matters. Reach for exa-search during literature reviews, benchmark sourcing, API documentation discovery, or verifying claims against current papers instead of relying on undifferentiated web search alone.

  • Semantic web search with optional research-paper category and academic domain filtering
  • Batch URL extraction supporting articles, pages, and academic PDFs
  • Combines keyword and semantic retrieval optimized for scientific and technical queries
  • Requires only an EXA_API_KEY and exa-py SDK
  • Routes user requests automatically to the appropriate search or extraction capability

Exa Search by the numbers

  • 730 all-time installs (skills.sh)
  • +43 installs in the week ending Aug 2, 2026 (Skillselion tracking)
  • Ranked #1,395 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/k-dense-ai/scientific-agent-skills --skill exa-search

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs730
repo stars32.7k
Last updatedAugust 3, 2026
Repositoryk-dense-ai/scientific-agent-skills

How do you search scientific papers semantically?

Perform high-quality semantic web searches and URL content extraction tuned for scientific, technical, and academic material.

Who is it for?

Developers building research agents who need Exa semantic search with scholarly filtering via exa-py and EXA_API_KEY.

Skip if: Developers needing offline corpus search, proprietary database SQL queries, or web scraping without an Exa API key.

When should I use this skill?

The user asks to search the web, fetch a technical URL, extract an article, or filter results to research papers or academic domains.

What you get

Ranked Exa search results, extracted article text, and batch-fetched academic page or PDF content.

  • Semantic search result sets
  • Extracted page or PDF text
  • Filtered academic source lists

Files

SKILL.mdMarkdownGitHub ↗

Exa Web Toolkit

A skill for web-powered research tasks backed by Exa: web search and URL extraction. Exa's index combines high-quality keyword and semantic retrieval, which makes it well-suited to scientific, technical, and conceptual queries.

Routing — pick the right capability

Read the user's request and match it to one of the capabilities below. Read the corresponding reference file for detailed instructions before running commands.

User wants to...CapabilityWhere
Look something up, research a topic, find current infoWeb Searchreferences/web-search.md
Fetch content from a specific URL (webpage, article, PDF)Web Extractreferences/web-extract.md
Install or authenticateSetupBelow

Decision guide

  • Default to Web Search for topic lookups, research questions, or "what is X?" queries. When the topic is scientific or technical, pass --category "research paper" to bias toward scholarly sources, and/or an academic --include-domains allowlist. See references/web-search.md for the two-pass academic strategy.
  • Use Web Extract when the user provides a URL or asks you to read/fetch a specific page. Prefer this over the built-in WebFetch for batch extraction (multiple URLs in one call) and for academic PDFs.

Academic source priority

For technical or scientific queries, prefer academic and scientific sources:

  • Peer-reviewed journal articles and conference proceedings over blog posts or news
  • Preprints (arXiv, bioRxiv, medRxiv) when peer-reviewed versions aren't available
  • Institutional and government sources (NIH, WHO, NASA, NIST) over commercial sites
  • Primary research over secondary summaries

Two levers to steer Exa toward scholarly content: 1. --category "research paper" biases retrieval toward scholarly sources. 2. --include-domains with a scholarly allowlist (arxiv.org, nature.com, pubmed.ncbi.nlm.nih.gov, etc.) restricts the domain pool.

Combine both for strictly academic results. See references/web-search.md for the full pattern.

When citing academic sources, include author names and publication year where available (e.g., Smith et al., 2025) in addition to the standard citation format. If a DOI is present, prefer the DOI link.

---

Setup

This skill uses the `exa-py` Python SDK. The scripts in scripts/ declare their dependencies via PEP 723 inline metadata, so you can run them directly with uv run without a separate install step:

uv run --with exa-py python "$SKILL_PATH/scripts/exa_search.py" --help

If you prefer a persistent install:

uv pip install "exa-py>=1.14.0"

Authentication

All commands read the API key from the EXA_API_KEY environment variable. Get your Exa API key at dashboard.exa.ai/api-keys.

First, check if a .env file exists in the project root and contains EXA_API_KEY. If so, load it:

dotenv -f .env run -- uv run --with exa-py python "$SKILL_PATH/scripts/exa_search.py" "your query"

If dotenv isn't available, install it: pip install python-dotenv[cli] or uv pip install python-dotenv[cli].

If there's no .env, export the key for the session:

export EXA_API_KEY="your-key"

Verify by running any script with --help — it will exit cleanly if the key is set and auth-check runs only when a real query is made.

Tracking header

Every script in this skill sets the x-exa-integration request header to k-dense-ai--scientific-agent-skills so Exa can attribute usage from the K-Dense AI scientific-agent-skills repo to this integration. Do not remove or rename this header when adapting the scripts.

---

Files in this skill

  • SKILL.md — this file (routing and setup)
  • references/web-search.md — detailed web search reference with academic strategy
  • references/web-extract.md — URL content extraction reference
  • scripts/exa_search.py — CLI wrapper around client.search_and_contents
  • scripts/exa_extract.py — CLI wrapper around client.get_contents

Related skills

Forks & variants (2)

Exa Search has 2 known copies in the catalog totaling 33 installs. They canonicalize to this original listing.

How it compares

Pick exa-search for Exa-powered semantic and scholarly web retrieval; use generic browser automation when you must interact with logged-in sites Exa cannot fetch.

FAQ

What does exa-search require to run?

exa-search requires the exa-py Python SDK, a configured EXA_API_KEY, and internet access. The skill is MIT-licensed and targets agents that call Exa for search and URL extraction programmatically.

How does exa-search filter academic content?

exa-search supports Exa semantic search with optional `category=research paper` and academic domain filters. This narrows results to scholarly material instead of general web pages during literature lookups.

Can exa-search extract full page content?

exa-search includes URL extraction to fetch pages, articles, and academic PDFs in batch. Use it when an agent needs article text or paper content beyond search result snippets alone.

AI & Agent Buildingresearchautomation

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.