accueil / serveurs / Dev & Code / io.github.tjcgraham-rgb/gaip-integration-protocol
io.github.tjcgraham-rgb/gaip-integration-protocol
serveur MCP (Model Context Protocol) · gaip-integration-protocol 1.5.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que io.github.tjcgraham-rgb/gaip-integration-protocol est sûr ?
Au dernier audit MCP Hub, le serveur MCP « io.github.tjcgraham-rgb/gaip-integration-protocol » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 13 outils
- check_agent_conformance≈ 619 tokens
Use this when asked to check an AI agent or MCP server: does it work, is it reachable, is its card valid ("check this agent", "is this MCP server up?"). Pass just its `url`. Returns READY / FIXES_NEEDED / NO_AGENT_CARD / UNREACHABLE with fixes and a receipt. Free, read-only, no account; inputs must be public and non-personal.
Paramètres, retour & exemple (10)
Paramètresurl· string · optionnel
Public https link to an agent, its A2A agent card, MCP server description or OpenAPI document. GAIP fetches, validates and reach-tests it. Use instead of metadata.mode· string · optionnel · CONFORMANCE | VERIFY_BEFORE_CALL
CONFORMANCE (default) checks the interface; VERIFY_BEFORE_CALL returns task-specific evidence about `target` for `intended_task`.target· ? · optionnel
VERIFY_BEFORE_CALL: the counterparty URL or reference.metadata· object · optionnel
Alternative to url: the agent card or MCP/OpenAPI document itself.protocol· string · optionnel · A2A | MCP | OPENAPI
Counterparty protocol. Inferred from metadata when omitted, otherwise MCP.source_url· string · optionnel
Optional: where `metadata` was published, used only to resolve relative endpoints. Never fetched.intended_task· string · optionnel
VERIFY_BEFORE_CALL: what you intend to delegate.declared_identity· string · optionnel
Optional: the name the agent claims.expected_endpoint· string · optionnel
Optional: the endpoint you expect; a different primary endpoint is reported as ENDPOINT_DRIFT.data_classification· string · optionnel · PUBLIC | NON_PERSONAL_PUBLIC
PUBLIC (default) or NON_PERSONAL_PUBLIC. Never send personal data.
Exemple d'appel{"name": "check_agent_conformance", "arguments": {"url": "texte", "mode": "CONFORMANCE", "target": "texte", "metadata": {}, "protocol": "A2A", "source_url": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - gaip_check_permission≈ 307 tokens
Use this before your agent fetches a page ("may my agent fetch this?"). Pass the `url` and your `agent` token. Reads robots.txt (RFC 9309), AI-preference lines, RSL, tdmrep.json and llms.txt; returns ALLOWED, DISALLOWED, NO_RULE or UNKNOWN, the rule quoted, the time and a signature. Free, read-only, no account; inputs must be public and non-personal.
Paramètres, retour & exemple (3)
Paramètresurl· string · requis
The public https URL your agent wants to fetch.agent· string · optionnel
Your agent's user-agent token as robots.txt names it, e.g. GPTBot or ClaudeBot (a full User-Agent string also works). Default * (any crawler without its own rules).user_agent· string · optionnel
Alternative to agent: your agent's full User-Agent string.
Exemple d'appel{"name": "gaip_check_permission", "arguments": {"url": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - gaip_compare_supplier_snapshots≈ 696 tokens
Use this when asked what changed between two versions of an agent card, MCP server description or OpenAPI document ("did this API break?"). Pass `prior` and `current`. Returns each change as BREAKING / NON_BREAKING / INFO with migration notes and a receipt. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Paramètres, retour & exemple (10)
Paramètresprior· object · requis
The earlier version: agent card, MCP server description, OpenAPI document or snapshot.current· object · requis
The later version, same kind as `prior`.protocol· string · optionnel · A2A | MCP | OPENAPI
Counterparty protocol. Inferred from metadata when omitted, otherwise MCP.synthetic· boolean · optionnel
Optional: true marks a test call.episode_id· string · optionnel
Optional: your own id to group related calls.task_class· string · optionnel
Optional: short name of the task, e.g. weather_forecast.counterparty_id· string · optionnel
Name or URL of the agent/service. Optional.continuity_handle· object · optionnel
Optional: the continuity_handle from an earlier GAIP result; links this call to your earlier ones.data_classification· string · optionnel · PUBLIC | NON_PERSONAL_PUBLIC
PUBLIC (default) or NON_PERSONAL_PUBLIC. Never send personal data.independent_operator_id· string · optionnel
Optional: your operator id (recorded as a claim, not verified).
Exemple d'appel{"name": "gaip_compare_supplier_snapshots", "arguments": {"prior": {}, "current": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - gaip_diagnose_integration_failure≈ 555 tokens
Use this when an agent, MCP or API call failed ("why did my call fail?", "what does this 429 mean?"). Pass the `failure` ({code, detail}) or the raw error text. Returns the likely cause, when and how to retry, fix steps and a receipt. GAIP touches no other system. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Paramètres, retour & exemple (9)
Paramètresfailure· object · requis
The failure: {code, detail?, http_status?}, e.g. {"code": 429, "detail": "Too Many Requests; Retry-After: 20"}.protocol· string · optionnel · A2A | MCP | OPENAPI
Counterparty protocol. Inferred from metadata when omitted, otherwise MCP.synthetic· boolean · optionnel
Optional: true marks a test call.episode_id· string · optionnel
Optional: your own id to group related calls.task_class· string · optionnel
Optional: short name of the task, e.g. weather_forecast.counterparty_id· string · optionnel
Name or URL of the agent/service. Optional.continuity_handle· object · optionnel
Optional: the continuity_handle from an earlier GAIP result; links this call to your earlier ones.data_classification· string · optionnel · PUBLIC | NON_PERSONAL_PUBLIC
PUBLIC (default) or NON_PERSONAL_PUBLIC. Never send personal data.independent_operator_id· string · optionnel
Optional: your operator id (recorded as a claim, not verified).
Exemple d'appel{"name": "gaip_diagnose_integration_failure", "arguments": {"failure": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - gaip_manifest_changes≈ 264 tokens
Use this when asked which MCP servers or agents changed recently ("what changed this week?"). Optional `since` (RFC 3339), `target_id`, `limit` (max 100). Returns the Observatory's hash-chained log of manifest changes: before/after hashes, neutral facts, receipts. Free, read-only, no account; inputs must be public and non-personal.
Paramètres, retour & exemple (3)
Paramètreslimit· integer · optionnel
Optional: maximum entries (1-100).since· string · optionnel
Optional: RFC 3339 time, e.g. 2026-09-01T00:00:00Z.target_id· string · optionnel
Optional: an Observatory target id (obs_...).
Exemple d'appel{"name": "gaip_manifest_changes", "arguments": {"limit": 1, "since": "texte", "target_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - gaip_observatory_capture≈ 257 tokens
Use this to save a dated record of what a public MCP server or A2A agent card declares now. Pass its `url`. GAIP reads it once (robots.txt respected, never tools/call), re-reads it daily and returns the capture id, time and SHA-256 hashes. Not an assessment. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Paramètres, retour & exemple (2)
Paramètresurl· string · requis
Public https URL of the MCP endpoint or the A2A agent card.protocol· string · optionnel · MCP | A2A
Optional; inferred from the URL (a /.well-known/agent-card.json path is A2A).
Exemple d'appel{"name": "gaip_observatory_capture", "arguments": {"url": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - gaip_observatory_lookup≈ 264 tokens
Use this when asked about an MCP server's or agent's history ("has this server changed?", "was it up last week?"). Pass its `url` or `name`. Returns dated facts the Agent Observatory observed: status history, manifest hash, conformance codes, change log. Not an assessment. Free, read-only, no account; inputs must be public and non-personal.
Paramètres, retour & exemple (3)
Paramètresurl· string · optionnel
Public URL of the MCP server or agent to look up.name· string · optionnel
Optional: server or agent name to search for.target_id· string · optionnel
Optional: an Observatory target id (obs_...).
Exemple d'appel{"name": "gaip_observatory_lookup", "arguments": {"url": "texte", "name": "texte", "target_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - gaip_supplier_reliability≈ 582 tokens
Use this when a supplier agent or API you depend on started failing ("did something change on their side?"). Pass its `supplier_url` and the `failure`. Returns the diagnosis plus changes GAIP observed around then (correlated in time, not causation), with receipts. Free, read-only, no account; inputs must be public and non-personal.
Paramètres, retour & exemple (11)
Paramètrescard· object · optionnel
Optional supplier card / server description you integrated against.failure· object · optionnel
{code, detail?, http_status?} as for gaip_diagnose_integration_failure.failures· array · optionnel
Optional: several failures, each {code, detail}.protocol· string · optionnel · A2A | MCP | OPENAPI | UNKNOWN
Omit to infer it from card, transport or the supplier URL path (else UNKNOWN).transport· string · optionnel
Optional transport you used (e.g. streamable-http, sse, GRPC).task_class· string · optionnel
Optional: short name of the task, e.g. weather_forecast.supplier_url· string · requis
Public https URL of the supplier's agent card, MCP server or API.lookback_days· integer · optionnel
Optional: days of GAIP observations to look back over.counterparty_id· string · optionnel
Optional: name of the supplier.failure_started_at· string · optionnel
Optional: RFC 3339 time the failures started.data_classification· string · optionnel · PUBLIC | NON_PERSONAL_PUBLIC
PUBLIC (default) or NON_PERSONAL_PUBLIC. Never send personal data.
Exemple d'appel{"name": "gaip_supplier_reliability", "arguments": {"supplier_url": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - gaip_tools_changed_since≈ 404 tokens
Use this before connecting to an MCP server: did its tools change since your `since` date? Pass its `url`, optionally your tools/list `tools` or a digest. Returns dates, change classes, stored hashes and whether yours match the latest GAIP observed. Facts, not a verdict. Free, read-only, no account; inputs must be public and non-personal.
Paramètres, retour & exemple (6)
Paramètresurl· string · optionnel
The MCP endpoint (or A2A agent card) URL, exactly as you connect to it.since· string · optionnel
Your approval date (RFC 3339 or YYYY-MM-DD): changes recorded since then.tools· array · optionnel
The `tools` array from your own tools/list; GAIP hashes it and compares.target_id· string · optionnel
Optional: an Observatory target id (obs_...).tool_digests· array · optionnel
Per-tool digests in the DRAFT MCP SEP-2636 form (may change).tools_digest· string · optionnel
A SHA-256 (64 hex) of the tool list you approved, as GAIP reported it.
Exemple d'appel{"name": "gaip_tools_changed_since", "arguments": {"url": "texte", "since": "texte", "tools": [], "target_id": "texte", "tool_digests": [], "tools_digest": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - gaip_watch_events≈ 335 tokens
Use this when asked what changed on a watched agent or service. Pass your `continuity_handle` and optionally a `watch_id`. Returns recent change events: verdict before and after, a change summary, the receipt and webhook delivery status. Free, read-only, no account; inputs must be public and non-personal.
Paramètres, retour & exemple (3)
Paramètreslimit· integer · optionnel
Optional: maximum events to return.watch_id· string · optionnel
The watch_id returned by gaip_watch_register.continuity_handle· object · requis
The continuity_handle from an earlier GAIP result; proves you own these watches.
Exemple d'appel{"name": "gaip_watch_events", "arguments": {"continuity_handle": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - gaip_watch_list≈ 255 tokens
Use this when asked which agents or services you are watching. Pass your `continuity_handle`. Returns each watch's kind, target, last verdict, last and next check and webhook endpoint (never the secret). Free, read-only, no account; inputs must be public and non-personal.
Paramètres, retour & exemple (1)
Paramètrescontinuity_handle· object · requis
The continuity_handle from an earlier GAIP result; proves you own these watches.
Exemple d'appel{"name": "gaip_watch_list", "arguments": {"continuity_handle": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - gaip_watch_register≈ 648 tokens
Use this when asked to keep an eye on an agent or MCP server ("tell me if it changes or goes down"). Pass the `continuity_handle` from any GAIP result, `kind` and `target_url`. GAIP re-checks every 24 hours (3 free watches), receipts each change and can call your webhook. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Paramètres, retour & exemple (8)
Paramètressla· object · optionnel
DELIVERY_SLA only: service-level terms checked on every observation, any of min_uptime_pct, max_latency_ms, required_fields (JSON key paths), freshness_field + max_age_seconds; optional uptime_window_hours, min_observations. Results go only to you.kind· string · requis · AGENT_READINESS | DELIVERY_TERMS | SUPPLIER_CARD | DELIVERY_SLA
AGENT_READINESS (agent URL), SUPPLIER_CARD (published card), DELIVERY_TERMS (terms_id) or DELIVERY_SLA (terms_id plus sla terms).terms_id· string · optionnel
DELIVERY_TERMS or DELIVERY_SLA: terms_id from witness_register_terms.target_url· string · optionnel
Public https URL (AGENT_READINESS, SUPPLIER_CARD). No query string.webhook_url· string · optionnel
Optional: your own public https endpoint for signed change events.interval_hours· integer · optionnel
Hours between checks: 24 minimum on the free tier; 1 for DELIVERY_SLA.continuity_handle· object · requis
The continuity_handle from an earlier GAIP result; proves you own these watches.data_classification· string · optionnel · PUBLIC | NON_PERSONAL_PUBLIC
PUBLIC (default) or NON_PERSONAL_PUBLIC. Never send personal data.
Exemple d'appel{"name": "gaip_watch_register", "arguments": {"kind": "AGENT_READINESS", "continuity_handle": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - gaip_watch_remove≈ 292 tokens
Use this when asked to stop watching an agent or service. Pass your `continuity_handle` and the `watch_id`. Its stored events are deleted; retained receipts stay verifiable. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Paramètres, retour & exemple (2)
Paramètreswatch_id· string · requis
The watch_id returned by gaip_watch_register.continuity_handle· object · requis
The continuity_handle from an earlier GAIP result; proves you own these watches.
Exemple d'appel{"name": "gaip_watch_remove", "arguments": {"watch_id": "texte", "continuity_handle": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}]}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».