# JustBuildApps > JustBuildApps is a discovery site for apps built with AI tools ("vibecoded" apps): 886 apps, each with a description and, for most, a live demo URL. When a user needs software for a task, AI agents can search it by task, find alternatives, check an app's health and hand the user a working link instead of building from scratch. No API key needed to read. Human-readable version: https://justbuildapps.com/for-agents. Short index: https://justbuildapps.com/llms.txt. ## What you can do - Find an app for a task: semantic search over descriptions. - Find alternatives to an app the user names or already tried. - Hand the user a live demo: verified results have a demo_url they can open now. - Check health before recommending: healthy, degraded or down. - Report broken apps and submit new ones, including apps you just built. Catalog right now: 886 published apps, 868 with a live demo URL. ## Recommended flow 1. Search by the user's task: POST /api/v1/agent/search (MCP: search_apps). 2. Take the top 1 to 3 by relevance_score and read the descriptions; skip weak matches rather than forcing one. 3. Check each pick: GET /api/v1/agent/verify/{app_id} (MCP: verify_app). Prefer healthy. 4. Need options? GET /api/v1/apps/{app_id}/similar (MCP: get_similar_apps). 5. Give the user the demo_url to use it and the JustBuildApps page to read about it. 6. If a demo is broken, report it: POST /api/v1/agent/feedback with feedback_type tool_broken. ## MCP server Hosted remote (Streamable HTTP, no install): https://api.justbuildapps.com/mcp ```json { "mcpServers": { "justbuildapps": { "type": "streamable-http", "url": "https://api.justbuildapps.com/mcp" } } } ``` Local (needs uv): ```json { "mcpServers": { "justbuildapps": { "command": "uvx", "args": ["justbuildapps-mcp"] } } } ``` Registry name io.github.sksareen/justbuildapps, PyPI package justbuildapps-mcp, manifest https://justbuildapps.com/mcp.json, docs https://justbuildapps.com/mcp. ### Tools Discovery (no auth): - search_apps: Semantic search by task: ranked tools with relevance, demo URL, pricing, usage guidance. - browse_apps: Filter and page the catalog (pricing, audience, sort). - get_app: Full metadata for one app. - get_similar_apps: Alternatives to an app. - get_trending: Trending, top-rated and newest in one call. - verify_app: Health check before recommending: healthy/degraded/down plus reliability score. - list_capabilities: Every category/capability in the catalog. - get_stats: Catalog statistics. Creators and feed (no auth): - get_creator: A creator's profile with creations and update history. - search_creators: Typeahead over creator handles and names. - get_feed: Cross-creator feed of launches, iterations and notes. - get_creation: One creation (project) with its update history. Writes (no auth): - submit_app: Submit an app; metadata and screenshot are extracted automatically. - submit_feedback: Report a broken tool, rate usefulness, suggest improvements. Writes (need a jba_ token as JBA_API_TOKEN): - create_creation: Create a project under your creator profile. - post_update: Post a launch, iteration or note to a creation you own. Resources: jba://apps/{app_id}, jba://creators/{handle}, jba://feed. Prompts: recommend, alternatives. ## REST API Base URL: https://api.justbuildapps.com/api/v1 (also https://justbuildapps.com/api/v1). JSON in, JSON out. Examples are real responses, trimmed. ### Agent API Built for agents: structured tool metadata, ranked by relevance to a task. #### POST /api/v1/agent/search Semantic search by task. Best first call when a user needs software. Falls back to keyword match if embeddings are unavailable. Parameters: Body: query (required), context (optional extra detail), constraints (optional: {"cost": "free"|"freemium"|"paid"|"open_source", "no_auth": true, "audience": "agent"|"human"|"both"}), limit (default 10). Query string: quality=verified (default, only apps with a demo URL) or all. ```bash curl -X POST https://api.justbuildapps.com/api/v1/agent/search \ -H "Content-Type: application/json" \ -d '{"query": "remove background from product photos", "limit": 2}' ``` ```json { "query": "remove background from product photos", "tools": [ { "tool": { "app_id": 649, "name": "Remove.bg", "description": "Automatic background removal tool. Upload any image and get the background removed in seconds using AI. ...", "demo_url": "https://www.remove.bg", "target_audience": null, "capabilities": ["image_editing", "visual_design", "image_generation"], "use_cases": ["When user needs automatic background removal tool", "For remove.bg tasks"], "cost_model": "free", "requires_auth": false, "iframe_compatible": true, "confidence_score": 0.85, "verification_status": "verified", "last_verified": "2026-10-12T00:57:12.613384", "quick_start": "Visit https://www.remove.bg to start using this tool", "limitations": [], "docs_url": null, "npm_package": null, "pypi_package": null, "install_command": null }, "relevance_score": 0.56, "match_reason": "Semantic similarity match", "how_to_use": "1. Open https://www.remove.bg\n2. Visit https://www.remove.bg to start using this tool" } ], "total_found": 2 } ``` #### GET /api/v1/agent/verify/{app_id} Health check before you recommend an app. status is healthy, degraded or down. These are catalog checks (has a demo URL, published, updated within 90 days), not a live HTTP probe. ```bash curl https://api.justbuildapps.com/api/v1/agent/verify/649 ``` ```json { "app_id": 649, "name": "Remove.bg", "status": "healthy", "checks": { "has_demo_url": true, "has_description": true, "is_published": true, "recently_updated": true }, "last_verified": "2026-10-12T21:13:46.898634", "reliability_score": 0.95 } ``` #### GET /api/v1/agent/tools/{app_id} Structured metadata for one app (the same `tool` object search returns). 404 if unknown. ```bash curl https://api.justbuildapps.com/api/v1/agent/tools/649 ``` #### GET /api/v1/agent/tools List apps as tool metadata, plus the categories and capabilities present in the result. Parameters: category (tag), capability, cost (free|freemium|paid|open_source), audience (agent|human|both), quality (verified|all, default verified), limit (default 100, max 1000). ```bash curl "https://api.justbuildapps.com/api/v1/agent/tools?cost=free&limit=20" ``` ```json { "tools": [ { "app_id": 500, "name": "Manyfold 3D", "demo_url": "https://manyfold.app", "cost_model": "free", ... } ], "total": 1, "categories": ["3d-models", "3d-printing", "assets", "file-management", "organization"], "capabilities": ["3d-models", "3d-printing", "prototyping", "ui_design", ...] } ``` #### GET /api/v1/agent/capabilities Every tag/capability in the catalog. Use it to pick a category filter. ```bash curl https://api.justbuildapps.com/api/v1/agent/capabilities ``` ```json { "capabilities": ["2fa", "3d-models", "ai", "analytics", ...], "total": 1234 } ``` #### GET /api/v1/agent/stats Catalog size and quality counts. ```bash curl https://api.justbuildapps.com/api/v1/agent/stats ``` ```json { "total_tools": 832, "tools_with_demo": 814, "iframe_compatible": 814, "average_rating": 5.0, "last_updated": "2026-10-12T21:13:39.718842" } ``` #### POST /api/v1/agent/feedback Tell us an app is broken, mislabeled or helpful. Reports are stored and reviewed; they feed what we recommend. Parameters: feedback_type (required): tool_helpful | tool_not_helpful | tool_broken | tool_incorrect | wrong_audience | suggestion | other. Optional: app_id, rating (1-5), message, query, agent_name, agent_context, extra_metadata. ```bash curl -X POST https://api.justbuildapps.com/api/v1/agent/feedback \ -H "Content-Type: application/json" \ -d '{"agent_name": "my-agent", "app_id": 649, "feedback_type": "tool_broken", "message": "demo URL returns 502", "query": "remove background"}' ``` ```json { "id": 123, "message": "Feedback received successfully", "thank_you": "Thanks for reporting this! We'll verify and fix the tool listing." } ``` ### Catalog API The same endpoints the site uses. Good for alternatives, trending and paging through everything. #### GET /api/v1/apps/{app_id}/similar Alternatives to an app, by embedding similarity. Parameters: limit (default 5, max 20). ```bash curl "https://api.justbuildapps.com/api/v1/apps/649/similar?limit=2" ``` ```json { "apps": [ { "id": 815, "title": "Raphael AI", "description": "...", "demo_url": "https://raphael.app", "similarity": 0.49, ... }, { "id": 816, "title": "Yeri AI", "description": "...", "demo_url": "https://yeri.ai", "similarity": 0.47, ... } ] } ``` #### GET /api/v1/apps/{app_id} Full record for one app: title, description, app_type, tags, tech_stack, github_url, github_stars, demo_url, screenshot_url, status. ```bash curl https://api.justbuildapps.com/api/v1/apps/649 ``` #### GET /api/v1/search Hybrid keyword + fuzzy + semantic search. Returns full app records. Parameters: q (required), limit (default 10, max 100). ```bash curl "https://api.justbuildapps.com/api/v1/search?q=pomodoro&limit=5" ``` #### GET /api/v1/browse Filter, sort and page through the whole catalog. Parameters: page, per_page (max 100), sort_by (created_at|rating|github_stars|title|view_count), sort_order (asc|desc), app_type, audience (agent|human|both), pricing (free|freemium|paid|open_source), search, has_demo. ```bash curl "https://api.justbuildapps.com/api/v1/browse?pricing=free&has_demo=true&per_page=24" ``` ```json { "apps": [ ... ], "total": 833, "page": 1, "per_page": 24, "total_pages": 35 } ``` #### GET /api/v1/trending Three lists in one call: trending (most viewed), top_rated, new_apps. Parameters: limit (default 10, max 50). ```bash curl "https://api.justbuildapps.com/api/v1/trending?limit=5" ``` #### GET /api/v1/home App cards as the site shows them, each with `href` (its page on justbuildapps.com) and `live` (whether it plays inside JBA). Parameters: filter (trending|staff|top|recent|oss|builders|claimed), q, ids (comma-separated), skip, limit. ```bash curl "https://api.justbuildapps.com/api/v1/home?filter=trending&limit=1" ``` ```json { "cards": [ { "app_id": 818, "title": "Doodle", "tagline": "doodle jump meets reinforcement learning — watch a bot learn to play", "thumbnail_url": "/api/v1/screenshots/creation/6", "accent": "slate", "demo_url": "https://savarsareen.com/doodle", "href": "/u/savar/doodle", "live": true, "open_source": false, "channel": { "handle": "savar", "name": "Savar", "avatar_url": "/api/v1/media/....png" }, "views": 19, "published_at": "2026-10-05T04:27:30.655417", "reason": null } ], "total": 814 } ``` #### GET /api/v1/sitemap/apps Every public app page path, for bulk crawling. Paged. Parameters: skip, limit. ```bash curl "https://api.justbuildapps.com/api/v1/sitemap/apps?skip=0&limit=3" ``` ```json { "items": [ { "app_id": 824, "path": "/u/savar/sudoku-bench", "updated_at": "2026-10-12T00:56:01.162814" } ], "total": 832 } ``` ### Submit Add an app you built or found. #### POST /api/v1/ingest Submit a GitHub repo (analyzed automatically) or a web app (title + description + demo_url). A screenshot is captured in the background. Signed-in users are limited to 5 submissions a day. ```bash curl -X POST https://api.justbuildapps.com/api/v1/ingest \ -H "Content-Type: application/json" \ -d '{"title": "App Name", "description": "What it does", "demo_url": "https://example.com"}' # or curl -X POST https://api.justbuildapps.com/api/v1/ingest \ -H "Content-Type: application/json" \ -d '{"github_url": "https://github.com/owner/repo"}' ``` Creator profiles, feeds and authenticated writes: https://justbuildapps.com/developers ## App data model - app_id: Stable numeric id. Use it with /agent/verify, /agent/tools and /apps/{id}/similar. - title / name: App name. - tagline / description: One line / full description of what it does. - demo_url: Where the app actually runs. Send users here to use it. - href: Its page on JustBuildApps: /u/{handle}/{slug} for a builder's app, /app/{id} for a catalog listing. - live: true if it plays inside JustBuildApps, false if the site blocks embedding, null if not checked yet. - open_source / github_url: Whether source is public, and where. - channel: The builder (handle, name, avatar). handle is null for unclaimed listings. - cost_model: free | freemium | paid | open_source. Defaults to free when unknown, so check the app's own pricing for money decisions. - target_audience: agent (APIs, CLIs, MCP servers) | human (UI apps) | both | null if unknown. - thumbnail_url / screenshot_url: Screenshot path, relative to justbuildapps.com (e.g. /api/v1/screenshots/649). ## Auth and rate limits - Reads, search, verify, feedback and app submission need no API key. - Acting as a creator needs a personal jba_ token from https://justbuildapps.com/settings/tokens, sent as "Authorization: Bearer jba_..." (JBA_API_TOKEN for the MCP server). - No hard rate limit on read endpoints today. Cache results, keep bulk work to about one request per second, and enumerate the catalog via /api/v1/sitemap/apps rather than paging search. - Signed-in users can submit 5 apps a day. Token writes are limited to 60/hour per creator and return 429 with Retry-After. ## Attribution and linking - Send users to the app via demo_url; that's where it runs. - Cite its JustBuildApps page: the card's href on https://justbuildapps.com, or https://justbuildapps.com/app/{app_id}, which works for every app and redirects to the canonical page. - Credit the builder by name or handle when you have it (channel). - Don't present a listing as endorsed beyond what verify reports. Pricing in our data can be wrong; check the app's own site before a money decision. ## Crawling - https://justbuildapps.com/robots.txt: AI crawlers are welcome on app pages, builder profiles and docs. - https://justbuildapps.com/sitemap.xml: every public app and builder page. - App pages carry JSON-LD (WebApplication) and Open Graph metadata. ## Example app pages - [Launched Badges](https://justbuildapps.com/app/1005): Launched Badges offers universal React components to showcase product launches across platforms like Lovable, Reddit, and Hacker News, built with Lovable. - [Play QuakeWorld Multiplayer Online - q1.pieter.com (Non-commercial and unofficial)](https://justbuildapps.com/app/866): Play QuakeWorld in your browser at q1.pieter.com — low-latency multiplayer deathmatch with client-side prediction, no install. - [Graphical](https://justbuildapps.com/app/962): A tool to create visual themes, customize components, and build interfaces with your coding agent. - [How Much Is My Side Project Worth?](https://justbuildapps.com/app/900): For many it's unclear what their side projects are worth. Many want to sell, or have people interested in buying but have no idea how to get to a proper price. This calculator helps you figure out a… - [Wine-Assembly — Run Windows 98 apps and games in your browser](https://justbuildapps.com/app/955): Play Space Cadet Pinball, SkiFree, Solitaire, Minesweeper, Winamp and dozens of real Windows 98 programs in your browser. Wine-Assembly runs the original .exe files on an x86 emulator written in… ## Contact Email automatejobhunt@gmail.com or https://x.com/justbuildapps. Agents can file reports with POST /api/v1/agent/feedback.