CaptureOneAI Web Perception

Give agents eyes on any web page: structured context, and changes explained in plain language.

Should I use this

Quality & Safety

A
Description quality
93%
Schema completeness
80%
Naming quality
97%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~768Tokens (tool definitions)
~984 BTypical response size
Moderate attention impact (0.60% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "web-perception": {
      "url": "https://captureoneai.com/mcp"
    }
  }
}

Remote endpoints

https://captureoneai.com/mcpstreamable-http

What it can do

Tool inventory

Tools (6)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢capture_context(url, width, height, dismissCookies)

Returns the structured representation of a web page: visible text with coordinates, interactive elements, forms and tables. Use this to let an agent read and understand a page without parsing raw HTML.

Input Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "format": "uri",
      "description": "The page to read"
    },
    "width": {
      "type": "integer",
      "minimum": 100,
      "maximum": 3840
    },
    "height": {
      "type": "integer",
      "minimum": 100,
      "maximum": 2160
    },
    "dismissCookies": {
      "type": "boolean",
      "description": "Auto-dismiss cookie/consent banners before reading. Default true."
    }
  },
  "required": [
    "url"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡find_elements(url, width, height, dismissCookies)

Returns only the interactive elements of a page (buttons, links, inputs) with role, label, CSS selector and pixel coordinates. Use this before acting on a page (computer-use / Set-of-Marks style grounding) instead of capture_context when you only need to know what can be clicked and where.

Input Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "format": "uri"
    },
    "width": {
      "type": "integer",
      "minimum": 100,
      "maximum": 3840
    },
    "height": {
      "type": "integer",
      "minimum": 100,
      "maximum": 2160
    },
    "dismissCookies": {
      "type": "boolean"
    }
  },
  "required": [
    "url"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡create_semantic_monitor(url, label, schedule, intent, callbackUrl)

Watches a URL on a schedule and reports what changed and whether it matters, explained by AI — not just a pixel-diff percentage. Use this for competitor pricing pages, changelogs, status pages, or any page whose changes should trigger a workflow.

Input Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "format": "uri"
    },
    "label": {
      "type": "string",
      "maxLength": 100
    },
    "schedule": {
      "type": "string",
      "description": "Cron expression, e.g. \"*/30 * * * *\". Defaults to every 10 minutes."
    },
    "intent": {
      "type": "string",
      "maxLength": 500,
      "description": "What you care about, in plain language, e.g. \"alert me about pricing or plan changes\""
    },
    "callbackUrl": {
      "type": "string",
      "format": "uri",
      "description": "Where to POST the change payload when something changes"
    }
  },
  "required": [
    "url"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_monitors

Lists your active monitors and their IDs, URLs and schedules.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢check_monitor(monitorId)

Triggers an immediate check for a monitor instead of waiting for its next scheduled run, and returns any detected changes.

Input Schema

{
  "type": "object",
  "properties": {
    "monitorId": {
      "type": "string",
      "description": "The monitor ID from create_semantic_monitor or list_monitors"
    }
  },
  "required": [
    "monitorId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_monitor_changes(monitorId, limit)

Returns the recent check history for a monitor, including detected changes with their relevance and explanation.

Input Schema

{
  "type": "object",
  "properties": {
    "monitorId": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 200,
      "description": "Max number of recent checks to return. Default 20."
    }
  },
  "required": [
    "monitorId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Recommended Prompts

find_specific
Find [specific item] using CaptureOneAI Web Perception
Expected tools: find_elements
fetch_info
Fetch [information type] using CaptureOneAI Web Perception
Expected tools: get_monitor_changes
search_research
Search for information about [topic] using CaptureOneAI Web Perception
Expected tools: find_elements
list_items
List all [items] available in CaptureOneAI Web Perception
Expected tools: list_monitors
retrieve_data
Get details about [item] from CaptureOneAI Web Perception
Expected tools: get_monitor_changes

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools
verifiedversion not recorded6 tools