PageWatch - page-to-data extraction and change monitoring
Extract prices, lists, tables, events from static pages and watch them for changes.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"pagewatch": {
"url": "https://pagewatch.zenith-ops.workers.dev/mcp"
}
}
}원격 엔드포인트
https://pagewatch.zenith-ops.workers.dev/mcpstreamable-http할 수 있는 일
도구 목록
도구 (3)
🟢extract_page(url, mode, selector, attr, fields, ...)
Fetch one public static web page and extract structured data from it (text, attr, list, table, price, events, page, links, json). Free tier: 30 calls per day per client. No JavaScript rendering.
입력 스키마
{
"type": "object",
"properties": {
"url": {
"type": "string"
},
"mode": {
"type": "string",
"enum": [
"text",
"attr",
"list",
"table",
"price",
"events",
"page",
"links",
"json"
],
"description": "What to extract. Default text for extract_page, page for watch_page."
},
"selector": {
"type": "string",
"description": "CSS selector (required for text, attr, list)."
},
"attr": {
"type": "string",
"description": "Attribute name for mode=attr."
},
"fields": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"description": "mode=list: {\"name\": \"css\" or \"css@attr\"}."
},
"match": {
"type": "string",
"description": "mode=links: regular expression filter."
},
"jsonpath": {
"type": "string",
"description": "mode=json: JSONPath-lite such as $.a.b[0]."
},
"sameHost": {
"type": "boolean"
},
"all": {
"type": "boolean"
},
"tableIndex": {
"type": "integer",
"minimum": 0
},
"paid": {
"type": "boolean",
"description": "true: use the paid endpoint (x402). The result is the payment requirements unless a payment header is sent."
}
},
"required": [
"url"
],
"additionalProperties": false
}🟡watch_page(url, mode, selector, attr, fields, ...)
Create a monitor that checks a public page on a schedule and records changes. Returns monitor id, manage token (shown once), feed and events URLs. Free plan: checks every 60 minutes or slower, 3 active monitors per client, 30 days.
입력 스키마
{
"type": "object",
"properties": {
"url": {
"type": "string"
},
"mode": {
"type": "string",
"enum": [
"text",
"attr",
"list",
"table",
"price",
"events",
"page",
"links",
"json"
],
"description": "What to extract. Default text for extract_page, page for watch_page."
},
"selector": {
"type": "string",
"description": "CSS selector (required for text, attr, list)."
},
"attr": {
"type": "string",
"description": "Attribute name for mode=attr."
},
"fields": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"description": "mode=list: {\"name\": \"css\" or \"css@attr\"}."
},
"match": {
"type": "string",
"description": "mode=links: regular expression filter."
},
"jsonpath": {
"type": "string",
"description": "mode=json: JSONPath-lite such as $.a.b[0]."
},
"sameHost": {
"type": "boolean"
},
"all": {
"type": "boolean"
},
"tableIndex": {
"type": "integer",
"minimum": 0
},
"interval_minutes": {
"type": "integer",
"minimum": 15
},
"webhook_url": {
"type": "string",
"description": "https URL for signed change notifications."
},
"paid": {
"type": "boolean",
"description": "true: use the paid endpoint (x402). The result is the payment requirements unless a payment header is sent."
}
},
"required": [
"url"
],
"additionalProperties": false
}🟢get_changes(id, limit)
Read the latest state and the change log of a monitor by id.
입력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"required": [
"id"
],
"additionalProperties": false
}커뮤니티
증거