MCP server intelligence profile

octen-mcp Server

MCP server for Octen Extract that turns any URL into clean, LLM-ready markdown, with highlights and classification. Works with Claude, Cursor, VS Code, and other MCP clients

Local OnlyOfficial distributionOcten-Team
Verified cleanNpm · 0.5.1

Our scanner tested version 0.5.1 without proving a finding in the methods exercised. This is not a guarantee that every deployment is secure.

1Distribution channel
6Independently observed tools
0Linked remote endpoints
AvailableVersion intelligence

Install and connect

Installation and connection instructions are shown only when supported by retained package, repository, or endpoint evidence.

Install octen-mcp from npm

Install exact version 0.5.1. No verified executable entrypoint is available, so use the package documentation to launch it.

npm install --save-exact octen-mcp@0.5.1

Identity

Canonical slugocten-mcp-687da0d7DeploymentLocal Only
Canonical packagenpm:octen-mcpRepositoryOcten-Team/octen-mcp
First publishedJul 30, 2026Latest releaseJul 30, 2026
Last security verificationSep 1, 2026Classification confidence90%
PublicationPublishedOfficial distributionYes

Distributions

ChannelIdentifierCurrent versionVersionsSource
npmocten-mcp0.5.15Repository

Current release

PackageVersionPublished / observedInventorySecurity scan
npmocten-mcp0.5.1CurrentSep 5, 20266 toolsSucceeded · 0 resources · 0 promptsVerified clean
Enterprise protection

Continuously monitor this MCP for security risk

Independently scan the exact version your agents use, receive alerts when its risk changes, and investigate every finding with retained version evidence.

  • Independent exact-version security scans
  • Continuous release and vulnerability monitoring
  • Risk-change alerts with capability context
  • Historical evidence and API exports
Custom pricingContact salesTailored to your organization, integrations, data needs, and support requirements.

Current version evidence

Provenanceartifact_hash_verifiedSignature
MCP SDKArtifact SHA-2562abedab0a357abb3aeaf77cfd5706cea7ab7551c8b94e50e8c24ee1c35449066
Scannermcp-proof-engine 0.1.0Scan completedSep 1, 2026
Security ratingMethodology
0Proven
2383Clean
0Inconclusive
0Flaky
0Errors

Current protocol inventory

2025-06-18Negotiated protocol
octen-mcpServer-reported name
1Capability groups
Sep 1, 2026Observed

Tools 6

