Skip to main content

Date: February 2, 2026 This release includes several improvements to give you more control over content extraction and search filtering.

Highlights: maxCharacters Replaces numSentences

The maxCharacters parameter is now the preferred way to control highlight length. The legacy numSentences and highlightsPerUrl parameters are deprecated and will be removed in a future release. During the transition period, numSentences is mapped to a character budget (1 sentence ≈ 1333 characters) and highlightsPerUrl is accepted but ignored. Migrate to maxCharacters for precise control.
result = exa.search_and_contents(
    "latest AI research",
    highlights={"max_characters": 2000}
)

Content Freshness: maxAgeHours

The new maxAgeHours parameter in /contents gives you fine-grained control over content freshness:
  • maxAgeHours: 0 - Always livecrawl for fresh content
  • maxAgeHours: -1 - Cache only, never livecrawl
  • maxAgeHours: 24 - Use cache if content is less than 24 hours old, otherwise livecrawl
This replaces the boolean livecrawl options with more precise age-based control.
# Get content no older than 24 hours
result = exa.get_contents(
  urls = ["tesla.com"],
  max_age_hours = 24,
  text = True
)

Exa MCP Free Tier Limits

Unauthenticated users can now try the Exa MCP for free with the following limits:
  • 3 QPS rate limit
  • 150 free calls per day
To exceed these limits, add your API key to unlock full access.

Need Help?

If you have any questions about these updates, please reach out to hello@exa.ai.