exa-contents
Call Exa Contents (POST /contents) for LLM-ready extraction from known URLs: text, highlights, summaries, links, image links, subpages, freshness-controlled…
Skill by MoizIbnYousaf
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/moizibnyousaf-exa-contents
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: ml, security, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/exa-contents
What's inside
- Skill name
exa-contents- Description
- Call Exa Contents (POST /contents) for LLM-ready extraction from known URLs: text, highlights, summaries, links, image links, subpages, freshness-controlled crawl. Use when the agent already has URLs. Prefer Exa MCP web_fetch_exa when available; otherwise raw HTTP with EXA_API_KEY. NOT for open-ended discovery (use exa-search) or auth-walled X/Twitter (use mktg-x). For full-site crawl of a known domain, firecrawl may be better.
- License
- MIT
- Instructions
- 205 lines in SKILL.md · view on GitHub
Before installing
- Instructions call the network
Agent Skills spec issues
- allowed-tools: must be a space-separated string
Files (1)
- SKILL.md
SKILL.md (first lines)
## On Activation
1. Read `brand/competitors.md` / `brand/landscape.md` if present for URL shortlists. Optional.
2. Confirm Exa auth (MCP or `EXA_API_KEY`) via `mktg doctor` if unsure.
3. Prefer MCP `web_fetch_exa` when available; otherwise use the cURL examples below.
4. If the page is auth-walled (X/Twitter login stub), route to `mktg-x` instead.
# Exa Contents
> Requires API key: Get one at https://dashboard.exa.ai/api-keys
>
> Header: `x-api-key: $EXA_API_KEY`
Use `POST https://api.exa.ai/contents` when the agent already knows the URLs and needs clean, LLM-ready extraction without running a new search. Start with one content mode: `highlights` for compact agent context, `text` for broad page context, or `summary` for Exa-side compression.
## Quick Start (cURL)
### Basic text extraction
```bash
curl -sS -X POST "https://api.exa.ai/contents" \
-H "Content-Type: application/json" \
-H "x-api-key: $EXA_API_KEY" \
-d '{
"urls": ["https://example.com"],
"text": true
}'
```
### Highlights with freshness control
```bash
curl -sS -X POST "https://api.exa.ai/contents" \
-H "Content-Type: application/json" \
-H "x-api-key: $EXA_API_KEY" \
-d '{
"urls": ["https://arxiv.org/abs/2307.06435"],
"highlights": {
"query": "methodology and results"
},
"maxAgeHours": 24,
"livecrawlTimeout": 12000
}'
```
## Endpoint
```text
POST https://api.exa.ai/contents
```
Authentication: `x-api-key: <API_KEY>` header. Exa also accepts `Authorization: Bearer <API_KEY>`, but prefer `x-api-key` in cURL examples for consistency.
Use this endpoint for known-URL extraction. If the agent needs discovery or ranking first, use `POST /search`.
## Parameters
### Core request parameters
| Parameter | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `urls` | string[] | Yes | - | URLs to extract content from. Use this for known URLs. |
| `text` | boolean or object | No | - | Return full page text as markdown. Object form supports `maxCharacters`, `includeHtmlTags`, `verbosity`, `includeSections`, and `excludeSections`. |
| `highlights` | boolean or object | No | - | Return key excerpts. Prefer `true` for agent workflows unless a custom focus is needed. |
| `summary` | boolean or object | No | - | Return per-page LLM summaries. Use when the caller wants Exa-side compression or structured extraction. |
| `maxAgeHours` | integer | No | - | Freshness control. `0` always live crawls; `-1` uses cache only; omit for default cache-first behavior with crawl fallback. |
| `livecrawlTimeout` | integer | No | `10000` | Timeout for live crawling in milliseconds. Use `10000` to `15000` for most freshness-sensitive calls. |
| `subpages` | integer | No | `0` | Number of linked subpages to crawl from each URL. |
| `subpageTarget` | string or string[] | No | - | Terms used to prioritize which subpages matter, such as `["api", "reference", "pricing"]`. |
| `extras.links` | integer | No | `0` | Number of links to extract from each page. |
| `extras.imageLinks` | integer | No | `0` | Number of image URLs to extract from each page. |
| `compliance` | string | No | - | Enterprise-only compliance mode, such as `hipaa`, when enabled for the account. |
### Text object options
| Parameter | Type | Default | Description |
| --- | --- | --- | --- |
| `maxCharacters` | integer | - | Character limit for returned text. Use this instead of `tokensNum`. |
| `includeHtmlTags` | boolean | `false` | Preserve HTML tags in output. |
| `verbosity` | string | `compact` | `compact`, `standard`, or `full`. Pair fresh section-aware extraction with `maxAgeHours: 0`. |
| `includeSections` | string[] | - | Only include selected sections: `header`, `navigation`, `banner`, `body`, `sidebar`, `footer`, `metadata`. |
| `excludeSections` | string[] | - | Exclude selected sections from the same section list. |
### Highlights object options
Prefer `highlights: true` for the highest-quality default. Only use object form when the agent needs a custom focus or budget.
| Parameter | Type | Default | Description |
| --- | --- | --- | --- |
| `query` | string | - | Custom query guiding which excerpts are returned. |
| `maxCharacters` | integer | - | Cap highlight characters per URL. Omit unless the caller has a strict budget. |
### Summary object options
| Parameter | Type | Default | Description |
| --- | --- | --- | --- |
| `query` | string | - | Custom query for the summary. |
| `schema` | object | - | JSON Schema for structured per-page summaries. |
## Content Modes
On `/contents`, `text`, `highlights`, and `summary` are top-level request fields.
| Mode | Best for | Notes |
| --- | --- | --- |
| `text` | Deep analysis and broad page context | Use `maxCharacters` to keep payloads bounded. |
| `highlights` | Agent workflows and factual lookups | Most token-efficient default. Excerpts are grounded in the source page. |
| `summary` | Compression or structured per-page extraction | Adds Exa-side synthesis per page. |
Avoid requesting multiple modes unless the caller truly needs multiple views of the same page.
## Freshness and Crawling
Use `maxAgeHours` as the normative freshness control.
| Value | Behavior |
| --- | --- |
| omitted | Use default cache-first behavior with crawl fallback when needed. |
| positive integer | Use cache if it is less than N hours old, otherwise live crawl. |From MoizIbnYousaf/marketing-cli, MIT.
More from MoizIbnYousaf/marketing-cli
- 0.589score
manim-composer
MoizIbnYousaf
Trigger when: (1) User wants to create an educational/explainer video, (2) User has a vague concept they want visualized, (3) User mentions "3b1b style" or…
SkillBFreshness: B★ 32Claude Code +9 - 0.589score
brand-voice
MoizIbnYousaf
Define or extract a consistent brand voice that other skills can use.
SkillBFreshness: B★ 32Claude Code +9 - 0.589score
keyword-research
MoizIbnYousaf
Strategic keyword research powered by web search and brand context.
SkillBFreshness: B★ 32Claude Code +9 - 0.589score
landscape-scan
MoizIbnYousaf
Scan the current market landscape and produce a ground-truth ecosystem snapshot.
SkillBFreshness: B★ 32Claude Code +9 - 0.589score
agent-email-inbox
MoizIbnYousaf
Use when setting up a secure email inbox for any AI agent — configuring inbound email via Resend, webhooks, tunneling for local development, and implementing…
SkillBFreshness: B★ 32Claude Code +9 - 0.589score
manimgl-best-practices
MoizIbnYousaf
Trigger when: (1) User mentions "manimgl" or "ManimGL" or "3b1b manim", (2) Code contains `from manimlib import *`, (3) User runs `manimgl` CLI commands, (4)…
SkillBFreshness: B★ 32Claude Code +9 - 0.589score
competitive-intel
MoizIbnYousaf
Research and analyze competitors to find positioning gaps and strategic opportunities.
SkillBFreshness: B★ 32Claude Code +9 - 0.589score
audience-research
MoizIbnYousaf
Build detailed buyer personas and audience profiles from research.
SkillBFreshness: B★ 32Claude Code +9 - 0.589score
direct-response-copy
MoizIbnYousaf
Write copy that converts.
SkillBFreshness: B★ 32Claude Code +9 - 0.585score
marketing-demo
MoizIbnYousaf
Record product demos and walkthroughs for marketing assets.
SkillBFreshness: B★ 32Claude Code +9 - 0.585score
churn-prevention
MoizIbnYousaf
Designs cancel flow UX, dunning email sequences, win-back campaigns, and retention triggers.
SkillBFreshness: B★ 32Claude Code +9 - 0.585score
email-sequences
MoizIbnYousaf
Build automated email flows that nurture, convert, and retain.
SkillBFreshness: B★ 32Claude Code +9
Signals
- Stars
- 32
- Forks
- 5
- Open issues
- 1
- Last commit (this folder)
- Jul 18, 2026 (3 months ago)
- Last release
- Aug 16, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/MoizIbnYousaf/marketing-cli
- Website
- www.marketing-cli.com/
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from MoizIbnYousaf
- 0.743score
verification-agent
MoizIbnYousaf
Verify claims, quotations, citations and references against live primary sources, and produce a reproducible audit record instead of an assertion.
SkillBFreshness: B★ 1.2KClaude Code +9 - 0.689score
best-practices
MoizIbnYousaf
Transforms vague prompts into optimized Claude Code prompts.
SkillCFreshness: C★ 1.2KClaude Code +9 - 0.687score
browse-and-evaluate
MoizIbnYousaf
Use when exploring the ai-agent-skills catalog to find, compare, and evaluate skills before installing.
SkillCFreshness: C★ 1.2KClaude Code +9 - 0.687score
audit-library-health
MoizIbnYousaf
Use when checking the overall health of a skills library.
SkillCFreshness: C★ 1.2KClaude Code +9 - 0.687score
build-workspace-docs
MoizIbnYousaf
Use when regenerating README.md and WORK_AREAS.md in a managed library workspace.
SkillCFreshness: C★ 1.2KClaude Code +9 - 0.687score
curate-a-team-library
MoizIbnYousaf
Use when building a managed team skills library for a real stack.
SkillCFreshness: C★ 1.2KClaude Code +9
Cite this page
exa-contents skill. Agent Mart. https://agentmart.dev/skills/moizibnyousaf-exa-contents (last updated 2026-10-24)