Skip to content
Back to search
📊 Intel view 📋 Audit JSON 🔄 Changelog
66
A2A A2A 2026-07-28 v2.0.0

crevio

mcp.crevio.co

Delegate work to the Crevio agent or call the Crevio API through code execution — products, customers, orders, and more

Build a free agent shortlist. Save this listing to revisit it from your account. Sign in to save
🛡
Own this agent?
Verify the domain mcp.crevio.co 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. Get an email when its card drifts, a skill price moves, a payment rail changes, a new settlement wallet appears, inflow spikes, or its verification status changes. Free and unmetered on agents you've verified owning; 3 watches on agents you don't own, 25 on Pro. Sign in to watch
Trust score
31/100
grade F · 9 criteria
Uptime
accumulating
1/5 direct probes · 30d
~116 ms response
Observed inflow · 30d
no payment wallet declared
Invocations · 7d
0
no calls observed
Card drift · 7d
changed
1 snapshots tracked
Owner
unverified
claim this listing →

Dispute or improve this rating

F
Conformance score: 31/100
F-grade: card is reachable but fails most operational signals.
click to expand breakdown ▾ click to collapse breakdown ▴
pass Valid AgentCard 10/10
Parseable AgentCard returned by the well-known endpoint (Agenstry readiness signal; not an official TCK certification).
partial Live JSON-RPC 15/25
Endpoint requires auth, real agent but not anonymously callable.
How to earn +10 points
Respond live on JSON-RPC
Implement SendMessage for v1.0 (or message/send for v0.x), negotiate A2A-Version, and return a schema-valid JSON-RPC response. Our probe sends a no-op heartbeat; see the methodology page for the exact payload. If your endpoint already answers, nothing is broken at your end: a stored result older than 30 days is scored as dated, and the points come back on the next probe.
Docs →
partial Protocol version 2/10
Declares unrecognised version '2026-07-28'.
How to earn +8 points
Declare protocolVersion
Add `"protocolVersion": "1.0"` to every entry in `supportedInterfaces[]`. A2A v1.0 removed the AgentCard root field.
Docs →
info JWS signature 0/10
Card is unsigned (most published agents are).
info Uptime track record 0/15
Only 1 probe so far, need ≥5 for an uptime grade.
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 0d
info Security declaration 0/5
Neither securitySchemes nor securityRequirements declared — how to authenticate is unstated.
⚠ Card drift detected. This agent's agent-card.json changed within the last 7 days. We track these so downstream callers can react.

Activity (audit trail)

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

Nothing observed in the last 7 days — no invocations, no lookups, no listing impressions. 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-08-23 02:36:09 current 8cc7f7991ec2… view →
Uptime
100.0%
1 direct probes · 30d
Response
134ms
last direct probe
Skills
0
declared
Streaming
SSE-capable

Endpoints

Agent cardhttps://mcp.crevio.co/.well-known/mcp.json
Discovered via
mcp_registry

Skills · 1 declared · mapped to canonical taxonomy

crevio

Delegate work to the Crevio agent or call the Crevio API through code execution — products, customers, orders, and more

canonical REST API Integration match 84%

Health · last 1 probes

When HTTP Live JSON-RPC Latency
2026-08-23 02:36:09 200 134ms

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

