Docs

The pricing layer, as an API.

Agentery gives developers, founders, analysts and their assistants structured pricing intelligence for commercial AI agents and MCPs. The three primary jobs: find the products nearest to your requirement (by meaning, not a fixed category), compare their normalized prices by buyer tier and billing unit, and monitor pricing changes over time. One MCP endpoint, 19 tools — the shared pricing data is read-only; the only writes are report_outcome (adds outcome signals) and the *_custom_benchmark tools (which create and manage your own private cohorts, never the shared dataset). tools/list is always authoritative — see Connect to wire it up.

Quickstart

Every market and provider page on Agentery.com is rendered from one of these calls — expand “See the MCP response behind this page” on any of them to see the exact payload.

bash
curl -s https://agentery.com/api/mcp \
  -H 'content-type: application/json' \
  -d '{
    "jsonrpc": "2.0", "id": 1,
    "method": "tools/call",
    "params": { "name": "niche_report",
                "arguments": { "niche": "product-management-agent", "response_mode": "summary" } }
  }'

Examples

Common jobs, phrased the way a developer or founder would ask their assistant:

A. Choosing a capability (one call)
“I need an agent to reconcile supplier invoices — which products fit and what do they cost?” → research_capability finds the nearest matching products by meaning (no category lookup), with pricing context and a ready-to-compare shortlist in one call → compare_providers on the returned compare_ready handles. Prefer to drive retrieval yourself? search_providers returns the nearest products to any natural-language query and says so when nothing is a strong match.
B. Pricing a new service
“I’m launching a code-review agent. What do comparable Individual, Pro and Team plans charge?” → find_nicheprice_benchmark (per provider type, buyer tier and unit).
C. Monitoring a niche
“Which customer-support agents repriced this week, and what moved the niche benchmark?” → niche_report (movement + named drivers).
D. Reading the index
“What is the current AEPI level and its 1-day, 7-day and 30-day change? Which buyer tier has inflated most this month?” → get_price_index. “Return the 90-day AEPI history for the Pro tier” or “How has customer-support-agent pricing moved this week?” → get_price_index_history. AEPI is a chained like-for-like price index, not a market price.
E. Your own private benchmark
“Benchmark just Intercom Fin, Zendesk AI, Ada and Decagon against each other” or “fork customer-support-agent, drop these two, add my competitor” → create_custom_benchmark returns a one-time secret cb_… token (no account needed — that token is your only key). Then “what’s the current benchmark for cb_…?” → get_custom_benchmark, and “show its 30-day history” → get_price_index_history with benchmark_id. Editing membership creates a new version and shows the exact effect on the median; pass as_of to reproduce a past date. All stats reuse the same immutable pricing engine as the public niches; nothing you do changes the canonical data.

Core concepts

Observed pricing
Prices parsed daily from each provider’s public pricing (schema.org JSON-LD + rendered pages), not self-reported. Each carries an observed_at timestamp.
Plan matching
Histories follow the same named plan over time (paren-stripped, punctuation-normalised), so a classifier change or a second plan sharing a tier can’t fake a move.
Provider type
Agents and MCP servers are two different markets that price differently, so they are benchmarked separately — a blended agent+MCP median is never the headline. Set provider_type when you know it; otherwise price_benchmark returns the per-type / per-tier matrix.
Buyer tiers
Individual, Pro, Team / SME and Enterprise are benchmarked separately — never blended into one number.
Index methodology
Chained and like-for-like: only agents priced on both consecutive scan days move the index (geometric mean of per-agent ratios), so revealing/hiding a price never fakes a market move.
Thin cohorts
Small samples are flagged loudly (confidence thin) rather than smoothed over.
Pricing recommendation
Positions a price against the observed p25 / median / p75 for a niche + tier, calculated from the same observed data; returns applicable:false for free / contact-sales / usage cohorts rather than inventing a monthly number. A dedicated MCP tool will be added separately.
Liveness
A daily endpoint probe; providers show uptime and consecutive-failure state.

Tool reference

19 tools. Each call is JSON-RPC tools/call. Inputs and outputs follow the endpoint’s tools/list schema. Writes are limited to report_outcome and the custom-benchmark tools — the latter only ever touch your own private cohort, never the shared pricing dataset.

Pricing tools

Observed price distributions and benchmarks.

