{"server":{"name":"com.toolfound/toolfound","title":"toolfound","$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","remotes":[{"url":"https://toolfound.com/api/mcp","type":"streamable-http"}],"version":"1.0.0","websiteUrl":"https://toolfound.com","description":"Agent-native launch platform and tool directory: search, alternatives, trending, launch via MCP."},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","isLatest":true,"updatedAt":"2026-08-09T01:12:25.222561Z","publishedAt":"2026-08-09T01:12:25.222561Z","statusChangedAt":"2026-08-09T01:12:25.222561Z"},"dev.protogrid/connectability":{"class":"R0","autonomous":true,"human_steps":[],"preferred":{"kind":"remote","idx":0},"remotes":[{"idx":0,"url":"https://toolfound.com/api/mcp","transport":"streamable-http","templated":false,"headers":[],"auth":{"type":"none","location":null,"secret_name":null,"oauth":null},"protocol":{"supported_versions":["2026-07-28"],"stateless":true},"health":{"reachable":true,"uptime_30d":0.9649123,"latency_ms_p50":293,"consecutive_failures":0,"last_probe_at":"2026-10-19T18:10:21.310Z","last_ok_at":"2026-10-19T18:10:21.310Z"}}],"packages":[]},"dev.protogrid/tools":[{"name":"toolfound_campaign_links","title":"Campaign link builder","description":"Create one deterministic UTM link while retaining unrelated query parameters and the page anchor. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Campaign link builder","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_campaign_url_cleaner","title":"Campaign URL cleaner","description":"Normalize UTM naming or remove standard utm_* campaign parameters (utm_source, utm_medium, utm_campaign and similar) from a supplied URL without visiting its destination. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Campaign URL cleaner","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_check_verification","title":"Check verification status (dry run)","description":"Non-destructive dry run of ownership verification for a Toolfound submission: reports, per method, what the checker sees RIGHT NOW — meta tag found or not (with the exact expected tag), DNS TXT found or not (with the exact expected record), and whether the submission email qualifies for the magic-link path. Use it to distinguish 'my deploy is not live yet' from 'wrong token' before calling toolfound_verify_submission. Changes nothing.","annotations":null,"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_claim_listing","title":"Claim a listing","description":"Claim an existing Toolfound listing as the product's owner (free). Claiming requires ownership verification — a magic link is sent to the email you provide (use an address at the product's domain), and meta-tag / DNS TXT verification also works. Claimed listings unlock editing, badges, analytics, and the optional open-to-acquisition flag.","annotations":null,"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_color_contrast","title":"Launch page color contrast checker","description":"Calculate the WCAG text contrast ratio for two opaque hex colors before shipping a landing page or launch graphic. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Launch page color contrast checker","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_csv_deduplicator","title":"Remove duplicate CSV rows","description":"Clean repeated campaign or listing-export rows while retaining the first exact match and showing how many rows changed. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Remove duplicate CSV rows","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_directory_matcher","title":"Launch directory matcher","description":"Filter the dated launch-directory evidence by product fit, cost, format, and link policy. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Launch directory matcher","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_distribution_plan","title":"Launch distribution timetable","description":"Turn a launch date and up to eight chosen channels into a bounded preparation timetable. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Launch distribution timetable","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_feedback_interview_planner","title":"Customer feedback interview planner","description":"Create a bounded interview plan and evidence log from a learning goal, participant count, and available time. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Customer feedback interview planner","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_find_by_task","title":"Find public tools by task","description":"Match a bounded task description against public Toolfound catalogue evidence. Results are not personal recommendations and unknown capabilities remain unknown.","annotations":{"title":"Find public tools by task","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_get_alternatives","title":"Get alternatives to a product","description":"List alternatives to a given product on Toolfound — tools in the same primary category, ranked by points (community votes plus an AI listing score). Useful for 'alternatives to X' and comparison questions. Each result includes tagline, pricing model, votes, and a canonical listing URL.","annotations":null,"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_get_badge","title":"Get embed badges","description":"Get the three copy-paste badge embed snippets for a Toolfound listing ('live on Toolfound', 'verified', 'top 3 this week' variants). Badges are optional and earned — they deep-link to the listing with varied anchor text, and the embedder chooses the rel attribute freely. Listing status is never conditioned on embedding a badge.","annotations":null,"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_get_launch_calendar","title":"Get the launch calendar","description":"The upcoming Toolfound launch calendar with seat availability per date: featured seats (a scarce, limited number per day) vs how many are already taken, plus the total daily cap and how many launches are queued, over a horizon you choose (default 30 days, up to 180). Launching is permanently free. Toolfound shows availability openly — no hidden queues. Use this to pick a launch date before submitting: pass preferred_launch_date to toolfound_submit_product to request a specific day.","annotations":null,"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_get_launch_status","title":"Get launch status","description":"Check the status of a Toolfound submission by submission id or product URL: current state (pending verification, queued, launched), transparent queue position, assigned launch date, and the listing URL once live. Toolfound never hides queue state — what this returns is exactly what everyone sees.","annotations":null,"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_get_product","title":"Get a product listing","description":"Fetch the full Toolfound listing for a product by slug: description, tagline, pricing model, tags, socials, vote count, launch date, ownership-verification status, and the canonical listing URL. Every launched listing on Toolfound is ownership-verified by its maker (DNS TXT, meta tag, or domain email). Includes the top alternatives in the same category. Adds verified_metrics when Toolfound has fetched fresh data for the listing.","annotations":null,"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_get_trending","title":"Get trending launches","description":"The Toolfound leaderboard: top products launched in the last day, week, or month, ranked by points (community votes plus an AI listing score). Toolfound is a launch platform with a transparent queue — every product here launched publicly on an assigned date and is ownership-verified. Great for 'what launched recently' and 'trending tools' questions.","annotations":null,"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_get_verified_board","title":"Get a verified data board","description":"Boards of listings ranked by data Toolfound fetched itself within the last 7 days: revenue band via Stripe, GitHub stars, or App Store rating. A board is visible only once at least 10 listings have data of that kind; otherwise it returns visible false and no entries.","annotations":null,"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_inspect_public_link","title":"Inspect a link on a public page","description":"Safely fetch one public HTTPS source page and report matching anchor markup for a public HTTPS target, including observed rel tokens. This does not establish indexing, crawler treatment, or ranking impact. Redirect history is reported as unobserved.","annotations":{"title":"Inspect a link on a public page","readOnlyHint":true,"openWorldHint":true,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_json_to_csv","title":"JSON to CSV for launch exports","description":"Convert a small flat JSON export into a downloadable spreadsheet, with explicit limits and formula protection. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"JSON to CSV for launch exports","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_launch_readiness","title":"Launch readiness checklist","description":"Check whether an editable product draft has the fields needed for a complete directory submission. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Launch readiness checklist","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_launch_review","title":"Launch results review","description":"Calculate transparent signup and conversion rates from the non-negative counts you provide. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Launch results review","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_list_categories","title":"List directory categories","description":"List every category in the Toolfound directory with product counts and curated intros. Use this to browse the index or to map a user's need to the right category before searching.","annotations":null,"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_listing_copy","title":"Listing copy worksheet","description":"Turn supplied product facts into deterministic, editable listing copy without inventing claims. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Listing copy worksheet","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_newsletter_readiness","title":"Newsletter pitch readiness","description":"Build an honest pitch checklist from the materials editors usually need before they can review a launch. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Newsletter pitch readiness","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_relaunch","title":"Relaunch a listing","description":"Relaunch an already-launched Toolfound listing: same listing, same URL, a new launch date shown alongside the old one. Relaunch requires a fresh verified-owner session, so this anonymous MCP transport reports the eligibility result but directs owners to the dashboard to authorize the write.","annotations":null,"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_relaunch_decision","title":"Relaunch decision checker","description":"Choose between a relaunch, a regular update, or more preparation from the size of the change and launch evidence you provide. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Relaunch decision checker","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_search_tools","title":"Search the Toolfound directory","description":"Search toolfound.com — the launch platform and tool directory built agent-first — for SaaS products and developer tools by name, tagline, or tag. Returns matching products with taglines, pricing model, vote counts, and canonical listing URLs you can cite or open. Use this when a user asks to find, compare, or discover a tool for a job.","annotations":null,"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_share_preview","title":"Share image preview","description":"Export a safe 1200×630 SVG preview from a bounded product name and tagline. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Share image preview","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_software_cost_comparison","title":"Software cost comparison","description":"Normalize two software prices to a first-year cost using seats, billing periods, setup fees, and expected usage charges. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Software cost comparison","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_sponsorship_break_even","title":"Newsletter sponsorship break-even calculator","description":"Estimate the clicks, signups, and customers needed to recover a sponsorship cost from your own funnel assumptions. Returns an evidence-bounded result and the canonical web tool URL.","annotations":{"title":"Newsletter sponsorship break-even calculator","readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_submit_product","title":"Submit a product for launch","description":"Submit a product to launch on toolfound.com — the launch platform where the whole launch runs agent-native, end to end. A logo URL is optional; without one the site's own icon is used. One call returns everything: your submission id, ownership-verification instructions (mandatory — DNS TXT, meta tag, or email magic link), transparent queue position and assigned launch date, and the live free-slots counter (launches are free). AGENTS: you do not need inbox access — the verify_token in this response works with the meta_tag or dns_txt method via toolfound_verify_submission, and toolfound_check_verification dry-runs the checks; the emailed magic link is a human fallback that can also be completed later from the dashboard. Description renders as plain-text paragraphs on the listing page: 100–200 words reads best, and entries over 100 words qualify for search-engine indexing. Resubmitting a known URL returns the existing submission (idempotent).","annotations":null,"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"},{"name":"toolfound_verify_submission","title":"Verify a submission","description":"Complete the mandatory ownership verification for a Toolfound submission using the verification token (from the email magic link, or after placing the meta tag / DNS TXT record on your domain — this call checks them on demand). Verification is what makes Toolfound listings trustworthy: every launched product is confirmed maker-owned. On success your launch is queued at the transparent position and date you were assigned.","annotations":null,"source":"probe","observed_at":"2026-10-19T18:10:21.310Z"}],"dev.protogrid/trust":{"score":79,"components":{"hygiene":80,"liveness":99,"freshness":85,"provenance":55},"drivers":["+dns-namespace","+website","+reachable","+uptime-96%","~updated-72d-ago","-no-repository"],"flags":["no-repository"],"blocked":false,"computed_at":"2026-10-19T20:34:48.945Z","disclaimer":"Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed."},"dev.protogrid/quality":{"score":73,"label":"needs work","components":{"auth":null,"hygiene":86,"protocol":88,"stability":25,"dependencies":null},"checks":[{"id":"protocol.modern","detail":"supports 2026-07-28 (server/discover)","status":"pass","category":"protocol"},{"id":"protocol.stateless","detail":"answers without a session","status":"pass","category":"protocol"},{"id":"protocol.transport","detail":"streamable HTTP","status":"pass","category":"protocol"},{"id":"protocol.list_ttl","detail":"tools/list declares ttlMs 0, so clients re-fetch it on every use","status":"warn","category":"protocol"},{"id":"auth.prm","detail":"no remote uses OAuth","status":"na","category":"auth"},{"id":"auth.as_metadata","detail":"no remote uses OAuth","status":"na","category":"auth"},{"id":"auth.cimd","detail":"no remote uses OAuth","status":"na","category":"auth"},{"id":"auth.secret_in_url","detail":"no templated URL","status":"na","category":"auth"},{"id":"tools.descriptions","detail":"every tool has a description","status":"pass","category":"hygiene"},{"id":"tools.description_length","detail":"descriptions are concise","status":"pass","category":"hygiene"},{"id":"tools.schemas","detail":"every tool has an object input schema","status":"pass","category":"hygiene"},{"id":"tools.annotations","detail":"only 18 of 32 tools declare readOnlyHint or destructiveHint","status":"warn","category":"hygiene"},{"id":"tools.directory_hints","detail":"18 of 32 tools declare all four hints; missing: toolfound_search_tools (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); toolfound_get_product (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); toolfound_submit_product (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …","status":"warn","category":"hygiene"},{"id":"tools.token_cost","detail":"about 6,200 tokens to load every tool","status":"pass","category":"hygiene"},{"id":"tools.api_dump","detail":"tools are not a one-to-one API dump","status":"pass","category":"hygiene"},{"id":"stability.changes","detail":"55 tool changes in 30 days","status":"warn","category":"stability"},{"id":"stability.rug_pull","detail":"1 tools kept their name but changed most of their description in 30 days; review before trusting them","status":"fail","category":"stability"},{"id":"deps.known_vulns","detail":"no npm or PyPI package","status":"na","category":"dependencies"},{"id":"deps.mcp_sdk_version","detail":"no npm or PyPI package","status":"na","category":"dependencies"},{"id":"deps.resolvable","detail":"no npm or PyPI package","status":"na","category":"dependencies"}],"drivers":["-stability.rug_pull","~protocol.list_ttl","~tools.annotations","~tools.directory_hints","~stability.changes"],"flags":[],"tool_count":32,"token_estimate":6200,"tools_hash":"1cd38665fee6c3e105e738f518b721d5","tools_changed_at":"2026-10-11T23:17:48.129Z","computed_at":"2026-10-19T20:38:04.291Z","disclaimer":"Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed."},"dev.protogrid/identity":{"canonical_id":"com.toolfound/toolfound","aliases":[],"alias_count":0,"repository_key":null,"owner":{"verified":false,"method":null,"since":null}}},"next_actions":[{"action":"list_tools","description":"Every current tool with input schemas","href":"/v1/servers/com.toolfound%2Ftoolfound/tools","arguments":{"name":"com.toolfound/toolfound"}},{"action":"get_connection","description":"Minimal connection block for the preferred remote or package","href":"/v1/servers/com.toolfound%2Ftoolfound/connection?target=mcpServers","arguments":{"name":"com.toolfound/toolfound","target":"mcpServers"}},{"action":"search","description":"Find other servers by intent","href":"/v1/search?q={query}","arguments":{"q":"{query}"}}]}