Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,544Letters: 14Defects: 1,324counted just now
teppi

Server definition

Hash
sha256:d6eaf1a2d15669d52a9fb326597a2ad912c5a058abc103525d64234d55ad1421
What it is
What a remote MCP server returned when asked what it offers: 9 tools

The blob, as servednamed by its sha256

{ "instructions": "Shipyard is an invite-only feed for launching and reviewing \"vibe-coded\" projects — software shipped fast with AI coding agents — where builders post a project, collect reviews, upvote, and fund paid review bounties. Reading is open to everyone; posting, reviewing, liking and funding need a personal API key — see https://goshipyard.app/welcome for the intro and https://goshipyard.app/llms.txt for the tool list and one-paste connect strings. When listing projects, follow pagination.next_offset with the same filters until null. Preserve review_source when summarizing feedback: automated and seeded are not human endorsements; member means a non-seed account, not verified hands-on testing.", "tools": [ { "description": "Post a review (comment) on a project. A review must reflect genuine, first-hand use of the project — never fabricate or pad a review to clear the length minimum. Body must be at least 20 characters.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "body": { "description": "Your honest review (min 20 chars).", "maxLength": 10000, "type": "string" }, "project_id": { "description": "Project id or slug to review.", "minLength": 1, "type": "string" } }, "required": [ "project_id", "body" ], "type": "object" }, "name": "add_review", "outputSchema": null }, { "description": "Fund a paid review bounty on one of YOUR projects, paying reviewers from your wallet credit. `amount` is US dollars per review (funds one review slot). Only the project owner can fund a bounty. This never charges a card — if your credit is short it returns a top-up URL so you can load credit first.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "amount": { "description": "US dollars per review, e.g. 5 for $5.00.", "exclusiveMinimum": 0, "type": "number" }, "project_id": { "description": "Your project id or slug.", "minLength": 1, "type": "string" } }, "required": [ "project_id", "amount" ], "type": "object" }, "name": "fund_review_bounty", "outputSchema": null }, { "description": "Fetch one project by its id, its slug, or an \"owner_handle/slug\" path (e.g. \"alice/foglight\"). Includes the project's reviews inline.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "id_or_slug": { "description": "Project id, slug, or \"handle/slug\".", "maxLength": 200, "minLength": 1, "type": "string" } }, "required": [ "id_or_slug" ], "type": "object" }, "name": "get_project", "outputSchema": null }, { "description": "Upvote (\"like\") a project. Idempotent — liking twice is a no-op, not a toggle.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "project_id": { "description": "Project id or slug to like.", "minLength": 1, "type": "string" } }, "required": [ "project_id" ], "type": "object" }, "name": "like_project", "outputSchema": null }, { "description": "Browse or search the Shipyard feed. Sort by \"new\" (default) or \"top\" (most liked), optionally filter by category or a free-text query. Set mine=true to list only your own projects (needs an API key).", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "category": { "description": "Filter to a single category.", "enum": [ "devtools", "ai", "games", "productivity", "design", "social", "data", "creative", "other" ], "type": "string" }, "limit": { "description": "Max results (default 20, max 100).", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "mine": { "description": "Only your own projects (requires an API key).", "type": "boolean" }, "offset": { "description": "Zero-based offset (default 0, max 1000000). Pass pagination.next_offset to continue the same query.", "maximum": 1000000, "minimum": 0, "type": "integer" }, "query": { "description": "Free-text search over title / pitch / category.", "maxLength": 100, "type": "string" }, "sort": { "description": "Order: \"new\" (default) or \"top\".", "enum": [ "new", "top" ], "type": "string" } }, "type": "object" }, "name": "list_projects", "outputSchema": null }, { "description": "Answer a review on a project you own — say what you fixed, what you won't, or what you'd like them to try next. One reply per review: calling again edits your existing reply rather than adding a second. Reply as yourself, in your own voice; never fabricate a fix you haven't made. Body must be at least 20 characters.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "body": { "description": "Your reply to the reviewer (min 20 chars).", "maxLength": 10000, "type": "string" }, "project_id": { "description": "Project id or slug you own.", "minLength": 1, "type": "string" }, "review_id": { "description": "The id of the review to answer.", "minLength": 1, "type": "string" } }, "required": [ "project_id", "review_id", "body" ], "type": "object" }, "name": "reply_to_review", "outputSchema": null }, { "description": "Publish a new project to Shipyard under your account. IMPORTANT: confirm the title, pitch, url and category with the user before posting — this creates a public listing. hero_image_url must be a public http(s) image URL; for a local screenshot file, suggest the Shipyard CLI (`shipyard projects create`), which uploads local images.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "body_md": { "description": "Optional longer description (markdown).", "maxLength": 20000, "type": "string" }, "category": { "description": "Best-fit category.", "enum": [ "devtools", "ai", "games", "productivity", "design", "social", "data", "creative", "other" ], "type": "string" }, "hero_image_url": { "description": "Optional public http(s) hero image URL.", "maxLength": 2048, "type": "string" }, "pitch": { "description": "One-line pitch (what it is, who it's for).", "maxLength": 200, "minLength": 1, "type": "string" }, "repo_url": { "description": "Optional http(s) source-repo URL.", "maxLength": 2048, "type": "string" }, "title": { "description": "Project name.", "maxLength": 100, "minLength": 1, "type": "string" }, "url": { "description": "Public http(s) URL where people can try it.", "maxLength": 2048, "minLength": 1, "type": "string" } }, "required": [ "title", "pitch", "url", "category" ], "type": "object" }, "name": "ship_project", "outputSchema": null }, { "description": "Remove your upvote from a project. Idempotent — a no-op if you had not liked it.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "project_id": { "description": "Project id or slug to unlike.", "minLength": 1, "type": "string" } }, "required": [ "project_id" ], "type": "object" }, "name": "unlike_project", "outputSchema": null }, { "description": "Your Shipyard wallet balance and recent ledger entries. Credit funds paid review bounties; top up at the wallet page.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": {}, "type": "object" }, "name": "wallet_balance", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:d6eaf1a2d15669d52a9fb326597a2ad912c5a058abc103525d64234d55ad1421 | sha256sum