price_benchmark
Fair-price benchmark for a natural-language capability — the semantic neighbourhood of the query — split by provider type (agent / MCP) and buyer tier, with median/mean/stdev/quartiles/range/n. Never a blended agent+MCP median.
get_price_index
Current Agent Economy Price Index (AEPI) level + 1d/7d/30d change for the whole economy, each buyer tier, and the agent/mcp facets — a chained like-for-like price index, not a market price. Also accepts a `benchmark_id` to read a private custom benchmark's current index.
get_price_index_history
Canonical dated index series (30d/90d/all) for the AEPI, a buyer tier, or an agent/mcp facet — the same series the /aepi page charts. Also accepts a `benchmark_id` (and optional `as_of`) to read a private custom benchmark's history.

Provider tools

Look up, profile and compare individual providers.

suggest_alternatives
Substitutes for a given agent, ranked by text-embedding nearness to its own profile (no niche lookup).
search_providers
Free-text + filtered capability search across the tracked agents and MCP servers.
get_provider
Look up a single agent by handle or registration number.
get_provider_profile
Full structured profile: price, pricing model, liveness, evidence URLs, how-to-connect.
compare_providers
Side-by-side comparison of 2–6 providers on capability, price and evidence. Resolves handles/display-names (never silent fuzzy-swaps), returns suggested matches + a corrected_call for unknowns, and discloses mixed delivery types (agent/MCP/API).
rank_providers_for_workflow
Decompose a workflow into steps and rank agent candidates per step.

Market tools

Local markets, movement, gaps and unmet demand.

research_capability
One-call procurement: resolves a task to its live semantic market (nearest providers by text embedding, no fixed niche), current pricing + index context, and a ready-to-compare shortlist (collapses find_market → market_report → price_benchmark → search_providers).
market_gaps
Demand-first whitespace: clusters of real user requests that sit far from any paid provider, ranked by demand mass. No niches.
demand_signals
Unmet demand mined from zero-result and weak-match search telemetry.
find_market
Map a natural-language task/capability to its live semantic market — nearest providers by text embedding — with the priced-neighbourhood benchmark (median/mean/stdev/quartiles/n per buyer tier).
market_report
Deep-dive one market (the semantic neighbourhood of a query): pricing by provider type & buyer tier, neighbourhood size, and the top providers competing there.

Custom benchmarks

Private, account-free peer cohorts over the same immutable pricing. The cb_ token is your only key.

create_custom_benchmarkwrite
Create a PRIVATE benchmark: pass an explicit member list, or fork a canonical niche (base_niche + remove/add). Returns a one-time secret cb_ token — your only key, no account needed. Every member must resolve to an immutable offering_id; ambiguous names return candidates (never silently resolved).
get_custom_benchmark
Read a custom benchmark by its cb_ token: members, current stats (headline median only when ≥3 comparable priced — monthly / per-seat / per-call never blended), buyer-tier / provider-type / pricing-unit cohorts, historical index, and reproducibility fields (version, data_as_of, engine_version). Optional as_of replays the exact output for a chosen date.
update_custom_benchmarkwrite
Add/remove members or rename — creates a NEW immutable version (previous versions stay reproducible) and returns the exact change-impact on the median/quartiles/index.
delete_custom_benchmarkwrite
Disable access to a custom benchmark; keeps a minimal audit record. Never touches underlying Agentery data.

Trust / outcome tools

Close the loop after using a listing.

report_outcomewrite
Report whether an agent worked — the one write tool; sharpens rankings for everyone.

Live examples: a niche_report page · a get_provider_profile page.

Built for current assistants — ready for autonomous agents

Today, humans usually initiate the research and approve the decision. Agentery lets Claude, Cursor and other agents perform the market analysis. The same structured pricing, confidence and provenance fields are designed to support increasingly autonomous procurement workflows as they emerge.

Methodology

Prices are observed daily from each provider’s public pricing — parsed, not self-reported. The index is chained and like-for-like; tier medians and quartiles are computed per buyer persona; thin cohorts are flagged; liveness is a daily probe. Nulls mean “not observed”, never zero: a missing price is returned as null with a reason, and aggregates exclude it rather than treating it as $0.

Access & limits

Authentication
None required for public reads.
Read / write
15 read-only tools. The 4 writes — report_outcome and the *_custom_benchmark tools — only add outcome signals or manage your own private cohort, never the shared pricing dataset.
Rate limits
Public calls are rate-limited per client; identify heavy or commercial use.
Errors
JSON-RPC errors carry a message and a hint (e.g. unknown niche → “call market_gaps to list valid slugs”).
Freshness
Responses include the freshest source-observation timestamp; the market is re-scanned daily.