Vigil — an outside witness for AI agents
このMCPでできること
Provides signed receipts, hash-chained notarization, leases, watchdogs, journal storage, source verification, and verification utilities for monitoring and controlling agent actions.
ツール
入力スキーマ
{'type': 'object', 'examples': [{}], 'required': [], 'properties': {'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{}], 'properties': {}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'to_serial': 10, 'from_serial': 1}], 'properties': {'to_serial': {'type': 'integer', 'maximum': 9223372036854775807, 'minimum': 1, 'description': 'Last serial (default = from_serial).'}, 'from_serial': {'type': 'integer', 'maximum': 9223372036854775807, 'minimum': 1, 'description': 'First serial (default 1).'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'name': 'agent-health'}], 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'Watchdog name, 1..64 characters.'}, 'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'serial': 1}], 'required': ['serial'], 'properties': {'serial': {'type': 'integer', 'maximum': 9223372036854775807, 'minimum': 1, 'description': 'The receipt serial number.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'lim': 'amount<=100usd', 'agent': 'refund-agent', 'ttl_s': 60, 'action': 'stripe.refund'}], 'required': ['agent', 'action', 'ttl_s'], 'properties': {'lim': {'type': 'string', 'maxLength': 256, 'description': "Optional limit string the gateway enforces, e.g. 'amount<=50usd'."}, 'agent': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': 'Identifier for the agent being authorized (1-128 chars).'}, 'ttl_s': {'type': 'integer', 'maximum': 604800, 'minimum': 5, 'description': 'Lease lifetime in seconds, 5..604800. Keep it short; renew to extend.'}, 'action': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': "The action class this lease authorizes, e.g. 'stripe.refund' (1-128 chars)."}, 'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'name': 'agent-health'}], 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'Watchdog name, 1..64 characters.'}, 'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{}], 'properties': {}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'slug': 'encrypted-state'}], 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{1,64}$', 'maxLength': 64, 'minLength': 1, 'description': 'Journal slot name, 1..64 ASCII letters, numbers, hyphens, or underscores.'}, 'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'slug': 'encrypted-state'}], 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{1,64}$', 'maxLength': 64, 'minLength': 1, 'description': 'Journal slot name, 1..64 ASCII letters, numbers, hyphens, or underscores.'}, 'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{}], 'required': [], 'properties': {'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'slug': 'encrypted-state', 'data_base64': 'ZW5jcnlwdGVkLWJ5dGVz'}], 'required': ['slug', 'data_base64'], 'properties': {'slug': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{1,64}$', 'maxLength': 64, 'minLength': 1, 'description': '1-64 alnum/-/_ chars.'}, 'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}, 'data_base64': {'type': 'string', 'maxLength': 100000, 'description': 'The (already-encrypted) bytes, base64-encoded.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{}], 'required': [], 'properties': {'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'lease_id': 'lease_example'}], 'required': ['lease_id'], 'properties': {'lease_id': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': 'Opaque lease identifier returned by vigil_grant_lease.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'label': 'public example digest', 'subject_sha256': '0000000000000000000000000000000000000000000000000000000000000000'}], 'required': ['subject_sha256'], 'properties': {'label': {'type': 'string', 'maxLength': 200, 'description': 'Optional human label, <=200 chars. Public — do not put secrets here.'}, 'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}, 'subject_sha256': {'type': 'string', 'pattern': '^[0-9a-fA-F]{64}$', 'maxLength': 64, 'minLength': 64, 'description': '64 lowercase hex chars: the sha256 of the thing you are notarizing.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{}], 'properties': {}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'handle': 'example-agent'}], 'required': ['handle'], 'properties': {'handle': {'type': 'string', 'pattern': '^[a-z0-9][a-z0-9_-]{0,63}$', 'maxLength': 64, 'minLength': 1, 'description': '1-64 chars, lowercase alnum plus - and _.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'ttl_s': 60, 'lease_id': 'lease_example'}], 'required': ['lease_id', 'ttl_s'], 'properties': {'ttl_s': {'type': 'integer', 'maximum': 604800, 'minimum': 5, 'description': 'Requested lease lifetime in seconds, 5..604800; offline trust still ends at recheck_by_ms within 30 seconds.'}, 'lease_id': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': 'Opaque lease identifier returned by vigil_grant_lease.'}, 'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{}], 'required': [], 'properties': {'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'lease_id': 'lease_example'}], 'required': ['lease_id'], 'properties': {'lease_id': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': 'Opaque lease identifier returned by vigil_grant_lease.'}, 'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'name': 'agent-health', 'message': 'agent missed heartbeat', 'interval_s': 300, 'webhook_url': 'https://alerts.example.com/vigil'}], 'required': ['name', 'interval_s', 'webhook_url'], 'properties': {'name': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'A name for this watchdog, 1-64 chars.'}, 'message': {'type': 'string', 'maxLength': 2000, 'description': 'Optional note included in the absence payload, <=2000 chars.'}, 'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}, 'interval_s': {'type': 'integer', 'maximum': 604800, 'minimum': 60, 'description': 'Seconds allowed between heartbeats, 60..604800.'}, 'webhook_url': {'type': 'string', 'pattern': '^https://[^\\s]+$', 'maxLength': 2048, 'minLength': 1, 'description': 'An https URL resolving to a public address; fired once on a missed heartbeat.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{}], 'required': [], 'properties': {'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['lease', 'pubkey_hex'], 'properties': {'lease': {'type': 'object', 'description': 'A full lease token from vigil_grant_lease.'}, 'pubkey_hex': {'type': 'string', 'pattern': '^[0-9a-f]{64}$', 'maxLength': 64, 'minLength': 64, 'description': 'Mandatory Ed25519 public key pinned from a trusted out-of-band source; never copy it from the lease.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['receipt', 'pubkey_hex'], 'properties': {'receipt': {'type': 'object', 'description': 'A full receipt object as returned by vigil_notarize / vigil_get_receipt.'}, 'pubkey_hex': {'type': 'string', 'pattern': '^[0-9a-f]{64}$', 'maxLength': 64, 'minLength': 64, 'description': 'Mandatory Ed25519 public key pinned from a trusted out-of-band source; never copy it from the receipt.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['source_url', 'claim'], 'properties': {'claim': {'type': 'string', 'pattern': '\\S', 'maxLength': 2000, 'minLength': 1}, 'options': {'type': 'object', 'properties': {'max_price_usd': {'type': 'string', 'pattern': '^(0|[1-9][0-9]*)(\\.[0-9]{1,6})?$', 'maxLength': 32}, 'max_age_seconds': {'type': 'integer', 'default': 60, 'maximum': 300, 'minimum': 0}}, 'additionalProperties': False}, 'source_url': {'type': 'string', 'format': 'uri', 'pattern': '^https://[^\\s]+$', 'maxLength': 2048}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'allOf': [{'if': {'properties': {'assessment_scope': {'const': 'literal_quotation_only'}}}, 'then': {'properties': {'evidence': {'items': {'properties': {'stance': {'const': 'mentions'}}}}, 'claim_support': {'enum': ['not_assessed', 'insufficient_evidence']}}}}, {'if': {'properties': {'claim_support': {'const': 'supports'}}}, 'then': {'properties': {'evidence': {'allOf': [{'contains': {'required': ['stance'], 'properties': {'stance': {'const': 'supports'}}}, 'minContains': 1}]}}}}, {'if': {'properties': {'claim_support': {'const': 'contradicts'}}}, 'then': {'properties': {'evidence': {'allOf': [{'contains': {'required': ['stance'], 'properties': {'stance': {'const': 'contradicts'}}}, 'minContains': 1}]}}}}, {'if': {'properties': {'claim_support': {'const': 'mixed'}}}, 'then': {'properties': {'evidence': {'allOf': [{'contains': {'required': ['stance'], 'properties': {'stance': {'const': 'supports'}}}, 'minContains': 1}, {'contains': {'required': ['stance'], 'properties': {'stance': {'const': 'contradicts'}}}, 'minContains': 1}]}}}}], 'required': ['schema_version', 'request_id', 'status', 'verification_type', 'source', 'reachable', 'source_identity', 'claim', 'claim_support', 'explanation', 'evidence', 'confidence', 'risk_flags', 'checked_at', 'served_at', 'methodology_version', 'assessment_scope', 'limits', 'cache', 'payment', 'receipt'], 'properties': {'cache': {'type': 'object', 'required': ['hit', 'age_seconds', 'original_checked_at'], 'properties': {'hit': {'type': 'boolean'}, 'age_seconds': {'type': 'integer', 'minimum': 0}, 'original_checked_at': {'type': 'string', 'format': 'date-time', 'pattern': '^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\\.[0-9]{1,6})?Z$'}}, 'additionalProperties': False}, 'claim': {'type': 'string', 'maxLength': 2000, 'minLength': 1}, 'limits': {'type': 'object', 'required': ['max_text_chars'], 'properties': {'fixture': {'const': True}, 'max_redirects': {'type': 'integer', 'maximum': 5, 'minimum': 0}, 'max_text_chars': {'type': 'integer', 'maximum': 100000, 'minimum': 1}, 'max_wire_bytes': {'type': 'integer', 'maximum': 4194304, 'minimum': 1}, 'timeout_seconds': {'anyOf': [{'type': 'integer', 'maximum': 60, 'minimum': 1}, {'type': 'string', 'pattern': '^(0|[1-9][0-9]*)\\.[0-9]+$'}]}, 'max_header_bytes': {'type': 'integer', 'maximum': 65536, 'minimum': 1}, 'max_decoded_bytes': {'type': 'integer', 'maximum': 8388608, 'minimum': 1}, 'socket_timeout_seconds': {'anyOf': [{'type': 'integer', 'maximum': 15, 'minimum': 1}, {'type': 'string', 'pattern': '^(0|[1-9][0-9]*)\\.[0-9]+$'}]}}, 'additionalProperties': False}, 'source': {'type': 'object', 'required': ['requested_url', 'final_url', 'http_status', 'content_type', 'content_sha256', 'text_sha256', 'normalized_text', 'offset_unit', 'redirects', 'wire_bytes', 'decoded_bytes'], 'properties': {'final_url': {'type': 'string', 'format': 'uri', 'pattern': '^https://', 'maxLength': 49152}, 'redirects': {'type': 'array', 'items': {'type': 'object', 'required': ['url', 'status'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'pattern': '^https://', 'maxLength': 49152}, 'status': {'enum': [301, 302, 303, 307, 308]}}, 'additionalProperties': False}, 'maxItems': 5}, 'wire_bytes': {'type': 'integer', 'maximum': 26000000, 'minimum': 0}, 'http_status': {'const': 200}, 'offset_unit': {'const': 'unicode_codepoint'}, 'text_sha256': {'type': 'string', 'pattern': '^[0-9a-f]{64}$'}, 'content_type': {'type': 'string', 'pattern': '^[Tt][Ee][Xx][Tt]/([Hh][Tt][Mm][Ll]|[Pp][Ll][Aa][Ii][Nn])(?:\\s*;.*)?$', 'maxLength': 32768}, 'decoded_bytes': {'type': 'integer', 'maximum': 8388608, 'minimum': 0}, 'requested_url': {'type': 'string', 'format': 'uri', 'pattern': '^https://[^\\s]+$', 'maxLength': 2048}, 'content_sha256': {'type': 'string', 'pattern': '^[0-9a-f]{64}$'}, 'normalized_text': {'type': 'string', 'maxLength': 100000}}, 'additionalProperties': False}, 'status': {'const': 'completed'}, 'payment': {'type': 'object', 'required': ['status', 'provider', 'mode', 'simulated', 'network', 'asset', 'currency', 'amount_atomic', 'price_usd', 'transaction', 'facilitator_fee_usd', 'network_fee_usd'], 'properties': {'mode': {'enum': ['offline', 'testnet', 'mainnet']}, 'asset': {'type': 'string', 'maxLength': 128, 'minLength': 1}, 'status': {'const': 'settled'}, 'network': {'enum': ['eip155:8453', 'eip155:84532', 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp', 'solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1', 'none']}, 'currency': {'const': 'USDC'}, 'provider': {'type': 'string', 'maxLength': 64, 'minLength': 1}, 'price_usd': {'type': 'string', 'pattern': '^(0|[1-9][0-9]*)(\\.[0-9]{1,6})?$', 'maxLength': 32}, 'simulated': {'type': 'boolean'}, 'transaction': {'type': ['string', 'null'], 'maxLength': 512}, 'amount_atomic': {'type': 'string', 'pattern': '^(0|[1-9][0-9]{0,17})$'}, 'network_fee_usd': {'anyOf': [{'type': 'string', 'pattern': '^(0|[1-9][0-9]*)(\\.[0-9]{1,6})?$', 'maxLength': 32}, {'type': 'null'}]}, 'facilitator_fee_usd': {'anyOf': [{'type': 'string', 'pattern': '^(0|[1-9][0-9]*)(\\.[0-9]{1,6})?$', 'maxLength': 32}, {'type': 'null'}]}}, 'description': 'USDC uses six atomic decimals. Offline mock payments simulate USDC and move no funds. Null fees are unknown, not zero.', 'additionalProperties': False}, 'receipt': {'type': 'object', 'required': ['envelope', 'canonical_envelope_base64', 'attestation', 'verification'], 'properties': {'envelope': {'type': 'object', 'required': ['type', 'version', 'request_id', 'result_sha256', 'checked_at', 'methodology_version', 'payment', 'issued_at'], 'properties': {'type': {'const': 'vigil.source-verification.purchase'}, 'payment': {'type': 'object', 'required': ['status', 'provider', 'mode', 'simulated', 'network', 'asset', 'currency', 'amount_atomic', 'price_usd', 'transaction', 'facilitator_fee_usd', 'network_fee_usd'], 'properties': {'mode': {'enum': ['offline', 'testnet', 'mainnet']}, 'asset': {'type': 'string', 'maxLength': 128, 'minLength': 1}, 'status': {'const': 'settled'}, 'network': {'enum': ['eip155:8453', 'eip155:84532', 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp', 'solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1', 'none']}, 'currency': {'const': 'USDC'}, 'provider': {'type': 'string', 'maxLength': 64, 'minLength': 1}, 'price_usd': {'type': 'string', 'pattern': '^(0|[1-9][0-9]*)(\\.[0-9]{1,6})?$', 'maxLength': 32}, 'simulated': {'type': 'boolean'}, 'transaction': {'type': ['string', 'null'], 'maxLength': 512}, 'amount_atomic': {'type': 'string', 'pattern': '^(0|[1-9][0-9]{0,17})$'}, 'network_fee_usd': {'anyOf': [{'type': 'string', 'pattern': '^(0|[1-9][0-9]*)(\\.[0-9]{1,6})?$', 'maxLength': 32}, {'type': 'null'}]}, 'facilitator_fee_usd': {'anyOf': [{'type': 'string', 'pattern': '^(0|[1-9][0-9]*)(\\.[0-9]{1,6})?$', 'maxLength': 32}, {'type': 'null'}]}}, 'description': 'USDC uses six atomic decimals. Offline mock payments simulate USDC and move no funds. Null fees are unknown, not zero.', 'additionalProperties': False}, 'version': {'const': 1}, 'issued_at': {'type': 'string', 'format': 'date-time', 'pattern': '^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\\.[0-9]{1,6})?Z$'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'pattern': '^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\\.[0-9]{1,6})?Z$'}, 'request_id': {'type': 'string', 'format': 'uuid'}, 'result_sha256': {'type': 'string', 'pattern': '^[0-9a-f]{64}$'}, 'methodology_version': {'type': 'string', 'maxLength': 256, 'minLength': 1}}, 'additionalProperties': False}, 'attestation': {'type': 'object', 'required': ['v', 'serial', 'subject_sha256', 'label', 'requested_by', 'key_id', 'ts_ms', 'ts_utc', 'prev_hash', 'pubkey_hex', 'receipt_hash', 'sig_ed25519_hex'], 'properties': {'v': {'const': 1}, 'label': {'type': ['string', 'null'], 'maxLength': 200}, 'ts_ms': {'type': 'integer', 'minimum': 0}, 'key_id': {'type': 'integer', 'minimum': 0}, 'serial': {'type': 'integer', 'minimum': 1}, 'ts_utc': {'type': 'string', 'format': 'date-time', 'pattern': '^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\\.[0-9]{1,6})?Z$'}, 'prev_hash': {'type': 'string', 'pattern': '^[0-9a-f]{64}$'}, 'pubkey_hex': {'type': 'string', 'pattern': '^[0-9a-f]{64}$'}, 'receipt_hash': {'type': 'string', 'pattern': '^[0-9a-f]{64}$'}, 'requested_by': {'type': 'string', 'maxLength': 128, 'minLength': 1}, 'subject_sha256': {'type': 'string', 'pattern': '^[0-9a-f]{64}$'}, 'sig_ed25519_hex': {'type': 'string', 'pattern': '^[0-9a-f]{128}$'}}, 'additionalProperties': False}, 'verification': {'type': 'string', 'maxLength': 1000, 'minLength': 1}, 'canonical_envelope_base64': {'type': 'string', 'pattern': '^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$', 'maxLength': 16384, 'minLength': 4, 'contentEncoding': 'base64'}}, 'description': "Pin Vigil's key independently. Verify the Ed25519 attestation, SHA256 of canonical envelope bytes, and SHA256 of the result with receipt removed. Schema validation alone does not authenticate a receipt.", 'additionalProperties': False}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['evidence_id', 'quote', 'start', 'end', 'stance', 'source_sha256', 'text_sha256'], 'properties': {'end': {'type': 'integer', 'maximum': 100000, 'minimum': 1}, 'quote': {'type': 'string', 'maxLength': 1000, 'minLength': 1}, 'start': {'type': 'integer', 'maximum': 99999, 'minimum': 0}, 'stance': {'enum': ['supports', 'contradicts', 'mentions']}, 'evidence_id': {'type': 'string', 'pattern': '^e[1-6]$'}, 'text_sha256': {'type': 'string', 'pattern': '^[0-9a-f]{64}$'}, 'source_sha256': {'type': 'string', 'pattern': '^[0-9a-f]{64}$'}}, 'description': 'Offsets count Unicode code points in source.normalized_text. Verify start < end and exact substring/digest matches independently; JSON Schema cannot establish them.', 'additionalProperties': False}, 'maxItems': 6}, 'reachable': {'const': True}, 'served_at': {'type': 'string', 'format': 'date-time', 'pattern': '^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\\.[0-9]{1,6})?Z$'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'pattern': '^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\\.[0-9]{1,6})?Z$'}, 'confidence': {'type': 'null', 'description': 'No numerical confidence is published before calibration.'}, 'request_id': {'type': 'string', 'format': 'uuid'}, 'risk_flags': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[a-z][a-z0-9_]*$', 'maxLength': 128}, 'maxItems': 32, 'uniqueItems': True}, 'explanation': {'type': 'string', 'maxLength': 800}, 'claim_support': {'enum': ['supports', 'contradicts', 'mixed', 'insufficient_evidence', 'not_assessed']}, 'schema_version': {'const': '1.0.0'}, 'source_identity': {'type': 'object', 'required': ['hostname', 'tls_verified', 'publisher_identity'], 'properties': {'hostname': {'type': 'string', 'maxLength': 253, 'minLength': 1}, 'tls_verified': {'type': 'boolean'}, 'publisher_identity': {'const': 'unknown'}}, 'additionalProperties': False}, 'assessment_scope': {'enum': ['source_local_semantic_support', 'literal_quotation_only']}, 'verification_type': {'const': 'source'}, 'methodology_version': {'type': 'string', 'maxLength': 256, 'minLength': 1}}, 'description': 'A completed source observation and purchase. Retrieval failures return the error contract and are not submitted for settlement. Source support does not establish truth.', 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'examples': [{'name': 'agent-health'}], 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'Watchdog name, 1..64 characters.'}, 'vigil_key': {'type': 'string', 'maxLength': 256, 'minLength': 1, 'deprecated': True, 'description': 'DEPRECATED legacy account-wide credential, including deletion and permission issuance. Prefer the client-injected HTTP Authorization: Bearer header; omit this argument when that header authenticates the request. This is not a scoped agent token.'}}, 'additionalProperties': False}
最近のツール変更
類似のMCPサーバー
AIMEAT
Provides a self-hosted agent operating system with agent work delegation, access controls, federation, hooks, SSO, security admin…
hyperion
Acts as a paid MCP tool marketplace and utility gateway with server discovery, HTTP and JavaScript tools, research, data conversi…
Japan Public Ledgers MCP
Provides agent identity, memory, audit, trust, proxy, temporary email, webhook, CAPTCHA, and alerting capabilities alongside publ…
PHION Agent Trust Infrastructure
Provides agent trust, policy, provenance, evidence, delegation, telemetry, and transaction-control services for MCP and agent wor…
Swamp
Coordinates security agents through scoped bug-bounty programs, target claims, vulnerability submissions, peer review, shared fin…
AgentBIT
Routes pay-per-call tools over x402 on Base, covering discovery, data conversion, company research, counterparty screening, domai…
SaSame MCP Observatory + Gold Rush Town
Audits and profiles MCP servers, provides ecosystem analytics, trust and claim records, and non-custodial transaction or escrow a…
ThinkNEO Control Plane
Provides an enterprise AI control plane for governance, guardrails, spend tracking, compliance, and model or tool routing.