ToolCategoryAnnotationsRisk
broad_searchSearch the web across many angles in one call — for comparisons, research, surveys, and questions with several distinct parts. Expands your question into multiple sub-queries and runs them concurrently. USE WHEN the question has multiple distinct parts or entities that one search cannot cover: - comparing vendors / products / pricing across many sources - literature reviews, market or landscape surveys - open-ended "what are the options for X" / "how do people solve Y" - a question that clearly decomposes into 3+ independent sub-questions - multi-angle questions about recent events ("what shipped across the industry this month") — set topic=news, do NOT loop news_search DO NOT USE for: - a single fact, entity, or document → use `search` - re-running a disappointing search → do NOT call broad_search twice; follow up with a targeted `search` or `extract` on the specific gaps - reading a page you already have the URL for → use `extract` - a straight A-vs-B comparison of two known entities → two targeted `search` calls are cheaper and more controllable COST: fans out into `max_queries` concurrent searches — roughly Nx the cost and notably higher latency than a single `search`. When in doubt, prefer `search`. QUERY: pass one natural-language question (max 500 chars). Resolve pronouns and references from the conversation first — "how does it compare to the other one" is a useless query. Do NOT pre-split into sub-queries; that is this tool's job. For broader coverage raise `max_queries` rather than calling repeatedly. Per-sub-query options (count, topic, `language` filter, domain / text filters, time window, highlight / full_content, media) match `search` and apply to every sub-query. RESULTS are grouped per sub-query and NOT deduplicated — the same URL may appear under several sub-queries. max_queries: 3-5 focused comparison (2-3 entities) | 5-10 multi-facet research | 10-20 landscape scan | 20-30 exhaustive survey For a single focused lookup use `search`; to read a specific page use `extract`. keywords: web search, search the web, look up, find information, research, compare, comparison, versus, alternatives, options, landscape, survey, market research, pricing, latest, current information, multi-part question
Input schema
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Search query. Max 500 chars."
    },
    "max_queries": {
      "type": "integer",
      "minimum": 1,
      "maximum": 30,
      "default": 5,
      "description": "Upper bound on the number of sub-queries generated (1-30). Default 5 — raise toward 30 for surveys / deeper research, lower for a tighter search."
    },
    "topic": {
      "type": "string",
      "enum": [
        "general",
        "news"
      ],
      "default": "general",
      "description": "Search category: `general` for broad web search, `news` for news-focused results. Default general."
    },
    "count": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 5,
      "description": "Number of results to return (1-100). Default 5."
    },
    "include_domains": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 60
      },
      "maxItems": 1200,
      "description": "Only return results from these domains (e.g. 'arxiv.org'). Max 1200, each ≤60 chars."
    },
    "exclude_domains": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 60
      },
      "maxItems": 1200,
      "description": "Drop results from these domains. Max 1200, each ≤60 chars."
    },
    "include_text": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 30
      },
      "maxItems": 5,
      "description": "Only return results whose content contains all of these strings. Max 5, each ≤30 chars."
    },
    "exclude_text": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 30
      },
      "maxItems": 5,
      "description": "Drop results whose content contains any of these strings. Max 5, each ≤30 chars."
    },
    "time_basis": {
      "type": "string",
      "enum": [
        "auto",
        "published",
        "crawled"
      ],
      "default": "auto",
      "description": "Which timestamp the time window filters against: page `published` date, last `crawled` date, or `auto`. Default auto."
    },
    "time_range": {
      "type": "string",
      "enum": [
        "day",
        "week",
        "month",
        "year",
        "d",
        "w",
        "m",
        "y"
      ],
      "description": "Relative time window (e.g. `week`, `month`). Mutually exclusive with `start_time`/`end_time` — if both are given, the absolute range wins."
    },
    "start_time": {
      "type": "string",
      "description": "Lower bound for the time window, ISO 8601 (e.g. '2025-01-01T00:00:00Z')."
    },
    "end_time": {
      "type": "string",
      "description": "Upper bound for the time window, ISO 8601."
    },
    "format": {
      "type": "string",
      "enum": [
        "text",
        "markdown"
      ],
      "default": "text",
      "description": "Format of returned content. Default text."
    },
    "safesearch": {
      "type": "string",
      "enum": [
        "off",
        "strict"
      ],
      "default": "strict",
      "description": "Adult-content filter. Default strict."
    },
    "language": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "ar",
          "de",
          "en",
          "es",
          "fr",
          "hi",
          "id",
          "it",
          "ja",
          "ko",
          "nl",
          "pl",
          "pt",
          "ru",
          "th",
          "tr",
          "vi",
          "zh"
        ]
      },
      "default": [],
      "description": "Languages to filter results by, as ISO 639-1 codes. Empty = no filter."
    },
    "highlight": {
      "type": "object",
      "description": "Return a ranked highlighted snippet per result. Omit to use the server default.",
      "properties": {
        "enable": {
          "type": "boolean",
          "default": true,
          "description": "Whether to return highlights."
        },
        "max_tokens": {
          "type": "integer",
          "minimum": 100,
          "maximum": 20000,
          "default": 512,
          "description": "Max tokens per highlight snippet (100-20000)."
        }
      }
    },
    "full_content": {
      "type": "object",
      "description": "Return the cleaned full page body per result. Heavier than `highlight` — use only when the snippet isn't enough. Omit to use the server default (off).",
      "properties": {
        "enable": {
          "type": "boolean",
          "default": false,
          "description": "Whether to return full content."
        },
        "max_tokens": {
          "type": "integer",
          "minimum": 100,
          "maximum": 100000,
          "default": 2048,
          "description": "Max tokens of full content per result (100-100000)."
        }
      }
    },
    "include_images": {
      "type": "boolean",
      "default": false,
      "description": "Return image URLs (and a cover image) found on each result page."
    },
    "timeout": {
      "type": "integer",
      "minimum": 1,
      "maximum": 300,
      "description": "Request timeout in seconds (1-300). Defaults to 120s if unset. Raise it for large `max_queries` surveys, which legitimately take longer."
    }
  },
  "required": [
    "query"
  ]
}
Annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
Read onlyNon-destructiveOpen world
extractRead one or more web pages by URL and return clean, LLM-ready content (markdown or text). By default (no `query`) it returns each page's full content — this is what you want in almost all cases. Only pass `query` when the user explicitly asks to fetch relevance-ranked snippets for a specific topic; doing so returns highlights INSTEAD of the full body, so the content will be partial. Every result also includes a `category` (topical) and `page_structure` (typology) classification. Bare hosts like 'octen.ai' are auto-normalized to https. Cached when fresh. Use this when you already have the URL(s). To find pages first, use `search` or `broad_search`. keywords: read page, fetch url, scrape, page content, article text, parse webpage, extract, read article, url content, open link
Input schema
{
  "type": "object",
  "properties": {
    "urls": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 2048
      },
      "minItems": 1,
      "maxItems": 20,
      "description": "URLs to extract. 1-20 per call, each ≤2048 chars. Bare hosts ok."
    },
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Optional — leave UNSET in the normal case. When unset, each result returns the page's `full_content` (the complete text). Only set this when the user explicitly wants relevance-ranked snippets for a specific query/topic: setting it makes each result return `highlights` (ranked excerpts) and OMIT `full_content`, so the page body will be incomplete. Do not pass it just to focus a normal fetch."
    },
    "max_age_seconds": {
      "type": "integer",
      "minimum": 300,
      "maximum": 31536000,
      "default": 86400,
      "description": "Maximum age of cached content in seconds. Default 24h. Lower this for time-sensitive pages (news / prices)."
    },
    "format": {
      "type": "string",
      "enum": [
        "markdown",
        "text"
      ],
      "default": "markdown",
      "description": "Output format. Default markdown."
    },
    "timeout": {
      "type": "integer",
      "minimum": 1,
      "maximum": 60,
      "default": 30,
      "description": "Per-URL timeout in seconds (1-60)."
    },
    "include_images": {
      "type": "boolean",
      "default": false,
      "description": "Return image resources found on each page (also enables `cover_image` when the page has one)."
    },
    "include_videos": {
      "type": "boolean",
      "default": false,
      "description": "Return video URLs found on each page."
    },
    "include_audio": {
      "type": "boolean",
      "default": false,
      "description": "Return audio URLs found on each page."
    }
  },
  "required": [
    "urls"
  ]
}
Annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
Read onlyNon-destructiveOpen world
image_searchFind images on the web by text query OR by a reference image — returns ranked results (title, source page, dimensions, thumbnail, description, summary). In Beta; contact us to request beta access. Pass exactly one of: a text `query`, an `image_url` (a picture already on the web), or `image_data` (base64, for a picture you hold). Never more than one. Set `topic` to `design` for UI design references — each result then carries a structured style `summary` and an `html_snippet` for building/restyling frontends. Use this when the user wants pictures, photos, diagrams, screenshots, or visual references — not for general text web search. keywords: find images, image search, photos, pictures, screenshots, visual reference, diagram, icon, illustration, UI design, reference image
Input schema
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Text query describing the images to find. Exactly one of `query`, `image_url` or `image_data` — never more than one."
    },
    "image_url": {
      "type": "string",
      "description": "Public image URL to search by visual similarity. Exactly one of `query`, `image_url` or `image_data` — never more than one."
    },
    "image_data": {
      "type": "string",
      "maxLength": 5242880,
      "description": "Base64-encoded image to search by visual similarity, for an image you hold rather than one already on the web. At most 5MB encoded; JPEG, PNG, WEBP, BMP, TIFF, ICO, DIB, ICNS or SGI. A `data:` URI is accepted — its payload is used. Exactly one of `query`, `image_url` or `image_data` — never more than one."
    },
    "topic": {
      "type": "string",
      "enum": [
        "general",
        "design"
      ],
      "default": "general",
      "description": "Image category: `general` for broad image search, `design` for design / illustration oriented results. Default general."
    },
    "count": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "default": 5,
      "description": "Number of results to return (1-10). Default 5."
    },
    "include_domains": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Only return results from these domains (e.g. 'unsplash.com')."
    },
    "exclude_domains": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Drop results from these domains."
    },
    "safesearch": {
      "type": "string",
      "enum": [
        "off",
        "strict"
      ],
      "default": "strict",
      "description": "Adult-content filter. Default strict."
    },
    "html_snippet": {
      "type": "object",
      "description": "Return an HTML snippet of the source context per result. Omit to use the server default.",
      "properties": {
        "enable": {
          "type": "boolean",
          "description": "Whether to return HTML snippets."
        },
        "max_tokens": {
          "type": "integer",
          "minimum": 100,
          "maximum": 100000,
          "default": 5000,
          "description": "Max tokens per HTML snippet (100-100000). Default 5000."
        }
      }
    },
    "timeout": {
      "type": "integer",
      "minimum": 1,
      "maximum": 60,
      "description": "Request timeout in seconds (1-60). Defaults to 30s if unset."
    }
  }
}
Annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
Read onlyNon-destructiveOpen world
news_searchSearch recent news and return ranked articles (title, url, snippet) — current events, headlines, timely reporting. This is `search` locked to `topic: news`; same options as `search` (domain / text filters, `language` filter, time window, highlight / full_content, media) except `topic`, which is fixed to news. For a single news lookup this is the right tool. For a multi-angle news question ("what shipped across the industry this month", "how are different outlets covering X"), use `broad_search` with topic=news instead of looping news_search. keywords: news search, latest news, headlines, current events, breaking news, recent, today, this week, press coverage
Input schema
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Search query. Max 500 chars."
    },
    "count": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 5,
      "description": "Number of results to return (1-100). Default 5."
    },
    "include_domains": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 60
      },
      "maxItems": 1200,
      "description": "Only return results from these domains (e.g. 'arxiv.org'). Max 1200, each ≤60 chars."
    },
    "exclude_domains": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 60
      },
      "maxItems": 1200,
      "description": "Drop results from these domains. Max 1200, each ≤60 chars."
    },
    "include_text": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 30
      },
      "maxItems": 5,
      "description": "Only return results whose content contains all of these strings. Max 5, each ≤30 chars."
    },
    "exclude_text": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 30
      },
      "maxItems": 5,
      "description": "Drop results whose content contains any of these strings. Max 5, each ≤30 chars."
    },
    "time_basis": {
      "type": "string",
      "enum": [
        "auto",
        "published",
        "crawled"
      ],
      "default": "auto",
      "description": "Which timestamp the time window filters against: page `published` date, last `crawled` date, or `auto`. Default auto."
    },
    "time_range": {
      "type": "string",
      "enum": [
        "day",
        "week",
        "month",
        "year",
        "d",
        "w",
        "m",
        "y"
      ],
      "description": "Relative time window (e.g. `week`, `month`). Mutually exclusive with `start_time`/`end_time` — if both are given, the absolute range wins."
    },
    "start_time": {
      "type": "string",
      "description": "Lower bound for the time window, ISO 8601 (e.g. '2025-01-01T00:00:00Z')."
    },
    "end_time": {
      "type": "string",
      "description": "Upper bound for the time window, ISO 8601."
    },
    "format": {
      "type": "string",
      "enum": [
        "text",
        "markdown"
      ],
      "default": "text",
      "description": "Format of returned content. Default text."
    },
    "safesearch": {
      "type": "string",
      "enum": [
        "off",
        "strict"
      ],
      "default": "strict",
      "description": "Adult-content filter. Default strict."
    },
    "language": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "ar",
          "de",
          "en",
          "es",
          "fr",
          "hi",
          "id",
          "it",
          "ja",
          "ko",
          "nl",
          "pl",
          "pt",
          "ru",
          "th",
          "tr",
          "vi",
          "zh"
        ]
      },
      "default": [],
      "description": "Languages to filter results by, as ISO 639-1 codes. Empty = no filter."
    },
    "highlight": {
      "type": "object",
      "description": "Return a ranked highlighted snippet per result. Omit to use the server default.",
      "properties": {
        "enable": {
          "type": "boolean",
          "default": true,
          "description": "Whether to return highlights."
        },
        "max_tokens": {
          "type": "integer",
          "minimum": 100,
          "maximum": 20000,
          "default": 512,
          "description": "Max tokens per highlight snippet (100-20000)."
        }
      }
    },
    "full_content": {
      "type": "object",
      "description": "Return the cleaned full page body per result. Heavier than `highlight` — use only when the snippet isn't enough. Omit to use the server default (off).",
      "properties": {
        "enable": {
          "type": "boolean",
          "default": false,
          "description": "Whether to return full content."
        },
        "max_tokens": {
          "type": "integer",
          "minimum": 100,
          "maximum": 100000,
          "default": 2048,
          "description": "Max tokens of full content per result (100-100000)."
        }
      }
    },
    "include_images": {
      "type": "boolean",
      "default": false,
      "description": "Return image URLs (and a cover image) found on each result page."
    },
    "timeout": {
      "type": "integer",
      "minimum": 1,
      "maximum": 60,
      "description": "Request timeout in seconds (1-60). Defaults to 30s if unset."
    }
  },
  "required": [
    "query"
  ]
}
Annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
Read onlyNon-destructiveOpen world
searchSearch the live web and return ranked results (title, url, snippet) — fast, fresh, real-time web search for one focused lookup. Set `topic` to `news` for news-focused results. Pass `highlight` to get a ranked snippet per result, or `full_content` to pull the cleaned page body inline (heavier — costs more context). Narrow with domain / text include-exclude filters, a `language` filter (ISO 639-1 codes), and a time window (published/crawled `start_time`/`end_time`, or a relative `time_range`). Set `include_images` to return image URLs per result. USE FOR a single focused lookup: one fact, one entity, one document. If the question spans several independent subtopics, load and use `broad_search` instead — a sequence of search calls is slower and gives worse coverage than one fan-out. To read a page you already have the URL for, use `extract`. keywords: web search, search the web, look up, find, check, fact, current information, latest, news, source, url, real-time
Input schema
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Search query. Max 500 chars."
    },
    "topic": {
      "type": "string",
      "enum": [
        "general",
        "news"
      ],
      "default": "general",
      "description": "Search category: `general` for broad web search, `news` for news-focused results. Default general."
    },
    "count": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 5,
      "description": "Number of results to return (1-100). Default 5."
    },
    "include_domains": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 60
      },
      "maxItems": 1200,
      "description": "Only return results from these domains (e.g. 'arxiv.org'). Max 1200, each ≤60 chars."
    },
    "exclude_domains": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 60
      },
      "maxItems": 1200,
      "description": "Drop results from these domains. Max 1200, each ≤60 chars."
    },
    "include_text": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 30
      },
      "maxItems": 5,
      "description": "Only return results whose content contains all of these strings. Max 5, each ≤30 chars."
    },
    "exclude_text": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 30
      },
      "maxItems": 5,
      "description": "Drop results whose content contains any of these strings. Max 5, each ≤30 chars."
    },
    "time_basis": {
      "type": "string",
      "enum": [
        "auto",
        "published",
        "crawled"
      ],
      "default": "auto",
      "description": "Which timestamp the time window filters against: page `published` date, last `crawled` date, or `auto`. Default auto."
    },
    "time_range": {
      "type": "string",
      "enum": [
        "day",
        "week",
        "month",
        "year",
        "d",
        "w",
        "m",
        "y"
      ],
      "description": "Relative time window (e.g. `week`, `month`). Mutually exclusive with `start_time`/`end_time` — if both are given, the absolute range wins."
    },
    "start_time": {
      "type": "string",
      "description": "Lower bound for the time window, ISO 8601 (e.g. '2025-01-01T00:00:00Z')."
    },
    "end_time": {
      "type": "string",
      "description": "Upper bound for the time window, ISO 8601."
    },
    "format": {
      "type": "string",
      "enum": [
        "text",
        "markdown"
      ],
      "default": "text",
      "description": "Format of returned content. Default text."
    },
    "safesearch": {
      "type": "string",
      "enum": [
        "off",
        "strict"
      ],
      "default": "strict",
      "description": "Adult-content filter. Default strict."
    },
    "language": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "ar",
          "de",
          "en",
          "es",
          "fr",
          "hi",
          "id",
          "it",
          "ja",
          "ko",
          "nl",
          "pl",
          "pt",
          "ru",
          "th",
          "tr",
          "vi",
          "zh"
        ]
      },
      "default": [],
      "description": "Languages to filter results by, as ISO 639-1 codes. Empty = no filter."
    },
    "highlight": {
      "type": "object",
      "description": "Return a ranked highlighted snippet per result. Omit to use the server default.",
      "properties": {
        "enable": {
          "type": "boolean",
          "default": true,
          "description": "Whether to return highlights."
        },
        "max_tokens": {
          "type": "integer",
          "minimum": 100,
          "maximum": 20000,
          "default": 512,
          "description": "Max tokens per highlight snippet (100-20000)."
        }
      }
    },
    "full_content": {
      "type": "object",
      "description": "Return the cleaned full page body per result. Heavier than `highlight` — use only when the snippet isn't enough. Omit to use the server default (off).",
      "properties": {
        "enable": {
          "type": "boolean",
          "default": false,
          "description": "Whether to return full content."
        },
        "max_tokens": {
          "type": "integer",
          "minimum": 100,
          "maximum": 100000,
          "default": 2048,
          "description": "Max tokens of full content per result (100-100000)."
        }
      }
    },
    "include_images": {
      "type": "boolean",
      "default": false,
      "description": "Return image URLs (and a cover image) found on each result page."
    },
    "timeout": {
      "type": "integer",
      "minimum": 1,
      "maximum": 60,
      "description": "Request timeout in seconds (1-60). Defaults to 30s if unset."
    }
  },
  "required": [
    "query"
  ]
}
Annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
Read onlyNon-destructiveOpen world
video_searchFind videos on the web by text query — returns ranked results (title, source page, cover image, duration, matching segment, authors, description). In Beta; contact us to request beta access. Pass a text `query`. Use this when the user wants to find videos, clips, footage, tutorials, or a specific moment within a video — not for general text web search. keywords: find videos, video search, clips, footage, youtube, tutorial video, watch, movie, video clip
Input schema
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 500,
      "description": "Text query describing the videos to find."
    },
    "count": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "default": 5,
      "description": "Number of results to return (1-10). Default 5."
    },
    "time_range": {
      "type": "string",
      "enum": [
        "day",
        "week",
        "month",
        "year",
        "d",
        "w",
        "m",
        "y"
      ],
      "description": "Relative time window (e.g. `week`, `month`). Mutually exclusive with `start_time`/`end_time` — if both are given, the absolute range wins."
    },
    "start_time": {
      "type": "string",
      "description": "Lower bound for the time window, ISO 8601 (e.g. '2025-01-01T00:00:00Z')."
    },
    "end_time": {
      "type": "string",
      "description": "Upper bound for the time window, ISO 8601."
    },
    "safesearch": {
      "type": "string",
      "enum": [
        "off",
        "strict"
      ],
      "default": "strict",
      "description": "Adult-content filter. Default strict."
    },
    "timeout": {
      "type": "integer",
      "minimum": 1,
      "maximum": 60,
      "description": "Request timeout in seconds (1-60). Defaults to 30s if unset."
    }
  },
  "required": [
    "query"
  ]
}
Annotations
{
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
Read onlyNon-destructiveOpen world

Resources 0

  • None observed.

Resource templates 0

  • None observed.

Prompts 0

  • None observed.

Remote endpoints

EndpointTransportAuthenticationHealthObserved
No verified remote endpoint is linked.

octen-mcp Server questions

How do I install octen-mcp Server?

Install the selected package version with: npm install --save-exact octen-mcp@0.5.1

What tools does octen-mcp Server provide?

octen-mcp Server exposed 6 tools during independent protocol observation, including broad_search, extract, image_search, news_search, search, video_search.

Is octen-mcp Server secure?

Our scanner tested version 0.5.1 without proving a finding in the methods exercised. This is not a guarantee that every deployment is secure.

Explore related MCP server guides

Curated product and capability guides containing this catalog record.

Official vs Community MCP ServersMCP Servers With Completed Verification

Let’s talk about MCP security.

Share your details and our security team will contact you.