Glasser
← Exa

Provided by Exa

Page Text, Highlights and Summary for Multiple URLs

$0.003301 per result, up to $0.10answers within 25s

Body text plus key highlights and a short summary for up to 10 web pages given their URLs via Exa: each delivered page returns title, author, published date, its text, the passages that matter most and a brief summary, optionally steered by a question. Optional freshness controls take a cached copy up to a given age or force a fresh fetch. URLs that cannot be retrieved are reported per URL and not charged; three content types are billed per page.

Contract snapshot: 2026-09-29. Inspect in Glasser for current terms.

json
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "urls"
  ],
  "properties": {
    "urls": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^https?:\\/\\/",
        "maxLength": 2048,
        "minLength": 8
      },
      "maxItems": 10,
      "minItems": 1
    },
    "summary": {
      "type": "object",
      "properties": {
        "query": {
          "type": "string",
          "maxLength": 500,
          "minLength": 1
        }
      },
      "additionalProperties": false
    },
    "highlights": {
      "type": "object",
      "properties": {
        "query": {
          "type": "string",
          "maxLength": 500,
          "minLength": 1
        },
        "maxCharacters": {
          "type": "integer",
          "maximum": 10000,
          "minimum": 1
        }
      },
      "additionalProperties": false
    },
    "maxAgeHours": {
      "type": "integer",
      "maximum": 720,
      "minimum": -1
    },
    "maxCharacters": {
      "type": "integer",
      "maximum": 10000,
      "minimum": 1
    },
    "livecrawlTimeout": {
      "type": "integer",
      "maximum": 12000,
      "minimum": 1000
    }
  },
  "additionalProperties": false
}

How to run it

Two fields identify it: the Provider and the endpoint key. The key looks like a path because it usually mirrors the Provider's own, but it is an opaque identifier — not a URL you can open. The same provider:endpoint pair is what your Policy lists.

Once: paste this into your agent's chat. The Skill installs the CLI and logs in by itself. For an agent that cannot use a shell, connect it over MCP instead.

Setup prompt
set up https://glasser.ai/SKILL.md

Then ask for this Endpoint:

Agent prompt
Run the Exa Endpoint /contents?highlights=true&summary=true on Glasser with input {"urls":["https://en.wikipedia.org/wiki/Battery_recycling"],"summary":{"query":"How are lithium-ion batteries recycled?"},"maxCharacters":2000}

What each outcome charges

No resultThe Provider answered: nothing matched.$0.00
Provider errorThe Provider failed to answer.$0.00
Timed outThe deadline won.$0.00
Internal failureOur defect.$0.00
Method POSTVersion 1Provider documentation ↗