Skip to main content
Lets MCP-compatible assistants use Octen directly inside their workflow:
  • broad_search — decompose one question into concurrent sub-queries for broad, multi-angle coverage
  • search — search live web data with ranked results, highlights, filters, and optional full content
  • news_search — search news results for current events, announcements, and timely reporting
  • image_search — search the web for images by text or reference image (beta)
  • video_search — search the web for videos by text query (beta)
  • extract — fetch URLs as clean markdown or text

Get API Key

Create a key from the API Platform.

GitHub

View source and contribute.

npm

Install the octen-mcp package.

Why Octen MCP

Fast

Web search averages 62ms. Fast enough for multi-step MCP workflows.

Accurate

Powered by SOTA text and VL embedding models. Better sources, fewer hallucinations.

Fresh

Live web data with minute-level updates. Useful for news, prices, and fast-moving pages.

Efficient

Clean highlights, optional full_content, and page labels keep model context relevant.

Installation

You’ll need an Octen API key first. Create one from the API Platform.
Add to claude_desktop_config.json:
{
  "mcpServers": {
    "octen": {
      "command": "npx",
      "args": ["-y", "octen-mcp"],
      "env": {
        "OCTEN_API_KEY": "your-key-here"
      }
    }
  }
}

Tools

ToolUse forReturns
broad_searchComparisons, surveys, multi-angle searchRanked results grouped per generated sub-query
searchSearch bars, answer engines, news and source lookupRanked pages with relevant highlight and optional full_content
news_searchCurrent events and timely reportingSame as search, with topic fixed to news
image_search (beta)Image lookup, visual references, design referencesRanked images; design adds a style summary and html_snippet
video_search (beta)Video lookup, clip discovery, media previewsRanked videos with matching segment, duration, and cover
extractReading pages, cleaning articlesClean content with optional highlights, category, and page_structure
Use broad_search for comparisons, surveys, and multi-angle research. It decomposes a query into related sub-queries from multiple angles, searches them concurrently. It supports:
  • max_queries: 1-30 sub-queries (default 5) — raise for broader coverage
  • all search options applied to every sub-query
{
  "query": "compare cloud GPU pricing across major providers",
  "max_queries": 5,
  "count": 10
}
Use search for live web retrieval. It supports:
  • topic: general or news
  • count: 1-100 results
  • include_domains / exclude_domains
  • include_text / exclude_text
  • time_basis, time_range, start_time, and end_time
  • highlight snippets or full_content
  • include_images and include_videos
  • format (text or markdown) and safesearch
{
  "query": "latest AI agent benchmark results",
  "count": 5,
  "time_range": "week"
}
Use news_search for current events, headlines, announcements, and time-sensitive reporting. It uses Octen Web Search with topic set to news. Equivalent Search API request:
{
  "query": "Fed rate decision",
  "topic": "news",
  "count": 10,
  "time_range": "day"
}
In beta — contact us for beta access. Use image_search for image lookup, visual references, and design assets. It supports:
  • query and optional image_url (reference image)
  • topic: general, or design for UI design references
  • count: 1-10 results
  • include_domains / exclude_domains
  • time_range, start_time, and end_time
  • safesearch and html_snippet
{
  "query": "pricing comparison table, dark theme, SaaS",
  "topic": "design",
  "count": 5
}
In beta — contact us for beta access. Use video_search for video lookup, clip discovery, and media previews. It supports:
  • query
  • count: 1-10 results
  • time_range, start_time, and end_time
  • safesearch
{
  "query": "how to make espresso",
  "count": 5
}

Extract

Use extract when the input is one or more URLs. It supports:
  • urls: 1-20 URLs
  • query: return ranked highlights from each page instead of the full body
  • max_age_seconds: cache freshness control
  • format: markdown or text
  • include_images, include_videos, include_audio, and include_favicon
{
  "urls": [
    "https://docs.octen.ai/api-reference/search",
    "https://docs.octen.ai/api-reference/extract"
  ],
  "format": "markdown"
}

Response shapes

Search returns a query and ranked result list:
{
  "code": 0,
  "msg": "success",
  "request_id": "req_abc123def456",
  "data": {
    "query": "latest AI agent benchmark results",
    "results": [
      {
        "title": "Example result",
        "url": "https://example.com/article",
        "highlight": "Query-relevant snippet...",
        "time_published": "2026-06-20T00:00:00Z",
        "time_last_crawled": "2026-06-23T08:30:05Z"
      }
    ]
  },
  "meta": {
    "usage": { "num_search_queries": 1, "full_content_tokens": 0 },
    "latency": 237
  }
}
Extract returns one result per URL:
{
  "code": 0,
  "msg": "success",
  "request_id": "req_abc123def456",
  "data": {
    "results": [
      {
        "url": "https://docs.octen.ai/api-reference/search",
        "status": "success",
        "title": "Search - Octen",
        "full_content": "Clean markdown or text content...",
        "time_last_crawled": "2026-04-21T08:30:05Z",
        "page_structure": { "primary": "Content Page", "secondary": "Article" },
        "category": { "primary": "Computers, Electronics & Technology", "secondary": "Artificial Intelligence" }
      }
    ]
  },
  "meta": {
    "usage": { "total_urls": 1, "successful_urls": 1 },
    "latency": 1832
  }
}
With extract.query, each successful URL returns highlights instead of full_content. Failed URLs return status: "failed" and an error_message; failed URLs are not billed.

Configuration

VariableRequiredDefault
OCTEN_API_KEYYes-
OCTEN_API_URLNohttps://api.octen.ai