이 MCP로 할 수 있는 일
Verifies explicit claims about public HTTPS endpoints through live HTTP observations and provides historical verification evidence.
도구
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['probe_id'], 'properties': {'limit': {'type': 'integer', 'default': 10, 'maximum': 20, 'minimum': 1, 'description': 'Maximum number of newest stored observations to return, from 1 through 20.'}, 'probe_id': {'type': 'string', 'pattern': '^[a-f0-9]{64}$', 'description': 'The 64-character lowercase hexadecimal Probe experiment ID returned by verify_http_claim.'}}}
출력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['protocol', 'probe_id', 'observations', 'summary'], 'properties': {'summary': {'type': 'object', 'required': ['observations', 'counts', 'dominant_verdict', 'agreement', 'changed_since_previous'], 'properties': {'counts': {'type': 'object', 'required': ['PASS', 'FAIL', 'ERROR'], 'properties': {'FAIL': {'type': 'number'}, 'PASS': {'type': 'number'}, 'ERROR': {'type': 'number'}}, 'additionalProperties': False}, 'agreement': {'type': ['number', 'null']}, 'observations': {'type': 'number'}, 'dominant_verdict': {'anyOf': [{'enum': ['PASS', 'FAIL'], 'type': 'string'}, {'type': 'null'}]}, 'changed_since_previous': {'type': 'boolean'}}, 'additionalProperties': False}, 'probe_id': {'type': 'string'}, 'protocol': {'type': 'string', 'const': 'probe.history.v0'}, 'observations': {'type': 'array', 'items': {'type': 'object', 'required': ['protocol', 'probe_id', 'observed_at', 'verdict', 'target', 'status_code', 'latency_ms', 'body_sha256', 'bytes_observed', 'body_truncated', 'assertion_results', 'redirects_followed', 'redirect_count', 'final_url', 'redirect_chain', 'termination'], 'properties': {'target': {'type': 'object', 'required': ['host', 'method'], 'properties': {'host': {'type': 'string'}, 'method': {'enum': ['GET', 'HEAD'], 'type': 'string'}}, 'additionalProperties': False}, 'verdict': {'enum': ['PASS', 'FAIL', 'ERROR'], 'type': 'string'}, 'probe_id': {'type': 'string'}, 'protocol': {'type': 'string', 'const': 'probe.evidence.v0'}, 'final_url': {'type': 'string'}, 'error_code': {'type': 'string'}, 'latency_ms': {'type': ['number', 'null']}, 'body_sha256': {'type': ['string', 'null']}, 'observed_at': {'type': 'string'}, 'status_code': {'type': ['number', 'null']}, 'termination': {'type': 'string'}, 'body_truncated': {'type': 'boolean'}, 'bytes_observed': {'type': 'number'}, 'redirect_chain': {'type': 'array', 'items': {'type': 'object', 'required': ['hop', 'from_url', 'status_code', 'validated'], 'properties': {'hop': {'type': 'number'}, 'from_url': {'type': 'string'}, 'location': {'type': 'string'}, 'rejection': {'type': 'string'}, 'validated': {'type': 'boolean'}, 'status_code': {'type': 'number'}, 'resolved_url': {'type': 'string'}}, 'additionalProperties': False}}, 'redirect_count': {'type': 'number'}, 'assertion_results': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'expected', 'actual', 'passed'], 'properties': {'kind': {'type': 'string', 'const': 'status'}, 'actual': {'type': 'number'}, 'passed': {'type': 'boolean'}, 'expected': {'type': 'number'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'key', 'expected', 'actual_fingerprint', 'passed'], 'properties': {'key': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'header_equals'}, 'passed': {'type': 'boolean'}, 'expected': {'type': 'string'}, 'actual_fingerprint': {'type': 'object', 'required': ['type', 'sha256'], 'properties': {'type': {'type': 'string'}, 'sha256': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'key', 'expected', 'passed', 'error_code'], 'properties': {'key': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'header_equals'}, 'passed': {'type': 'boolean', 'const': False}, 'expected': {'type': 'string'}, 'error_code': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'key', 'expected', 'actual_fingerprint', 'passed'], 'properties': {'key': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'json_equals'}, 'passed': {'type': 'boolean'}, 'expected': {}, 'actual_fingerprint': {'type': 'object', 'required': ['type', 'sha256'], 'properties': {'type': {'type': 'string'}, 'sha256': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'key', 'expected', 'passed', 'error_code'], 'properties': {'key': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'json_equals'}, 'passed': {'type': 'boolean', 'const': False}, 'expected': {}, 'error_code': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expected', 'contains', 'passed'], 'properties': {'kind': {'type': 'string', 'const': 'body_contains'}, 'passed': {'type': 'boolean'}, 'contains': {'type': 'boolean'}, 'expected': {'type': 'string'}}, 'additionalProperties': False}]}}, 'redirects_followed': {'type': 'boolean'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['url', 'assertions'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'description': 'Public HTTPS URL to observe. V0 forbids credentials, query strings, fragments, IP literals, private or local destinations, and non-443 ports.'}, 'method': {'enum': ['GET', 'HEAD'], 'type': 'string', 'default': 'GET', 'description': 'HTTP method to observe. Use HEAD only when response headers and status are sufficient.'}, 'assertions': {'type': 'array', 'items': {'oneOf': [{'type': 'object', 'required': ['kind', 'expected'], 'properties': {'kind': {'type': 'string', 'const': 'status', 'description': 'Assert the HTTP response status code.'}, 'expected': {'type': 'integer', 'maximum': 599, 'minimum': 100, 'description': 'Expected HTTP status code from 100 through 599.'}}}, {'type': 'object', 'required': ['kind', 'key', 'expected'], 'properties': {'key': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Response header name to compare case-insensitively.'}, 'kind': {'type': 'string', 'const': 'header_equals', 'description': 'Assert an exact response header value.'}, 'expected': {'type': 'string', 'maxLength': 1024, 'description': 'Exact expected response header value.'}}}, {'type': 'object', 'required': ['kind', 'key', 'expected'], 'properties': {'key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'description': 'JSON Pointer identifying the response value to compare, for example /status.'}, 'kind': {'type': 'string', 'const': 'json_equals', 'description': 'Assert an exact JSON value at a JSON Pointer.'}, 'expected': {'description': 'Exact JSON value expected at the JSON Pointer.'}}}, {'type': 'object', 'required': ['kind', 'expected'], 'properties': {'kind': {'type': 'string', 'const': 'body_contains', 'description': 'Assert that the response body contains a literal substring.'}, 'expected': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'description': 'Literal case-sensitive substring expected in the bounded response body.'}}}]}, 'maxItems': 8, 'minItems': 1, 'description': 'One to eight explicit assertions evaluated against the same HTTP response.'}, 'follow_redirects': {'type': 'boolean', 'default': False, 'description': 'Whether to follow up to three validated HTTPS redirects. Defaults to false.'}, 'freshness_seconds': {'type': 'integer', 'default': 300, 'maximum': 86400, 'minimum': 300, 'description': 'Maximum acceptable age of reusable matching evidence, in seconds. Public Probe V0 requires exactly 300.'}}}
출력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['protocol', 'evidence_source', 'evidence_age_seconds', 'result', 'summary'], 'properties': {'result': {'type': 'object', 'required': ['protocol', 'probe_id', 'observed_at', 'verdict', 'target', 'status_code', 'latency_ms', 'body_sha256', 'bytes_observed', 'body_truncated', 'assertion_results', 'redirects_followed', 'redirect_count', 'final_url', 'redirect_chain', 'termination'], 'properties': {'target': {'type': 'object', 'required': ['host', 'method'], 'properties': {'host': {'type': 'string'}, 'method': {'enum': ['GET', 'HEAD'], 'type': 'string'}}, 'additionalProperties': False}, 'verdict': {'enum': ['PASS', 'FAIL', 'ERROR'], 'type': 'string'}, 'probe_id': {'type': 'string'}, 'protocol': {'type': 'string', 'const': 'probe.evidence.v0'}, 'final_url': {'type': 'string'}, 'error_code': {'type': 'string'}, 'latency_ms': {'type': ['number', 'null']}, 'body_sha256': {'type': ['string', 'null']}, 'observed_at': {'type': 'string'}, 'status_code': {'type': ['number', 'null']}, 'termination': {'type': 'string'}, 'body_truncated': {'type': 'boolean'}, 'bytes_observed': {'type': 'number'}, 'redirect_chain': {'type': 'array', 'items': {'type': 'object', 'required': ['hop', 'from_url', 'status_code', 'validated'], 'properties': {'hop': {'type': 'number'}, 'from_url': {'type': 'string'}, 'location': {'type': 'string'}, 'rejection': {'type': 'string'}, 'validated': {'type': 'boolean'}, 'status_code': {'type': 'number'}, 'resolved_url': {'type': 'string'}}, 'additionalProperties': False}}, 'redirect_count': {'type': 'number'}, 'assertion_results': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'expected', 'actual', 'passed'], 'properties': {'kind': {'type': 'string', 'const': 'status'}, 'actual': {'type': 'number'}, 'passed': {'type': 'boolean'}, 'expected': {'type': 'number'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'key', 'expected', 'actual_fingerprint', 'passed'], 'properties': {'key': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'header_equals'}, 'passed': {'type': 'boolean'}, 'expected': {'type': 'string'}, 'actual_fingerprint': {'type': 'object', 'required': ['type', 'sha256'], 'properties': {'type': {'type': 'string'}, 'sha256': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'key', 'expected', 'passed', 'error_code'], 'properties': {'key': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'header_equals'}, 'passed': {'type': 'boolean', 'const': False}, 'expected': {'type': 'string'}, 'error_code': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'key', 'expected', 'actual_fingerprint', 'passed'], 'properties': {'key': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'json_equals'}, 'passed': {'type': 'boolean'}, 'expected': {}, 'actual_fingerprint': {'type': 'object', 'required': ['type', 'sha256'], 'properties': {'type': {'type': 'string'}, 'sha256': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'key', 'expected', 'passed', 'error_code'], 'properties': {'key': {'type': 'string'}, 'kind': {'type': 'string', 'const': 'json_equals'}, 'passed': {'type': 'boolean', 'const': False}, 'expected': {}, 'error_code': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expected', 'contains', 'passed'], 'properties': {'kind': {'type': 'string', 'const': 'body_contains'}, 'passed': {'type': 'boolean'}, 'contains': {'type': 'boolean'}, 'expected': {'type': 'string'}}, 'additionalProperties': False}]}}, 'redirects_followed': {'type': 'boolean'}}, 'additionalProperties': False}, 'summary': {'type': 'object', 'required': ['observations', 'counts', 'dominant_verdict', 'agreement', 'changed_since_previous'], 'properties': {'counts': {'type': 'object', 'required': ['PASS', 'FAIL', 'ERROR'], 'properties': {'FAIL': {'type': 'number'}, 'PASS': {'type': 'number'}, 'ERROR': {'type': 'number'}}, 'additionalProperties': False}, 'agreement': {'type': ['number', 'null']}, 'observations': {'type': 'number'}, 'dominant_verdict': {'anyOf': [{'enum': ['PASS', 'FAIL'], 'type': 'string'}, {'type': 'null'}]}, 'changed_since_previous': {'type': 'boolean'}}, 'additionalProperties': False}, 'protocol': {'type': 'string', 'const': 'probe.check.v0'}, 'evidence_source': {'enum': ['cached', 'fresh_execution'], 'type': 'string'}, 'evidence_age_seconds': {'type': 'number'}}, 'additionalProperties': False}
최근 도구 변경
유사한 MCP 서버
TinyFn
Offers deterministic utility functions for mathematics, conversions, validation, hashing, encoding, arrays, dates, colors, and pa…
hyperion
Acts as a paid MCP tool marketplace and utility gateway with server discovery, HTTP and JavaScript tools, research, data conversi…
Andreax
Offers pay-per-call AI services for inference, agent and workflow design, OCR and transcription, code generation and review, clas…
Vee3
Manages Clerk authentication infrastructure, including users, organizations, domains, sessions, tokens, OAuth, SSO, machines, per…
Courier
Provides notification delivery infrastructure for users, tenants, lists, templates, preferences, journeys, automations, brands, a…
GripForge
Generates, rigs, animates, analyzes, and packages game characters, weapons, armor, effects, environments, and engine-ready assets.
IA-QA — 130+ QA & Dev Tools for AI Agents
Provides deterministic QA, evaluation, testing, code analysis, prompt and RAG checks, model comparison, and web security diagnost…
apis-io
Provides catalog search, comparison, scoring, enrichment, lists, and dataset exports for APIs, providers, specifications, workflo…