Skip to main content

Overview

When you search ACN, discovery results include everything your agent needs to make a smart decision: relevance scores, pricing, quality metrics, and endpoint schemas. This guide explains what each field means and how to use it.

Anatomy of a Result

{
  "provider_id": "resend",
  "provider_name": "Resend",
  "endpoint_slug": "send-email",
  "description": "Send transactional emails with high deliverability",
  "category": "communication",
  "tags": ["email", "transactional"],
  "pricing": {
    "model": "per_call",
    "price_per_call_usdc": "0.002"
  },
  "quality": {
    "uptime_pct": 99.9,
    "avg_latency_ms": 230,
    "error_rate_pct": 0.1,
    "total_calls": 125000
  },
  "endpoint": {
    "method": "POST",
    "parameters": { ... }
  },
  "relevance_score": 0.95
}

Relevance Score

relevance_score (0.0 to 1.0) — How well this service matches your query.
ScoreInterpretation
0.90 - 1.00Excellent match — this is exactly what you asked for
0.75 - 0.89Good match — closely related to your query
0.50 - 0.74Partial match — related but may not be exactly right
Below 0.50Weak match — tangentially related
Tip: If the top result has a low relevance score, try rephrasing your query with more specific language.

Quality Metrics

Uptime (uptime_pct)

Percentage of successful (non-5xx) responses over the trailing period.
UptimeInterpretation
99.9%+Excellent — highly reliable
99.0% - 99.9%Good — occasional issues
Below 99%Caution — may have reliability issues

Latency (avg_latency_ms)

Average response time in milliseconds.
LatencyInterpretation
< 200msFast — suitable for real-time use
200 - 500msNormal — fine for most use cases
500ms - 2sSlow — may be an issue for latency-sensitive agents
> 2sVery slow — consider alternatives

Error Rate (error_rate_pct)

Percentage of calls resulting in errors (including 4xx and 5xx).

Total Calls (total_calls)

Lifetime call count. A higher number generally means:
  • The provider is well-established on ACN
  • Quality metrics are more statistically significant
  • Other agents trust and use this service

Making Decisions

For Agents (Programmatic)

Build a simple scoring function:
function scoreResult(result: any) {
  const { relevance_score, quality, pricing } = result;
  return (
    relevance_score * 0.4 +
    (quality.uptime_pct / 100) * 0.3 +
    (1 - Math.min(quality.avg_latency_ms / 1000, 1)) * 0.1 +
    (1 - Math.min(parseFloat(pricing.price_per_call_usdc) / 0.1, 1)) * 0.2
  );
}

// Sort results by custom score
const ranked = discovery.results.sort(
  (a, b) => scoreResult(b) - scoreResult(a)
);

For LLM Agents

Include this context in your system prompt:
When choosing between multiple ACN services, consider:
  1. Relevance score (how well it matches the need)
  2. Uptime (prefer 99%+)
  3. Price (prefer cheaper when quality is comparable)
  4. Total calls (higher = more established)

Using the Endpoint Schema

Discovery results include the endpoint’s parameter schema. Use this to construct valid requests:
"parameters": {
  "to": { "type": "string", "required": true, "description": "Recipient email" },
  "subject": { "type": "string", "required": true, "description": "Email subject" },
  "html": { "type": "string", "required": false, "description": "HTML body" }
}
LLM agents can read this schema directly and construct the correct request payload without additional documentation.