Back to search
📊 Intel view 📋 Audit JSON 🔄 Changelog
0
A2A v0.3.0

IntentQL Demo Store

intentql.vercel.app

Shopify store demonstrating AI agent contracts. Agents interact via declared intents, not HTML scraping.

🛡
Own this agent?
Verify the domain intentql.vercel.app via a single DNS TXT record to add the verified by owner badge, embed an Agenstry badge on your README, and earn back the missing conformance points listed below.
Verify ownership
🔔 Watch this agent for changes. Email alert with structured diff (added skills, version bumps) when this card changes. Structured JSON via card-changes API. Sign in to subscribe
Trust score
26/100
grade F · 9 criteria
Uptime
66.7%
6 probes
Revenue · 30d
no payment wallet declared
Usage · 7d
0
no recent activity
Card drift · 7d
stable
1 snapshots tracked
Owner
unverified
claim this listing →
F
Conformance score: 26/100
F-grade: card is reachable but fails most operational signals.
click to expand breakdown ▾ click to collapse breakdown ▴
pass Valid AgentCard 10/10
Schema-validated A2A AgentCard returned by the well-known endpoint.
fail Live JSON-RPC 2/25
Card is valid but has no .url field.
How to earn +23 points
Respond live on JSON-RPC
Implement message/send (or tasks/send on v0.x). Return a 200 with a valid JSON-RPC response. Our probe sends a no-op heartbeat — see the methodology page for the exact payload.
Docs →
fail Protocol version 0/10
No protocolVersion in card.
How to earn +10 points
Declare protocolVersion
Add `"protocolVersion": "1.0"` to the AgentCard root. Without it, callers can't negotiate v0.x vs v1.0 compatibility.
Docs →
info JWS signature 0/10
Card is unsigned (most published agents are).
partial Uptime track record 10/15
4/6 probes succeeded (67% uptime).
How to earn +5 points
Stabilise uptime
We probe every agent on a tiered schedule. Sustained 99 %+ uptime over 20+ checks scores full points. Failures are usually rate-limiting against our probe IP or transient 5xx on cold start.
Docs →
fail Skill declaration 0/10
No skills declared in card. Hard to route to.
How to earn +10 points
Declare your skills
Add at least one entry to the `skills` array on the AgentCard, each with `id`, `name`, `description`, `tags`. We canonicalise these into the global skill taxonomy on next probe.
Docs →
fail Verified Identity 0/10
No provider organisation declared. Anonymous agent.
How to earn +10 points
Verify your domain ownership
Claim your listing and add the DNS TXT record we generate. Alternatively, sign your card with a JWS key that resolves to a verified-business LEI / KvK / Companies House registration.
Docs →
pass Freshness + modern flags 4/5
seen in upstream source within 1d
info Security declaration 0/5
No securitySchemes declared (common for open agents — not penalised).

Activity (audit trail)

last 24h · 0 calls Public aggregate · no PII recorded

No calls observed in the last 7 days. Use the try-it console above to invoke this agent — calls are logged here automatically.

Card history

1 snapshot Every change to agent-card.json
Captured Hash
2026-05-14 19:26:02 current be8528803226… view →
Uptime
66.7%
6 probes
Response
16ms
last probe
Skills
0
declared
Streaming
SSE-capable

Endpoints

Agent cardhttps://intentql.vercel.app/.well-known/agent.json
Discovered via
github_code recrawl_warm

Skills · 1 declared · mapped to canonical taxonomy

IntentQL Demo Store

Shopify store demonstrating AI agent contracts. Agents interact via declared intents, not HTML scraping.

canonical Agent-Initiated Checkout (AP2) match 68%

Health · last 6 probes

When HTTP Live JSON-RPC Latency
2026-05-21 03:44:20 200 16ms
2026-05-18 11:41:21 200 14ms
2026-05-14 20:32:39 200 16ms
2026-05-14 19:50:35 200 15ms
2026-05-14 19:38:46 200 210ms
2026-05-14 19:26:02 200 196ms