Code Agent
An AI agent specialized in code generation, review, debugging, and software development assistance
q 66%
Reevo Knowledge Base
How to use Reevo
Reevo Knowledge Base · q 85%
Attio
AI CRM. Connect via MCP server or REST API.
Attio · q 71%
Duvo
Build, run, and monitor autonomous AI agents that execute real work.
Duvo · q 90%
api.clervo.dev
Bounded ai.chat execution
api.clervo.dev · q 0%
Questflow
Multi-agent orchestration and swarms
api.questflow.ai · q 30%

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 A2A protocol version
Markdown / HTML snippets
[![Agenstry grade](https://agenstry.com/badge/mcp.crevio.co.svg)](https://agenstry.com/agents/mcp.crevio.co)
[![Verified Business](https://agenstry.com/badge/mcp.crevio.co/identity.svg)](https://agenstry.com/agents/mcp.crevio.co)
[![Uptime](https://agenstry.com/badge/mcp.crevio.co/uptime.svg)](https://agenstry.com/agents/mcp.crevio.co)
[![A2A version](https://agenstry.com/badge/mcp.crevio.co/protocol.svg)](https://agenstry.com/agents/mcp.crevio.co)

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
{
  "name": "crevio",
  "title": "Crevio MCP Server",
  "description": "Delegate work to the Crevio agent or call the Crevio API through code execution \u2014 products, customers, orders, and more",
  "version": "2.0.0",
  "url": "https://mcp.crevio.co/mcp",
  "serverUrl": "https://mcp.crevio.co/mcp",
  "serverInfo": {
    "name": "crevio",
    "version": "2.0.0"
  },
  "transport": {
    "type": "streamable-http",
    "endpoint": "https://mcp.crevio.co/mcp"
  },
  "protocol": "MCP Streamable HTTP",
  "protocolVersion": "2026-07-28",
  "supportedVersions": [
    "2026-07-28"
  ],
  "capabilities": {
    "tools": {}
  },
  "tools": [
    {
      "name": "whoami",
      "description": "Identify the account, user, and credential behind this connection, with plan, credit balance, rate limits, and the tools available. Call it first to verify the setup.",
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true,
        "readOnlyHint": true
      }
    },
    {
      "name": "ask_crevio",
      "description": "Delegate a job to the Crevio agent and wait for the result. Starts a run that works your account through the Crevio API (products, customers, orders, email, socials, sites, research), waits up to timeout_seconds, and returns the run with the agent's final reply in `result`. For anything longer, use start_task and wait_for_run.",
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": true,
        "readOnlyHint": false
      }
    },
    {
      "name": "start_chat",
      "description": "Open a chat with the Crevio agent and queue a run, without waiting. Returns the run immediately \u2014 its `chat_id` is the conversation to continue with send_message. Follow the run with wait_for_run or get_run.",
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": true,
        "readOnlyHint": false
      }
    },
    {
      "name": "list_chats",
      "description": "List the account's chats, newest first.",
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true,
        "readOnlyHint": true
      }
    },
    {
      "name": "get_chat",
      "description": "Get a chat's title, kind, and latest run.",
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true,
        "readOnlyHint": true
      }
    },
    {
      "name": "send_message",
      "description": "Continue a chat with follow-up instructions or answers \u2014 the agent keeps its context. Resumes a run waiting in needs_input, or queues a new run when the last one finished. Returns run_busy while a run is still in progress. Optionally waits for the reply.",
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": true,
        "readOnlyHint": false
      }
    },
    {
      "name": "list_messages",
      "description": "Read a chat's messages, oldest first. Returns the most recent `limit` messages; page back through older ones with starting_after.",
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true,
        "readOnlyHint": true
      }
    },
    {
      "name": "wait_for_run",
      "description": "Wait for a run to settle (completed, failed, or needs_input) and return it with the agent's final reply. Returns wait_timed_out if it is still running when the timeout passes; call again.",
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true,
        "readOnlyHint": true
      }
    },
    {
      "name": "get_run",
      "description": "Fetch a run's current status, summary, pending approvals, and (once settled) the agent's final reply.",
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true,
        "readOnlyHint": true
      }
    },
    {
      "name": "list_runs",
      "description": "List the account's task runs, newest first \u2014 delegated jobs and scheduled tasks alike. Filter by status or task.",
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true,
        "readOnlyHint": true
      }
    },
    {
      "name": "resolve_approvals",
      "description": "Approve or deny the integration actions a run is paused on (status needs_input with pending_approval_ids). Submit a decision for every pending id at once; the run resumes in the background.",
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": true,
        "readOnlyHint": false
      }
    },
    {
      "name": "cancel_run",
      "description": "Stop a run that is pending, running, or waiting for input. The run is finalized as failed with 'Cancelled by the caller'.",
      "annotations": {
        "destructiveHint": true,
        "idempotentHint": true,
        "openWorldHint": true,
        "readOnlyHint": false
      }
    },
    {
      "name": "api_search",
      "description": "Discover available Crevio API endpoints. Use this BEFORE `api_execute` when you're unsure which endpoint to call, need to check parameter names, or want to explore what's available for a domain (e.g. \"experiences\", \"discounts\"). A `tools` method returns the full API catalog \u2014 an array of hashes keyed with strings: \"method\", \"path\", \"summary\", \"description\", \"tags\", \"parameters\", \"request_body\". Examples: `tools.select { |t| t[\"tags\"]&.include?(\"Products\") }.map { |t| \"#{t[\"method\"]} #{t[\"path\"]} \u2014 #{t[\"summary\"]}\" }` `tools.find { |t| t[\"path\"].include?(\"price_variants\") && t[\"method\"] == \"POST\" }[\"request_body\"]` `tools.map { |t| t[\"tags\"] }.flatten.compact.uniq.sort` \u2014 list all API domains",
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true,
        "readOnlyHint": true
      }
    },
    {
      "name": "api_execute",
      "description": "Execute Ruby in a sandboxed VM against the Crevio REST API. Use `api_search` first\nto find the endpoint and its body fields, then call it here. Chain calls, transform\nresults, return the final expression.\n\n## Available in your code\n\n```\nget(path, params = {})    # paths auto-prefixed with /v1, routed in-process\npost(path, **body)        # body as keyword args or a hash \u2014 both work\npatch(path, **body)\ndelete(path)\nfind_endpoints(query)     # -> [\"METHOD /path \u2014 summary\", ...]\niso8601(offset_seconds = 0)  # mruby Time has no strftime/iso8601\n```\n\nReturns the **last expression**; `puts` is side-channel only. Every run answers\n`{result:, calls:, output:}` \u2014 `calls` audits each REST call (`method`, `path`,\n`status`, plus `error_code`/`param` on failure). When `result` has unexpected nils,\nread `calls` for a non-2xx. Never project only success fields (`{id: r[\"id\"]}`) \u2014\nthat hides the error from `result`.\n\n## Rules that the schema does not tell you\n\n- Params are unwrapped, Stripe-style: fields at the TOP level. `{product: {...}}` is\n  silently dropped by most endpoints.\n- Associations take the bare resource name and a prefix_id string \u2014 `product: \"prod_x\"`,\n  never `product_id:`. Some required ones never appear in a schema's `properties`.\n- Courses and content live under `/experiences`, NOT `/products`.\n- Lists answer `{object: \"list\", data: [...], has_more}`; single resources answer the\n  object directly.\n- Connected integrations go through the same REST surface:\n  `post(\"/connections/<id>/execute\", tool: \"<tool>\", arguments: {...})`, with ids from\n  `get(\"/connections\", search: \"<service>\")`.\n- Sandboxed mruby: no `File`, `ENV`, `Net::HTTP`, `Process`. 10s, 10 MB.\n\n## Example \u2014 publishing a product (the ordering trap)\n\nA product cannot be created active: it needs a price variant first, or the call 422s.\n\n```ruby\nproduct = post(\"/products\", name: \"...\")\npost(\"/price_variants\", product: product[\"id\"], name: \"Standard\",\n     amount_type: \"fixed\", amount: 4900, currency: \"usd\", billing_type: \"one_time\")\npatch(\"/products/#{product[\"id\"]}\", status: \"active\")\n```\n\nAPI groups: Access, Account, Ads, Analytics, ApiKeys, Approvals, Audio, BlogCategories, BlogPosts, Bookings, Bots, Broadcasts, Calls, Chapters, CheckoutLinks, Checkouts, Connections, Customers, Deployments, Discounts, Domains, Email, EventSessions, EventSources, EventTypes, Events, Experiences, Files, FormSubmissions, FormationDocuments, Formations, Forms, ForumPosts, Images, Invoices, Jobs, Leads, LegalPages, Lessons, LinkItems, Logs, Me, OrderItems, Orders, Phone Consents, Phone Numbers, Phone Suppressions, PriceVariants, Products, Refunds, Reviews, Schedules, Secrets, Sites, Skills, Socials, Status, Subscriptions, Tags, TaskRuns, Tasks, Topics, Usage, Users, Video, Web, WebhookEndpoints, WebhookEvents.\n",
      "annotations": {
        "destructiveHint": true,
        "idempotentHint": false,
        "openWorldHint": true,
        "readOnlyHint": false
      }
    }
  ],
  "auth": {
    "type": "oauth2",
    "protected_resource_metadata": "https://mcp.crevio.co/.well-known/oauth-protected-resource"
  }
}