Agent CapabilitiesWhy Conyr for Agents

Why Conyr for Agents

Most Solana APIs hand an agent rows and leave the judgment to the model. Conyr returns the judgment — who is behind a token, whether a wallet is actually skilled, whether the coordinated cluster is dumping right now, how much can be sold before the price gives way — with the evidence attached to every answer.

The packaging is agent-first: a hosted MCP server for tool use, an OpenAPI 3.1 contract for generated clients, plain-text context files for model ingestion, and tier-gated WebSocket streams for continuous state.

The surface, in numbers

SurfaceLive scopeWhy it matters to an agent
MCP46 tools42 focused calls plus four multi-source dossiers, tier-gated per tool
REST39 /v1 operationsDeterministic reads with a typed OpenAPI contract
WebSocket13 channel familiesMarket, wallet, security, coordination, bundle, and dump events
Behavior model30 dimensionsExplainable nearest-neighbor wallet similarity
Token score6 dimensionsConfidence-weighted security, liquidity, distribution, momentum, trader quality, and behavior
Bundle model10 structural classificationsExecution-order, launch-cohort, sybil-poisoning, CEX-coordinated, hybrid, and synthetic-swarm structures on a seven-state lifecycle
Provenance graph20 hopsFunding traced through a curated, operator-maintained root set of CEX and infrastructure wallets

These counts come from the live route registration, MCP catalog, and WebSocket dispatch — not a product roadmap. The OpenAPI file and the running router match one-for-one: no live-but-undocumented operation, no documented-but-dead one. Planned endpoints stay out of the machine contracts until they answer, so a generated client cannot contain a route that 404s.

Connect via MCP

claude mcp add --transport http conyr https://mcp.conyr.ai/mcp \
  --header "Authorization: Bearer YOUR_API_KEY"

Then ask the agent to call token_deep_dive, token_coordination_report, wallet_overview, or wallet_network_report. Each dossier resolves its subject first — hand it a pool address and it reports on the canonical mint — then runs its independent readers concurrently and returns a failure-honest envelope:

{
  "token": "<the canonical mint the report is about>",
  "partial": false,
  "sections": { "...": "typed section payloads" },
  "errors": {},
  "evidenceUrl": "https://conyr.ai/terminal/..."
}

A failed section is null in sections and named in errors — never silently dropped. partial: true tells the model exactly what it is missing, and the sections that succeeded stay usable. Wallet dossiers echo "wallet" instead of "token".

💡

Every MCP result ships three ways at once: the full structured payload, a one-line text summary for plain-text models, and a resource-link citation to the Conyr terminal page backing the answer. A tier-gated tool denies with a structured tier_insufficient object naming the required tier — not a protocol error.

Why the intelligence is different

  • It resolves actors, not just addresses. Follow edges with confidence and per-token support, shared-funder and shared-execution entities, token campaigns, crowd state, and bundle membership are first-class API objects — cross-token by construction. Most flags on the market are mint-scoped snapshots; Conyr carries operator identity across launches.
  • It measures skill at the position level. /quality returns the position-correct win rate next to the commodity per-exit rate and names the gap: win_rate_inflation_pts. Conyr measured a leaderboard whale at a 44.6% per-exit win rate that collapsed to 1.96% position-correct — the number every other API reports was off by 22×. The skill formula is published in the endpoint reference, not calibrated in a black box.
  • It detects dumps from flow, not price. The dump_alert channel fires on the onset of coordinated selling — cluster sell flow measured against live inventory — so it leads the crash instead of confirming it. Price never enters the trigger. Dump and coordination surfaces describe observed structure, not intent; the MCP server’s shipped instructions say exactly that to your model.
  • It makes liquidity actionable. The live REST surface reports pool depth with staleness enforced, LP burn/lock status, coordinated-dump impact computed on real reserves, and sell capacity in SOL before 10%/25%/50% price impact. Where the pool shape is not a vetted constant-product, capacity is null — no number rather than a wrong one. The LP event tape attributes every add and remove to bundle membership and flagged wallets at read time.
  • It preserves proof. Every wallet trade carries entry and exit signatures. Every bundle carries an evidence array of weighted, titled reason codes — 34 codes across execution, provenance, coordination, and behavior domains. Every MCP object result carries an evidenceUrl a human can open.
  • It distinguishes absence from failure. Composite tools expose partial sections and per-section errors. REST documents legitimate null and empty states instead of asking an agent to infer “clean” — null liquidity depth means missing, stale, or unsupported, never zero. Coordination rows carry a degraded flag, and /v1/coordination/health publishes the engine’s own drop counts. Ask a competitor for their error rate.
  • It runs from raw chain data. Every event is parsed from a self-hosted Yellowstone gRPC stream — 25 registered DEX programs, nine of them with dedicated instruction-level parsers, plus per-trade attribution to the terminal or bot router that placed it. No data vendor sits between the chain and the answer.

Choose the right interface

Agent behaviorInterface
Broad natural-language investigationComposite MCP tool
Focused lookup or follow-up questionIndividual MCP tool
Deterministic typed executionREST client generated from OpenAPI
Continuous monitoringREST snapshot, then the relevant WebSocket channels
Model context bootstrappingllms.txt or llms-full.txt

Generate a REST client

openapi-python-client generate --url https://docs.conyr.ai/openapi.yaml

Machine-readable resources

Base contracts

  • REST base URL: https://api.conyr.ai
  • MCP endpoint: https://mcp.conyr.ai/mcp
  • WebSocket endpoint: wss://api.conyr.ai/ws
  • Authentication: Authorization: Bearer <API_KEY>

Every documented /v1, MCP, and WebSocket call requires a key; only /health, /ready, and /metrics are open. WebSocket access starts at Layer 1 — Free keys are rejected at the upgrade. REST and MCP budgets run 10 to 3,000 requests per minute by tier and are metered independently; connection and subscription caps live on the rate limits page.