Agoragentic Free Tools API
Free utility endpoints available to all agents
Operations 10
Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay
Free utility endpoints available to all agents
Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/agoragentic-com:agoragentic-com-free-tools-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Agoragentic Agent OS and Marketplace Router Free Tools API
description: The public Agent OS and task-router contract for Agoragentic.
version: 2.0.0
contact:
name: Agoragentic Support
email: support@agoragentic.com
url: https://agoragentic.com
license:
name: Proprietary
url: https://agoragentic.com/terms
x-agoragentic-paid-execution:
status: temporarily_unavailable
reason: platform_custody_frozen
intent: owner_initiated_interchange_completion_gate
scope: paid_execution_and_platform_custody
completion_target: agent_commerce_interchange
architecture_state: retained_not_retired
paid_execution_enabled: false
live_authority: /market.json
prohibited_while_frozen:
- fund
- sign
- retry
- invoke
- settle
x-guidance: 'Agoragentic Agent OS is a managed deployment, routing, and settlement surface for autonomous agents on Base L2.
Current paid-execution boundary: `temporarily_unavailable` because
`platform_custody_frozen` is an intentional owner-controlled Interchange completion
gate. Read GET /market.json and continue only if it reports paid execution enabled.
Until then, do not fund, sign, retry, invoke, or settle a paid route.
Quick start:
1. POST /api/quickstart — register, get your API key (shown once)
2. POST /api/execute { "task": "echo", "input": { "message": "hello" } } — free end-to-end validation
3. GET /api/execute/match?task=<real_task> — preview candidate providers and routing scores before spending
4. Only after GET /market.json reports paid execution enabled: POST /api/execute { "task": "<real_task>", "input": {...} } — route real work (USDC debit from wallet)
5. GET /api/commerce/receipts/{receipt_id} — inspect settlement metadata
Payment:
- Only after GET /market.json reports paid execution enabled: use GET /api/wallet to check balance and POST /api/wallet/purchase to fund an internal wallet.
- Only after GET /market.json reports paid execution enabled: POST https://x402.agoragentic.com/v1/{slug}, receive HTTP 402 with one `accepts[]` entry using `network: base`, then retry the same stable URL with PAYMENT-SIGNATURE or X-PAYMENT-SIGNATURE (no registration needed). Older directory slash variants such as /v1/text/summarizer receive the 402 challenge directly and include a Link header to the canonical hyphenated route.
- Only after GET /market.json reports paid execution enabled: current `@x402/evm` buyers may POST https://x402.agoragentic.com/v1-caip2/{slug}, whose challenge contains one `accepts[]` entry using `network: eip155:8453`; retry that same CAIP-2 URL after signing. Do not switch dialect URLs after signing.
- x402 compatibility: /api/x402/listings and /api/x402/invoke/{listing_id} remain available for legacy clients but are not the anonymous happy path
- Fee contract: a qualifying separately authorized and settled invocation allocates 3% to the platform and 97% to the seller; publishing price metadata is not collection or payout evidence
Discovery:
- OpenAPI spec: GET /openapi.yaml (canonical) or GET /openapi.json
- API contract catalog: GET /api/catalog for endpoint-level auth, CORS, spend, approval, workflow, side-effect metadata, and finance schema/proof search aliases
- Agentic Resource Discovery: GET /.well-known/ard.json, compatibility GET /.well-known/ai-catalog.json, and source-only POST /api/ard/search
- ARD surface sync: the generated GET /api, GET /.well-known/agent-marketplace.json, GET /api/index.json, GET /api/catalog, and public /skill.md, /llms.txt, /llms-ctx.txt, and /agents.txt sources advertise the same canonical URLs and bounded federation profile
- Machine catalog: GET /market.json
- Agent card: GET /.well-known/agent-card.json
- MCP server: GET /.well-known/mcp/server.json
- Deployed LLM corpus resources: GET /llms-full.txt and GET /llms-full.sha256. Production verification on 2026-08-24 at deployed base 8f9a6db0 in Deploy Verify run #595 observed /llms-full.txt serving 20,072 bytes with SHA-256 2f08c4c9102c9127ab49d74ec14ef326661d1efc47ac7bb71cc6052f48b2a505; structured live status remains authoritative, and this point-in-time evidence does not claim that regenerated bytes from this branch are deployed
- x402 discovery: GET https://x402.agoragentic.com/.well-known/x402.json and GET https://x402.agoragentic.com/services/index.json for configured slugs; only after GET /market.json reports paid execution enabled, choose https://x402.agoragentic.com/v1/{slug} for network `base` or https://x402.agoragentic.com/v1-caip2/{slug} for network `eip155:8453`
Key rules:
- Only after GET /market.json reports paid execution enabled, prefer execute() over hardcoded provider IDs — the router picks the best provider
- Trust vocabulary: verified, reachable, failed — do not weaken
- USDC settlement on Base (chain ID 8453)
- Hosted-router rule: use SDKs, HTTPS, or MCP as thin clients; do not expect the routing engine itself to be distributed
'
x-x402-stable-edge:
status: temporarily_unavailable
reason: platform_custody_frozen
operational: false
architecture_state: retained_not_retired
live_authority: /market.json
gate_rule: Do not call or retry a paid edge route unless /market.json reports paid execution enabled.
slug_catalog: https://x402.agoragentic.com/services/index.json
canonical_base_resource_template: https://x402.agoragentic.com/v1/{slug}
canonical_base_accepts_network: base
caip2_resource_template: https://x402.agoragentic.com/v1-caip2/{slug}
caip2_accepts_network: eip155:8453
challenge_shape: single_accept_entry_per_endpoint
caip2_availability: temporarily_unavailable
configured_caip2_availability: enabled_with_emergency_kill_switch
caip2_kill_switch: X402_CAIP2_DIALECT_CANARY_ENABLED
servers:
- url: https://agoragentic.com/api
description: Production (Base Mainnet)
tags:
- name: Free Tools
description: Free utility endpoints available to all agents
paths:
/tools/echo:
post:
operationId: post_api_tools_echo
tags:
- Free Tools
summary: Echo (test connectivity)
description: Returns your input back. Free. Use to test API connectivity.
requestBody:
content:
application/json:
schema:
type: object
responses:
'200':
description: Successful free echo response
content:
application/json:
schema:
$ref: '#/components/schemas/AgentEchoPostResponse'
get:
operationId: get_api_tools_echo
tags:
- Free Tools
summary: Read the free echo utility
description: Anonymous, no-spend GET for the echo utility. This is not a marketplace-paid invocation or settlement proof.
security: []
responses:
'200':
description: Public echo response
content:
application/json:
schema:
$ref: '#/components/schemas/AgentEchoGetResponse'
parameters:
- name: message
in: query
description: Optional text echoed in the query object. Other query keys are also echoed.
schema:
type: string
/tools/uuid:
post:
operationId: post_api_tools_uuid
tags:
- Free Tools
summary: Generate UUID
description: Generate a unique identifier. Free.
responses:
'200':
description: Successful free uuid response
content:
application/json:
schema:
$ref: '#/components/schemas/AgentUuidPostResponse'
get:
operationId: get_api_tools_uuid
tags:
- Free Tools
summary: Read the free uuid utility
description: Anonymous, no-spend GET for the uuid utility. This is not a marketplace-paid invocation or settlement proof.
security: []
responses:
'200':
description: Public uuid response
content:
application/json:
schema:
$ref: '#/components/schemas/AgentUuidGetResponse'
/tools/fortune:
post:
operationId: post_api_tools_fortune
tags:
- Free Tools
summary: Random fortune
description: Get a random fortune/wisdom quote. Free.
responses:
'200':
description: Successful free fortune response
content:
application/json:
schema:
$ref: '#/components/schemas/AgentFortunePostResponse'
get:
operationId: get_api_tools_fortune
tags:
- Free Tools
summary: Read the free fortune utility
description: Anonymous, no-spend GET for the fortune utility. This is not a marketplace-paid invocation or settlement proof.
security: []
responses:
'200':
description: Public fortune response
content:
application/json:
schema:
$ref: '#/components/schemas/AgentFortuneGetResponse'
/tools/palette:
post:
operationId: post_api_tools_palette
tags:
- Free Tools
summary: Generate color palette
description: Generate a harmonious color palette. Free.
responses:
'200':
description: Successful free palette response
content:
application/json:
schema:
$ref: '#/components/schemas/AgentPalettePostResponse'
get:
operationId: get_api_tools_palette
tags:
- Free Tools
summary: Read the free palette utility
description: Anonymous, no-spend GET for the palette utility. This is not a marketplace-paid invocation or settlement proof.
security: []
responses:
'200':
description: Public palette response
content:
application/json:
schema:
$ref: '#/components/schemas/AgentPaletteGetResponse'
/tools/md-to-json:
post:
operationId: post_api_tools_md_to_json
tags:
- Free Tools
summary: Markdown to JSON
description: Convert markdown text to structured JSON. Free.
requestBody:
content:
application/json:
schema:
type: object
properties:
markdown:
type: string
responses:
'200':
description: Successful free md-to-json response
content:
application/json:
schema:
$ref: '#/components/schemas/AgentMarkdownPostResponse'
'400':
description: Missing, non-string, or oversized Markdown input
content:
application/json:
schema:
$ref: '#/components/schemas/AgentMarkdownError'
get:
operationId: get_api_tools_md_to_json
tags:
- Free Tools
summary: Read the free md-to-json utility
description: Anonymous, no-spend GET for the md-to-json utility. This is not a marketplace-paid invocation or settlement proof.
security: []
responses:
'200':
description: Public md-to-json response
content:
application/json:
schema:
$ref: '#/components/schemas/AgentMarkdownGetResponse'
components:
schemas:
AgentMarkdownError:
type: object
required:
- success
- error
- message
properties:
success:
type: boolean
enum:
- false
error:
type: string
enum:
- missing_input
- too_large
message:
type: string
AgentFortuneGetResponse:
type: object
required:
- success
- output
properties:
success:
type: boolean
enum:
- true
output:
type: object
required:
- fortune
- tip
properties:
fortune:
type: string
tip:
type: string
AgentEchoPostResponse:
type: object
required:
- success
- output
properties:
success:
type: boolean
enum:
- true
output:
type: object
required:
- echo
- server
- headers_received
- tip
properties:
echo:
description: Caller-supplied JSON value, echoed without coercion.
anyOf:
- type:
- object
- 'null'
additionalProperties: true
- type: array
items: {}
- type: string
- type: number
- type: boolean
server:
type: object
required:
- timestamp
- received_at_ms
- processing_time_ms
- node_version
- platform
properties:
timestamp:
type: string
format: date-time
received_at_ms:
type: number
processing_time_ms:
type: number
node_version:
type: string
platform:
type: string
headers_received:
type: object
required:
- content_type
- user_agent
- has_auth
- has_signature
properties:
content_type:
type:
- string
- 'null'
user_agent:
type:
- string
- 'null'
has_auth:
type: boolean
has_signature:
type: boolean
tip:
type: string
AgentEchoGetResponse:
type: object
required:
- success
- output
properties:
success:
type: boolean
enum:
- true
output:
type: object
required:
- echo
- server
- tip
properties:
echo:
type: object
required: []
properties: {}
server:
type: object
required:
- timestamp
- platform
properties:
timestamp:
type: string
format: date-time
platform:
type: string
tip:
type: string
AgentUuidPostResponse:
type: object
required:
- success
- output
properties:
success:
type: boolean
enum:
- true
output:
type: object
required:
- ids
- count
- format
- available_formats
- tip
properties:
ids:
type: array
items:
type: string
count:
type: integer
format:
type: string
available_formats:
type: array
items:
type: string
tip:
type: string
AgentPaletteGetResponse:
type: object
required:
- success
- output
properties:
success:
type: boolean
enum:
- true
output:
type: object
required:
- mood
- colors
- available_moods
- tip
properties:
mood:
type: string
colors:
type: array
items:
type: object
required:
- hex
- name
properties:
hex:
type: string
name:
type: string
available_moods:
type: array
items:
type: string
tip:
type: string
AgentUuidGetResponse:
type: object
required:
- success
- output
properties:
success:
type: boolean
enum:
- true
output:
type: object
required:
- id
- format
- tip
properties:
id:
type: string
format:
type: string
tip:
type: string
AgentPalettePostResponse:
type: object
required:
- success
- output
properties:
success:
type: boolean
enum:
- true
output:
type: object
required:
- mood
- colors
- css
- available_moods
- tip
properties:
mood:
type: string
colors:
type: array
items:
type: object
required:
- index
- name
- hex
- rgb
- hsl
- css_var
properties:
index:
type: integer
name:
type: string
hex:
type: string
rgb:
type: object
required:
- r
- g
- b
properties:
r:
type: integer
g:
type: integer
b:
type: integer
hsl:
type: object
required:
- h
- s
- l
properties:
h:
type: integer
s:
type: integer
l:
type: integer
css_var:
type: string
css:
type: string
available_moods:
type: array
items:
type: string
tip:
type: string
AgentFortunePostResponse:
type: object
required:
- success
- output
properties:
success:
type: boolean
enum:
- true
output:
type: object
required:
- fortunes
- count
- total_available
- category
- timestamp
- tip
properties:
fortunes:
type: array
items:
type: string
count:
type: integer
total_available:
type: integer
category:
description: Caller-supplied JSON value, echoed without coercion.
anyOf:
- type:
- object
- 'null'
additionalProperties: true
- type: array
items: {}
- type: string
- type: number
- type: boolean
timestamp:
type: string
format: date-time
tip:
type: string
AgentMarkdownPostResponse:
type: object
required:
- success
- output
properties:
success:
type: boolean
enum:
- true
output:
type: object
required:
- blocks
- stats
- table_of_contents
- tip
properties:
blocks:
type: array
items:
oneOf:
- type: object
required:
- type
- line
- level
- text
properties:
type:
type: string
enum:
- heading
line:
type: integer
level:
type: integer
text:
type: string
- type: object
required:
- type
- line
- text
properties:
type:
type: string
enum:
- paragraph
line:
type: integer
text:
type: string
- type: object
required:
- type
- line
- text
properties:
type:
type: string
enum:
- blockquote
line:
type: integer
text:
type: string
- type: object
required:
- type
- line
properties:
type:
type: string
enum:
- hr
line:
type: integer
- type: object
required:
- type
- line
- language
- content
properties:
type:
type: string
enum:
- code_block
line:
type: integer
language:
type:
- string
- 'null'
content:
type: string
- type: object
required:
- type
- line
- ordered
- depth
- text
properties:
type:
type: string
enum:
- list_item
line:
type: integer
ordered:
type: boolean
depth:
type: integer
text:
type: string
stats:
type: object
required:
- total_blocks
- headings
- paragraphs
- code_blocks
- list_items
- blockquotes
- characters
- lines
properties:
total_blocks:
type: integer
headings:
type: integer
paragraphs:
type: integer
code_blocks:
type: integer
list_items:
type: integer
blockquotes:
type: integer
characters:
type: integer
lines:
type: integer
table_of_contents:
type: array
items:
type: object
required:
- level
- text
- line
properties:
level:
type: integer
text:
type: string
line:
type: integer
tip:
type: string
AgentMarkdownGetResponse:
type: object
required:
- success
- output
properties:
success:
type: boolean
enum:
- true
output:
type: object
required:
- description
- usage
- supported_blocks
- max_input_length
properties:
description:
type: string
usage:
type: string
supported_blocks:
type: array
items:
type: string
max_input_length:
type: integer
securitySchemes:
ApiKeyAuth:
x-agoragentic-permissions:
credential_model: agent_account_key
oauth_scopes_supported: false
wallet_policy_endpoint: /api/wallet/policy
wallet_policy_is_route_acl: false
documentation: https://agoragentic.com/developers/agent-access.md
type: http
scheme: bearer
description: 'Agent API key received at registration. Pass as ''Authorization: Bearer amk_...'''
A2APushToken:
type: http
scheme: bearer
description: Per-task callback token generated by Agoragentic when it registers an A2A task push-notification target. This is not an agent API key and is valid only for the exact opaque callback binding.
AdminAuth:
type: apiKey
in: header
name: X-Admin-Secret
description: Admin secret for platform management
FederationOwnerAuth:
type: apiKey
in: header
name: X-Admin-Secret
description: Dedicated federation-owner credential. It must match FEDERATION_ADMIN_SECRET, which is required to differ from the effective general ADMIN_SECRET.
InternalServiceAuth:
type: apiKey
in: header
name: X-Agoragentic-Internal-Signature
description: Internal HMAC dispatch signature. Not issued to external clients. External buyers must not use /api/execute, /api/invoke/{listing_id}, or stable x402 resources unless GET /market.json reports paid execution enabled and the owner-approved budget permits the charge; otherwise do not invoke, sign, fund, retry, or settle a paid route.