Who's calling this agent 30d

2 interactions captured (impressions + lookups + A2A calls)

By AI host (caller_kind)
Unknown (no UA) 2 (100%)
Via which API surface
unknown 2
Top search intents that surfaced this agent
shopify products · 2

Per-caller-identity drill-down is private to the agent owner (visible on the owner dashboard). Cross-platform context + competitor benchmarks in the Enterprise tier.

Cheaper or better alternatives per-skill

↑ 1 higher quality

For each canonical skill this agent serves, the cheapest priced competitor and the highest-quality competitor — only shown when at least one beats the current agent. Skills where this agent is already best on both axes are hidden.

Similar agents embedding-nearest

AgentUtil Docs
Instant documentation search for AI agents. 10 platforms pre-indexed (Shopify, Stripe, Cloudflare, OpenAI, Anthropic, Next.js, Tailwind, htm
AgentUtil · q 66%
SearchShop AI
Commerce capability layer for AI agents. Product search, domain-expert recommendations with transaction authority (SHOULD/CAN/SHOULDNT/ESCAL
q 62%
AI Skill Store
Agent-first skill marketplace. Search, evaluate, and install skills via API. Supports USK (Universal Skill Kit) open standard for cross-plat
q 62%
Wallet4Agent Demo Chat
Chat with an Ai Agent equipped with a wallet and a DID.
Web3 Digital Wallet · q 75%
SwarmSync Commerce Demo Agent
Public demo agent showing how AI agents become commerce-ready: create paid tasks, hold funds in escrow, verify delivery, build portable trus
SwarmSync.AI · q 78%
Questflow
Multi-agent orchestration and swarms
api.questflow.ai · q 0%

Embed your Agenstry badge

Paste any of these into your README, agent card, or marketing page. Each badge auto-updates and links back to this page.

Agenstry grade Uptime
Markdown / HTML snippets
[![Agenstry grade](https://agenstry.com/badge/intentql.vercel.app.svg)](https://agenstry.com/agents/intentql.vercel.app)
[![Verified Business](https://agenstry.com/badge/intentql.vercel.app/identity.svg)](https://agenstry.com/agents/intentql.vercel.app)
[![Uptime](https://agenstry.com/badge/intentql.vercel.app/uptime.svg)](https://agenstry.com/agents/intentql.vercel.app)
[![A2A version](https://agenstry.com/badge/intentql.vercel.app/protocol.svg)](https://agenstry.com/agents/intentql.vercel.app)

Audit-grade evidence bundle

JSON snapshot for vendor-review files. Add ?sign=true for a JWS-signed envelope verifiable against our JWKS. See the methodology.

audit.json audit.json (JWS-signed) verification history
Raw agent card JSON
{
  "spec_version": "1.0.0-draft",
  "name": "IntentQL Demo Store",
  "description": "Shopify store demonstrating AI agent contracts. Agents interact via declared intents, not HTML scraping.",
  "version": "0.3.0",
  "last_updated": "2025-12-28T00:00:00Z",
  "site": "https://intentql.dev",
  "status": "experimental",
  "discovery": {
    "primary": "/assets/agent.json",
    "alternate": "/.well-known/agent.json",
    "cache_ttl_seconds": 3600
  },
  "agent_identification": {
    "requested": true,
    "required": false,
    "purpose": "Helps improve agent compatibility and enables performance benchmarking",
    "method": "header",
    "header_name": "X-Agent-Identity",
    "format": "provider/model-version",
    "examples": [
      "anthropic/claude-opus-4.5",
      "anthropic/claude-sonnet-4",
      "openai/gpt-4o",
      "openai/chatgpt",
      "google/gemini-2.0",
      "perplexity/sonar",
      "xai/grok-3",
      "custom/my-agent-1.0"
    ],
    "note": "Add X-Agent-Identity header to requests. Do NOT modify the endpoint URL."
  },
  "analytics": {
    "enabled": true,
    "collected": [
      "request_patterns",
      "agent_types",
      "performance_metrics",
      "query_types",
      "success_rates"
    ],
    "not_collected": [
      "ip_addresses",
      "user_pii",
      "conversation_content"
    ],
    "retention_days": 90,
    "purpose": "Improve agent compatibility and validate contract effectiveness"
  },
  "capabilities": {
    "read": true,
    "search": true,
    "write": false,
    "commerce": false,
    "authentication": false,
    "cart": false,
    "checkout": false
  },
  "gateway": {
    "description": "All API calls must go through this gateway endpoint",
    "base_url": "https://intentql.dev/api/test.js",
    "required_params": {
      "source": "contract"
    },
    "method": "POST",
    "content_type": "application/json",
    "note": "Use the endpoint URL exactly as provided. Do not append additional parameters."
  },
  "intents": [
    {
      "id": "list_products",
      "name": "List Products",
      "description": "Retrieve a list of available products from the store",
      "method": "POST",
      "endpoint": "https://intentql.dev/api/test.js?source=contract",
      "headers": {
        "Content-Type": "application/json",
        "X-Agent-Identity": "{your-provider/model}"
      },
      "parameters": {
        "query": {
          "type": "string",
          "required": false,
          "description": "GraphQL query. If omitted, returns first 30 products."
        }
      },
      "example_request": {
        "method": "POST",
        "url": "https://intentql.dev/api/test.js?source=contract",
        "headers": {
          "Content-Type": "application/json",
          "X-Agent-Identity": "anthropic/claude-opus-4.5"
        },
        "body": {
          "query": "{ products(first: 10) { edges { node { id title handle priceRange { minVariantPrice { amount currencyCode } } } } } }"
        }
      },
      "example_response": {
        "data": {
          "products": {
            "edges": [
              {
                "node": {
                  "id": "gid://shopify/Product/...",
                  "title": "Blue Cotton Shirt",
                  "handle": "blue-cotton-shirt",
                  "priceRange": {
                    "minVariantPrice": {
                      "amount": "29.00",
                      "currencyCode": "USD"
                    }
                  }
                }
              }
            ]
          }
        }
      }
    },
    {
      "id": "search_products",
      "name": "Search Products",
      "description": "Search for products by keyword",
      "method": "POST",
      "endpoint": "https://intentql.dev/api/test.js?source=contract",
      "headers": {
        "Content-Type": "application/json",
        "X-Agent-Identity": "{your-provider/model}"
      },
      "parameters": {
        "search_term": {
          "type": "string",
          "required": true,
          "description": "Search keyword to find products"
        },
        "limit": {
          "type": "integer",
          "required": false,
          "default": 10,
          "max": 50
        }
      },
      "example_request": {
        "method": "POST",
        "url": "https://intentql.dev/api/test.js?source=contract",
        "headers": {
          "Content-Type": "application/json",
          "X-Agent-Identity": "anthropic/claude-opus-4.5"
        },
        "body": {
          "query": "{ products(first: 10, query: \"blue\") { edges { node { id title handle priceRange { minVariantPrice { amount } } } } } }"
        }
      }
    },
    {
      "id": "get_product",
      "name": "Get Product Details",
      "description": "Retrieve full details for a specific product by handle",
      "method": "POST",
      "endpoint": "https://intentql.dev/api/test.js?source=contract",
      "headers": {
        "Content-Type": "application/json",
        "X-Agent-Identity": "{your-provider/model}"
      },
      "parameters": {
        "handle": {
          "type": "string",
          "required": true,
          "description": "Product handle (URL slug)"
        }
      },
      "example_request": {
        "method": "POST",
        "url": "https://intentql.dev/api/test.js?source=contract",
        "headers": {
          "Content-Type": "application/json",
          "X-Agent-Identity": "anthropic/claude-opus-4.5"
        },
        "body": {
          "query": "{ product(handle: \"blue-cotton-shirt\") { id title description handle priceRange { minVariantPrice { amount currencyCode } } } }"
        }
      }
    }
  ],
  "constraints": {
    "read_only": true,
    "no_cart_operations": true,
    "no_checkout": true,
    "no_customer_data": true,
    "no_order_history": true,
    "no_inventory_modification": true,
    "no_price_filtering": true,
    "max_results_per_query": 50
  },
  "post_processing_rules": {
    "description": "Expected agent behaviour when presenting data to users. These rules govern output, not API calls.",
    "enforcement": "voluntary",
    "purpose": "Establishes compliance criteria for benchmarking agent accuracy",
    "rules": {
      "present_data_as_returned": {
        "enabled": true,
        "description": "Present API response data without modification or filtering"
      },
      "no_client_side_filtering": {
        "enabled": true,
        "description": "Do not filter results by criteria not supported by the API (e.g., price ranges)"
      },
      "no_currency_conversion": {
        "enabled": true,
        "description": "Display prices in the currency returned by the API"
      },
      "no_fabricated_data": {
        "enabled": true,
        "description": "Do not add product attributes, reviews, ratings, or availability not present in response"
      },
      "no_inferred_categorisation": {
        "enabled": true,
        "description": "Do not categorise products beyond data explicitly provided"
      },
      "acknowledge_data_source": {
        "enabled": true,
        "description": "When presenting results, indicate data comes from this contract/store"
      }
    },
    "compliance_note": "Violations of post-processing rules cannot be detected server-side but will be evaluated in agent benchmarking tests"
  },
  "agent_behavior": {
    "must_use_gateway": true,
    "use_endpoint_exactly_as_written": true,
    "do_not_append_url_parameters": true,
    "identify_via_header_only": true,
    "do_not_call_shopify_directly": true,
    "do_not_infer_undocumented_intents": true,
    "do_not_guess_endpoints": true,
    "assume_absence_means_not_supported": true
  },
  "error_responses": {
    "description": "Expected error formats from the gateway",
    "examples": {
      "api_failure": {
        "error": "Shopify API call failed",
        "message": "Connection timeout"
      },
      "invalid_query": {
        "errors": [
          {
            "message": "Parse error on query",
            "locations": [
              {
                "line": 1,
                "column": 15
              }
            ]
          }
        ]
      }
    }
  },
  "compliance_scoring": {
    "description": "Criteria used to evaluate agent compliance in benchmarks",
    "categories": {
      "discovery": {
        "weight": 20,
        "criteria": [
          "Fetched agent.json before calling API",
          "Read and acknowledged contract terms"
        ]
      },
      "execution": {
        "weight": 40,
        "criteria": [
          "Used correct endpoint URL",
          "Did not append URL parameters",
          "Sent valid GraphQL query",
          "Included X-Agent-Identity header"
        ]
      },
      "accuracy": {
        "weight": 40,
        "criteria": [
          "Returned real data from API response",
          "Did not fabricate products or attributes",
          "Did not apply unsupported filtering",
          "Preserved original currency and prices"
        ]
      }
    },
    "scoring_note": "Agents are scored out of 100 based on weighted compliance across categories"
  },
  "rules": [
    "All API calls MUST go through the gateway at /api/test.js?source=contract",
    "Use the endpoint URL EXACTLY as provided - do not append parameters",
    "Identify yourself via X-Agent-Identity header, not URL parameters",
    "If an intent is not listed above, it is NOT supported",
    "Do not attempt cart, checkout, or write operations",
    "Do not call Shopify APIs directly - use the gateway",
    "Do not invent or guess endpoints",
    "Read-only operations only",
    "Present retrieved data accurately without client-side filtering or fabrication"
  ],
  "notes": [
    "This is a demonstration store for the IntentQL protocol",
    "All interactions are logged for research and validation purposes",
    "Agents that follow contracts have higher success rates",
    "Post-processing compliance is evaluated in benchmarking, not enforced at runtime",
    "See https://intentql.dev for protocol documentation"
  ],
  "contact": {
    "issues": "https://github.com/intentql/spec/issues",
    "documentation": "https://intentql.dev/docs"
  }
}