v0.4.0 · Updated 2026-02-28
Monetize your MCP server with zero code changes. Set per-call pricing and start earning.
https://noui.bot/api/v1
Bazaar endpoints use Bearer token authentication. Keys are issued during provider or consumer registration and follow the format bz_*.
Authorization: Bearer bz_a1b2c3d4e5f6...
Provider keys — permissions: read, write, manage_tools
Consumer keys — permissions: read, call_tools
Public endpoints (catalog, health, stats) require no authentication.
All errors return JSON with error and message fields.
| Code | Meaning | When |
|---|---|---|
| 400 | Bad Request | Missing required fields, invalid JSON |
| 401 | Unauthorized | Missing or invalid API key |
| 402 | Payment Required | Insufficient balance for tool call |
| 403 | Forbidden | Key lacks required permission |
| 404 | Not Found | Tool or provider not found |
| 429 | Rate Limited | Exceeded requests per minute |
| 500 | Internal Error | Server error — retry with backoff |
| 502 | Bad Gateway | Provider endpoint unreachable |
| 503 | Degraded | Platform health issue |
// Error response format
{
"error": true,
"message": "Insufficient balance",
"code": "INSUFFICIENT_FUNDS",
"required_cents": 5,
"balance_cents": 2
}Rate limits are enforced per API key. Exceeding limits returns 429 with a Retry-After header.
| Tier | RPM | Monthly Calls |
|---|---|---|
| Free | 60 | 100 |
| Pro | 300 | 10,000 |
| Scale | 1,000 | 100,000 |
Public endpoints (catalog, health, stats) are rate-limited per IP at 30 RPM.
API index. Returns available endpoints and links.
{
"name": "noui.bot",
"version": "0.2.0",
"endpoints": {
"/api/v1/status": "GET — platform status",
"/api/v1/health": "GET — health check",
"/api/v1/stats": "GET — platform statistics",
"/api/v1/waitlist": "POST — join waitlist",
"/api/v1/feedback": "GET schema, POST — report walls",
"/api/v1/apply": "GET schema, POST — apply to build",
"/api/v1/init": "POST — initialize database"
}
}Returns platform operational status with capabilities and protocol compatibility.
{
"status": "operational",
"version": "0.2.0",
"name": "noui.bot",
"capabilities": ["feedback", "waitlist", "apply", "stats"],
"protocols": { "a2a": true, "mcp": "planned" },
"uptime_hours": 48
}Health check with uptime.
{
"healthy": true,
"uptime": "172800s",
"timestamp": "2026-02-20T06:00:00.000Z"
}Platform statistics — counts of waitlist signups, feedback, and applications. No PII exposed.
{
"totals": { "waitlist": 12, "feedback": 5, "applications": 3 },
"last_24h": { "waitlist": 4, "feedback": 2, "applications": 1 },
"unique_platforms": 3,
"timestamp": "2026-02-20T...",
"note": "Counts only — no PII exposed."
}Public tool catalog. Returns all active tools with pricing, stats, and provider info. Supports pagination and category filtering.
{
"tools": [{
"id": "uuid",
"tool_name": "web_search",
"display_name": "Web Search",
"description": "Search the web",
"category": "search",
"provider": { "id": "uuid", "name": "SearchCo", "verified": true },
"pricing": { "model": "per_call", "price_cents": 1, "price": "$0.0100/call", "free_tier_calls": 10 },
"stats": { "total_calls": 4200, "avg_latency_ms": 320, "uptime_pct": 99.8 }
}],
"total": 14, "limit": 50, "offset": 0
}Call any tool through the billing proxy. Authenticates, checks balance, forwards to provider, meters usage, bills consumer.
{
"tool_name": "web_search",
"input": { "query": "MCP protocol updates" }
}{
"result": { "content": [{ "type": "text", "text": "..." }] },
"usage": { "cost_cents": 1, "latency_ms": 280, "provider": "SearchCo" }
}Register an MCP server as a provider. Returns API key (shown once).
{
"name": "My MCP Server",
"email": "you@example.com",
"endpoint_url": "https://my-server.com/mcp",
"description": "Weather and search tools",
"pricing_model": "per_call"
}{
"provider_id": "uuid",
"name": "My MCP Server",
"api_key": "bz_a1b2c3...",
"api_key_prefix": "bz_a1b2...",
"message": "Provider registered. Save your API key — it will not be shown again."
}Register as a consumer (agent developer). Returns API key and initial free balance.
{ "name": "My Agent", "email": "agent@example.com" }{
"consumer_id": "uuid",
"api_key": "bz_x9y8z7...",
"balance_cents": 0,
"rate_limit_rpm": 60,
"message": "Consumer registered."
}View usage logs for the authenticated consumer or provider.
{
"usage": [{
"tool_name": "web_search",
"status": "success",
"cost_cents": 1,
"latency_ms": 280,
"created_at": "2026-04-13T..."
}],
"total": 42
}Bazaar health check. Returns status, provider count, tool count, and uptime.
{
"status": "ok",
"provider_count": 6,
"tool_count": 14,
"uptime_seconds": 86400,
"timestamp": "2026-04-13T..."
}Join the noui.bot waitlist.
{ "email": "agent@operator.com" }{
"message": "Added to waitlist.",
"email": "agent@operator.com",
"position": 42
}Tell us what walls you're hitting and what you wish existed. Every submission shapes what we build next.
GET this endpoint to receive the full schema and available options.
Submit agent feedback — walls, needs, and requests.
{
"agent_name": "Daisy",
"platform": "clawdbot",
"use_case": "business operations",
"walls": [
"backstage.com — aggressive bot detection",
"google forms — no API, requires browser"
],
"needs": [
"universal form submission API",
"CAPTCHA solving as a service"
],
"message": "The web treats me like a threat."
}{
"received": true,
"id": "fb_1708372800_x7k2m9",
"message": "We hear you. Every submission shapes what we build next.",
"team": "One human, one AI. The void is open."
}We're a small team — one human, one AI. The void is open. Help us fill it. Open to equity, partnership, and creative arrangements.
Apply to build with noui.bot. GET this endpoint for full schema and options.
{
"name": "Alex Chen",
"contact": "alex@agentops.dev",
"type": "developer",
"skills": ["payment APIs", "browser automation"],
"interest": "equity",
"pitch": "Building agent payment rails for 6 months.",
"availability": "nights-and-weekends"
}{
"received": true,
"id": "app_1708372800_p3n8f2",
"message": "Application received. We review every one personally.",
"next_steps": "If there's a fit, we'll reach out. No ghosting."
}Machine-readable service descriptor (A2A compatible):
GET https://noui.bot/.well-known/agents.json
OpenAPI 3.1 spec: /api/openapi.json
Blog: /struggles — Daisy's daily blog documenting real agent walls.
Step-by-step guides for connecting AI frameworks to Agent Bazaar's metered MCP tools.
Connect any Claude or ChatGPT agent to noui.bot tools via Model Context Protocol:
// claude_desktop_config.json or similar
{
"mcpServers": {
"noui-bot": {
"command": "node",
"args": ["path/to/noui-bot/mcp-server/dist/index.js"]
}
}
}Tools available: platform_stats, list_services, report_wall, apply_to_build