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

Exa Search

  • 108 installs
  • 5 repo stars
  • Updated June 25, 2026
  • ejirocodes/agent-skills

Integrate the Exa.ai search API for neural and keyword web search with content retrieval, using the exa_py and exa-js SDKs.

About

Provides patterns for Exa.ai neural/keyword/auto search with content extraction, filters, highlights, and find-similar via the Python and TypeScript SDKs. A developer uses it when adding web search and content retrieval features to an app.

  • Auto/neural/keyword search mode selection guidance
  • Domain, date, and text filters plus highlights and summaries

Exa Search by the numbers

  • 108 all-time installs (skills.sh)
  • Ranked #4,116 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Jul 24, 2026 (Skillselion catalog sync)
npx skills add https://github.com/ejirocodes/agent-skills --skill exa-search

Add your badge

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

Listed on Skillselion
Installs108
repo stars5
Last updatedJune 25, 2026
Repositoryejirocodes/agent-skills

What it does

Integrate the Exa.ai search API for neural and keyword web search with content retrieval, using the exa_py and exa-js SDKs.

Files

SKILL.mdMarkdownGitHub ↗

Exa Search Integration

Quick Reference

TopicWhen to UseReference
Search ModesChoosing between auto, neural, and keyword searchsearch-modes.md
FiltersDomain, date, text, and category filteringfilters.md
ContentsText extraction, highlights, summaries, livecrawlcontents.md
SDK PatternsPython (exa_py) and TypeScript (exa-js) usagesdk-patterns.md

Essential Patterns

Basic Search (Python)

from exa_py import Exa

exa = Exa(api_key="your-api-key")  # or set EXA_API_KEY env var

results = exa.search_and_contents(
    "latest developments in quantum computing",
    type="auto",
    num_results=10,
    text=True,
    highlights=True
)

for result in results.results:
    print(f"{result.title}: {result.url}")
    print(result.text[:500])

Basic Search (TypeScript)

import Exa from "exa-js";

const exa = new Exa(process.env.EXA_API_KEY);

const results = await exa.searchAndContents(
  "latest developments in quantum computing",
  {
    type: "auto",
    numResults: 10,
    text: true,
    highlights: true,
  }
);

results.results.forEach((result) => {
  console.log(`${result.title}: ${result.url}`);
});

Search with Filters

results = exa.search_and_contents(
    "AI startup funding rounds",
    type="neural",
    num_results=10,
    include_domains=["techcrunch.com", "venturebeat.com"],
    start_published_date="2024-01-01",
    text={"max_characters": 2000},
    summary=True
)

Find Similar Links

similar = exa.find_similar_and_contents(
    "https://example.com/interesting-article",
    num_results=10,
    exclude_source_domain=True,
    text=True
)

Search Mode Selection

ModeWhen to UseNotes
autoDefault for most queriesExa optimizes between neural/keyword automatically
neuralNatural language, conceptual queriesBest for "what is...", "how to...", topic exploration
keywordExact matches, technical terms, namesBest for specific product names, error codes, proper nouns

Common Mistakes

1. Using `keyword` for conceptual queries - Neural search understands intent better; use auto or neural for natural language questions 2. Not setting `text=True` - Search returns URLs only by default; explicitly request content with text=True 3. Ignoring `highlights` - Use highlights=True for relevant snippets without downloading full page text 4. Missing API key - Set EXA_API_KEY environment variable or pass explicitly to constructor 5. Over-filtering initially - Start with broad searches, then add domain/date filters to refine 6. Not using `summary` - For RAG applications, summary=True provides concise context without full page text 7. Expecting scores in auto mode - Relevance scores are only returned with type="neural"; auto mode doesn't include them

Related skills

This week in AI coding

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

unsubscribe anytime.