Koskamo

Toolfound MCP

An official MCP server for Toolfound that allows AI agents to search the software directory, retrieve product details and alternatives, view trending items, and manage the product launch lifecycle including submission, ownership verification, status tracking, and claiming listings.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

Toolfound MCP logo, by ToolfoundVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-07Operated by Toolfound
MCP endpoint (Streamable HTTP)
https://toolfound.com/api/mcp
Vendor documentation

What its tools do

32 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.

32 of 32 have a description · 18 of 32 declare behavior hints · 14 of 31 with parameters document them all

Checks and signals

Each line is separate evidence, not a trust score.

  • Passed Endpoint answered the live check ·
  • Passed Official MCP Registry namespace is tied to toolfound.com ·
  • Passed Endpoint is on the registry namespace domain ·
  • Availability 1 of 1 checks passed in 30 days

What you can do with it

  • Search the tool index by keyword or category
  • Submit a product for launch and verify ownership
  • Retrieve trending products and alternatives
  • Claim an existing product listing

Source and maintenance

Vendor evidenceRegistry 1.0.0

Protocol and capabilities

Server
toolfound 1.0.0
MCP protocol negotiated in check
2025-11-25
Tools
32 advertised
Resources
1 advertised
Resource templates
0 advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": true
  },
  "resources": {
    "listChanged": true
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

toolfound.com is a launch platform + tool directory where the entire launch lifecycle is agent-native: search the directory, submit a product, verify ownership, track the transparent launch queue, claim listings, and fetch embed badges, all through these tools. All 16 read-only tools (directory discovery plus deterministic launch helpers, task matching, and public-link inspection) need no auth. Some attributed catalogue/network reads can still be rate-limited or unavailable. Write tools use an email-verification loop: ownership verification is mandatory before any launch is queued (DNS TXT, meta tag, or email magic link). Unverified submissions purge after 14 days. Launching is permanently free. In toolfound_get_launch_calendar, free_launch_slots_remaining is a deprecated legacy counter: it is not a limit on free launches and does not describe current launch-date availability. Use calendar[].slots_open for date capacity. Queue position and launch date are always shown transparently. Rate limits: 3 submissions per email per day, 10 per IP per day.

Tools

32 advertised

toolfound_directory_matcher — Launch directory matcher
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

toolfound_directory_matcher input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "segment",
    "cost",
    "launchModel",
    "dofollow"
  ],
  "properties": {
    "cost": {
      "enum": [
        "any",
        "free",
        "paid",
        "unknown"
      ],
      "type": "string"
    },
    "segment": {
      "enum": [
        "any",
        "b2b-saas",
        "ai-tools",
        "dev-tools",
        "side-projects",
        "ai-directories",
        "mcp-registries",
        "high-authority"
      ],
      "type": "string"
    },
    "dofollow": {
      "enum": [
        "any",
        "yes",
        "no",
        "conditional",
        "unknown"
      ],
      "type": "string"
    },
    "launchModel": {
      "enum": [
        "any",
        "daily-ranking",
        "weekly-ranking",
        "monthly-ranking",
        "evergreen-listing",
        "community",
        "review-site",
        "deal-marketplace",
        "database",
        "newsletter",
        "unknown"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
toolfound_directory_matcher output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_directory_matcher annotations
{
  "title": "Launch directory matcher",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_launch_readiness — Launch readiness checklist
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

toolfound_launch_readiness input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 200
    },
    "logoURL": {
      "type": "string",
      "format": "uri",
      "maxLength": 2000
    },
    "tagline": {
      "type": "string",
      "maxLength": 200
    },
    "websiteUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 2000
    },
    "description": {
      "type": "string",
      "maxLength": 5000
    }
  },
  "additionalProperties": false
}
toolfound_launch_readiness output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_launch_readiness annotations
{
  "title": "Launch readiness checklist",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_campaign_links — Campaign link builder
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

toolfound_campaign_links input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "websiteUrl",
    "source",
    "medium",
    "campaign"
  ],
  "properties": {
    "medium": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "source": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "content": {
      "type": "string",
      "maxLength": 100
    },
    "campaign": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1
    },
    "websiteUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 2000
    }
  },
  "additionalProperties": false
}
toolfound_campaign_links output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_campaign_links annotations
{
  "title": "Campaign link builder",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_listing_copy — Listing copy worksheet
Advertised by the server during the last successful anonymous check.
Advertised read-only

Turn supplied product facts into deterministic, editable listing copy without inventing claims. Returns an evidence-bounded result and the canonical web tool URL.

toolfound_listing_copy input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "name",
    "audience",
    "problem",
    "outcome"
  ],
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1
    },
    "outcome": {
      "type": "string",
      "maxLength": 5000,
      "minLength": 1
    },
    "problem": {
      "type": "string",
      "maxLength": 5000,
      "minLength": 1
    },
    "audience": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1
    },
    "differentiator": {
      "type": "string",
      "maxLength": 5000
    }
  },
  "additionalProperties": false
}
toolfound_listing_copy output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_listing_copy annotations
{
  "title": "Listing copy worksheet",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_share_preview — Share image preview
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

toolfound_share_preview input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "name",
    "tagline"
  ],
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1
    },
    "tagline": {
      "type": "string",
      "maxLength": 180,
      "minLength": 1
    }
  },
  "additionalProperties": false
}
toolfound_share_preview output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_share_preview annotations
{
  "title": "Share image preview",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_newsletter_readiness — Newsletter pitch readiness
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

toolfound_newsletter_readiness input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 200
    },
    "logoURL": {
      "type": "string",
      "format": "uri",
      "maxLength": 2000
    },
    "audience": {
      "type": "string",
      "maxLength": 200
    },
    "newsAngle": {
      "type": "string",
      "maxLength": 5000
    },
    "websiteUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 2000
    }
  },
  "additionalProperties": false
}
toolfound_newsletter_readiness output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_newsletter_readiness annotations
{
  "title": "Newsletter pitch readiness",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_distribution_plan — Launch distribution timetable
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

toolfound_distribution_plan input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "launchDate",
    "channels"
  ],
  "properties": {
    "channels": {
      "type": "string",
      "maxLength": 1000,
      "minLength": 1
    },
    "launchDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    }
  },
  "additionalProperties": false
}
toolfound_distribution_plan output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_distribution_plan annotations
{
  "title": "Launch distribution timetable",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_launch_review — Launch results review
Advertised by the server during the last successful anonymous check.
Advertised read-only

Calculate transparent signup and conversion rates from the non-negative counts you provide. Returns an evidence-bounded result and the canonical web tool URL.

toolfound_launch_review input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "visits",
    "signups"
  ],
  "properties": {
    "visits": {
      "type": "integer",
      "maximum": 9007199254740991,
      "minimum": 0
    },
    "signups": {
      "type": "integer",
      "maximum": 9007199254740991,
      "minimum": 0
    },
    "conversions": {
      "type": "integer",
      "maximum": 9007199254740991,
      "minimum": 0
    }
  },
  "additionalProperties": false
}
toolfound_launch_review output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_launch_review annotations
{
  "title": "Launch results review",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_sponsorship_break_even — Newsletter sponsorship break-even calculator
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

toolfound_sponsorship_break_even input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "cost",
    "revenue",
    "margin",
    "signupRate",
    "customerRate"
  ],
  "properties": {
    "cost": {
      "type": "string"
    },
    "margin": {
      "type": "string"
    },
    "revenue": {
      "type": "string"
    },
    "signupRate": {
      "type": "string"
    },
    "customerRate": {
      "type": "string"
    }
  },
  "additionalProperties": false
}
toolfound_sponsorship_break_even output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_sponsorship_break_even annotations
{
  "title": "Newsletter sponsorship break-even calculator",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_software_cost_comparison — Software cost comparison
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

toolfound_software_cost_comparison input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "seats",
    "aName",
    "aPrice",
    "aBilling",
    "bName",
    "bPrice",
    "bBilling"
  ],
  "properties": {
    "aName": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1
    },
    "bName": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1
    },
    "seats": {
      "type": "string"
    },
    "aPrice": {
      "type": "string"
    },
    "aSetup": {
      "type": "string"
    },
    "aUsage": {
      "type": "string"
    },
    "bPrice": {
      "type": "string"
    },
    "bSetup": {
      "type": "string"
    },
    "bUsage": {
      "type": "string"
    },
    "aBilling": {
      "enum": [
        "monthly",
        "annual",
        "one-time"
      ],
      "type": "string"
    },
    "bBilling": {
      "enum": [
        "monthly",
        "annual",
        "one-time"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
toolfound_software_cost_comparison output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_software_cost_comparison annotations
{
  "title": "Software cost comparison",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_relaunch_decision — Relaunch decision checker
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

toolfound_relaunch_decision input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "change",
    "audienceChanged",
    "listingCurrent",
    "evidence",
    "measurementReady"
  ],
  "properties": {
    "change": {
      "enum": [
        "small",
        "major",
        "direction"
      ],
      "type": "string"
    },
    "evidence": {
      "enum": [
        "strong",
        "release",
        "none"
      ],
      "type": "string"
    },
    "listingCurrent": {
      "enum": [
        "yes",
        "no"
      ],
      "type": "string"
    },
    "audienceChanged": {
      "enum": [
        "yes",
        "no"
      ],
      "type": "string"
    },
    "measurementReady": {
      "enum": [
        "yes",
        "no"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
toolfound_relaunch_decision output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_relaunch_decision annotations
{
  "title": "Relaunch decision checker",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_feedback_interview_planner — Customer feedback interview planner
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

toolfound_feedback_interview_planner input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "goal",
    "participants",
    "minutes",
    "stage"
  ],
  "properties": {
    "goal": {
      "type": "string",
      "maxLength": 300,
      "minLength": 12
    },
    "stage": {
      "enum": [
        "evaluating",
        "new",
        "active",
        "churned"
      ],
      "type": "string"
    },
    "minutes": {
      "type": "string"
    },
    "participants": {
      "type": "string"
    }
  },
  "additionalProperties": false
}
toolfound_feedback_interview_planner output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_feedback_interview_planner annotations
{
  "title": "Customer feedback interview planner",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_json_to_csv — JSON to CSV for launch exports
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

toolfound_json_to_csv input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "json"
  ],
  "properties": {
    "json": {
      "type": "string",
      "maxLength": 12000
    }
  },
  "additionalProperties": false
}
toolfound_json_to_csv output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_json_to_csv annotations
{
  "title": "JSON to CSV for launch exports",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_csv_deduplicator — Remove duplicate CSV rows
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

toolfound_csv_deduplicator input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "csv"
  ],
  "properties": {
    "csv": {
      "type": "string",
      "maxLength": 12000
    }
  },
  "additionalProperties": false
}
toolfound_csv_deduplicator output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_csv_deduplicator annotations
{
  "title": "Remove duplicate CSV rows",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_campaign_url_cleaner — Campaign URL cleaner
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

toolfound_campaign_url_cleaner input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "url",
    "mode"
  ],
  "properties": {
    "url": {
      "type": "string",
      "maxLength": 2000
    },
    "mode": {
      "enum": [
        "normalize",
        "remove"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
toolfound_campaign_url_cleaner output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_campaign_url_cleaner annotations
{
  "title": "Campaign URL cleaner",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_color_contrast — Launch page color contrast checker
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

toolfound_color_contrast input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "foreground",
    "background"
  ],
  "properties": {
    "background": {
      "type": "string",
      "maxLength": 7
    },
    "foreground": {
      "type": "string",
      "maxLength": 7
    }
  },
  "additionalProperties": false
}
toolfound_color_contrast output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sections",
    "links",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "data": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "links": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "label",
          "url"
        ],
        "properties": {
          "url": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "summary": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "heading",
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heading": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_color_contrast annotations
{
  "title": "Launch page color contrast checker",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_find_by_task — Find public tools by task
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Match a bounded task description against public Toolfound catalogue evidence. Results are not personal recommendations and unknown capabilities remain unknown.

toolfound_find_by_task input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "task"
  ],
  "properties": {
    "task": {
      "type": "string",
      "maxLength": 500,
      "minLength": 1
    },
    "pricing": {
      "enum": [
        "any",
        "free",
        "free_or_freemium"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
toolfound_find_by_task output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "query",
    "matches",
    "warnings",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "error": {
      "type": "string"
    },
    "query": {
      "type": "string"
    },
    "matches": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "slug",
          "name",
          "tagline",
          "listing_url",
          "pricing_model",
          "matching_terms",
          "limitations"
        ],
        "properties": {
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "tagline": {
            "type": "string"
          },
          "limitations": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "listing_url": {
            "type": "string",
            "format": "uri"
          },
          "pricing_model": {
            "enum": [
              "free",
              "freemium",
              "trial",
              "paid",
              "unknown"
            ],
            "type": "string"
          },
          "matching_terms": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      }
    },
    "warnings": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_find_by_task annotations
{
  "title": "Find public tools by task",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_inspect_public_link — Inspect a link on a public page
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

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.

toolfound_inspect_public_link input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "sourceUrl",
    "targetUrl"
  ],
  "properties": {
    "sourceUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 2000,
      "description": "Public HTTPS page whose fetched HTML is inspected."
    },
    "targetUrl": {
      "type": "string",
      "format": "uri",
      "maxLength": 2000,
      "description": "Public HTTPS destination to match exactly, ignoring fragments."
    }
  },
  "additionalProperties": false
}
toolfound_inspect_public_link output schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "ok",
    "summary",
    "sourceUrl",
    "targetUrl",
    "fetchedAt",
    "fetch",
    "evidence",
    "canonical_result_url"
  ],
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string"
        },
        "field": {
          "enum": [
            "sourceUrl",
            "targetUrl"
          ],
          "type": "string"
        },
        "message": {
          "type": "string"
        }
      },
      "additionalProperties": false
    },
    "fetch": {
      "type": "object",
      "required": [
        "status",
        "redirectHistory",
        "note"
      ],
      "properties": {
        "note": {
          "type": "string"
        },
        "status": {
          "enum": [
            "fetched",
            "failed",
            "rejected"
          ],
          "type": "string"
        },
        "redirectHistory": {
          "type": "string",
          "const": "unobserved"
        }
      },
      "additionalProperties": false
    },
    "summary": {
      "type": "string"
    },
    "evidence": {
      "type": "object",
      "required": [
        "found",
        "matchingLinkCount",
        "links"
      ],
      "properties": {
        "found": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "href",
              "resolvedUrl",
              "anchorText",
              "rel",
              "nofollow",
              "sponsored",
              "ugc"
            ],
            "properties": {
              "rel": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "ugc": {
                "type": "boolean"
              },
              "href": {
                "type": "string"
              },
              "nofollow": {
                "type": "boolean"
              },
              "sponsored": {
                "type": "boolean"
              },
              "anchorText": {
                "type": "string"
              },
              "resolvedUrl": {
                "type": "string"
              }
            },
            "additionalProperties": false
          }
        },
        "matchingLinkCount": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0
        }
      },
      "additionalProperties": false
    },
    "fetchedAt": {
      "type": "string"
    },
    "sourceUrl": {
      "type": "string"
    },
    "targetUrl": {
      "type": "string"
    },
    "canonical_result_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "additionalProperties": false
}
toolfound_inspect_public_link annotations
{
  "title": "Inspect a link on a public page",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}
toolfound_search_tools — Search the Toolfound directory
Advertised by the server during the last successful anonymous check.

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.

toolfound_search_tools input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "query"
  ],
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1,
      "description": "Free-text search: product name, problem, or tag (e.g. 'invoicing', 'screenshot api')."
    }
  }
}
toolfound_get_product — Get a product listing
Advertised by the server during the last successful anonymous check.

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.

toolfound_get_product input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "slug"
  ],
  "properties": {
    "slug": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1,
      "description": "The product slug, e.g. 'acme-analytics' (from search results or the listing URL)."
    }
  }
}
toolfound_get_alternatives — Get alternatives to a product
Advertised by the server during the last successful anonymous check.

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.

toolfound_get_alternatives input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "slug"
  ],
  "properties": {
    "slug": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1,
      "description": "Slug of the product to find alternatives for."
    }
  }
}
toolfound_get_trending — Get trending launches
Advertised by the server during the last successful anonymous check.

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.

toolfound_get_trending input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "period"
  ],
  "properties": {
    "period": {
      "enum": [
        "day",
        "week",
        "month"
      ],
      "type": "string",
      "description": "Leaderboard window: day, week, or month."
    }
  }
}
toolfound_get_verified_board — Get a verified data board
Advertised by the server during the last successful anonymous check.

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.

toolfound_get_verified_board input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "board"
  ],
  "properties": {
    "board": {
      "enum": [
        "revenue",
        "stars",
        "rated"
      ],
      "type": "string",
      "description": "Which board: revenue, stars or rated."
    }
  }
}
toolfound_list_categories — List directory categories
Advertised by the server during the last successful anonymous check.

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.

toolfound_list_categories input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {}
}
toolfound_get_launch_calendar — Get the launch calendar
Advertised by the server during the last successful anonymous check.

The upcoming Toolfound launch calendar with seat availability per date. The free queue cap is 5 launches a day. Featured seats are a smaller per-day limit and are not increased with that cap. The response shows featured seats vs how many are already taken, 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.

toolfound_get_launch_calendar input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "horizon_days": {
      "type": "integer",
      "maximum": 180,
      "minimum": 1,
      "description": "How many days ahead to return (default 30, max 180)."
    }
  }
}
toolfound_submit_product — Submit a product for launch
Advertised by the server during the last successful anonymous check.

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).

toolfound_submit_product input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "url",
    "email"
  ],
  "properties": {
    "url": {
      "type": "string",
      "maxLength": 500,
      "minLength": 4,
      "description": "The product's public https URL (e.g. https://yourproduct.com)."
    },
    "name": {
      "type": "string",
      "maxLength": 120,
      "minLength": 1,
      "description": "Product name (optional — drafted from the site if omitted)."
    },
    "email": {
      "type": "string",
      "format": "email",
      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
      "maxLength": 254,
      "description": "Maker's email — receives the verification link, queue updates, and launch results."
    },
    "tagline": {
      "type": "string",
      "maxLength": 200,
      "minLength": 1,
      "description": "One-line tagline (optional)."
    },
    "logo_url": {
      "type": "string",
      "maxLength": 2000,
      "minLength": 1,
      "description": "Direct public URL for the product's real logo (PNG, JPG, GIF or WebP; max 2MB). Optional; defaults to the site's icon."
    },
    "x_handle": {
      "type": "string",
      "maxLength": 120,
      "description": "The maker's X (Twitter) handle, e.g. @yourproduct (optional). Shown on the listing. If the listing wins that UTC day, @toolfoundcom tags this handle the next morning. We do not tag every launch."
    },
    "price_usd": {
      "type": "number",
      "maximum": 1000000,
      "minimum": 0,
      "description": "Optional starting price in USD (e.g. the cheapest paid plan). Only used when pricing_model is 'paid', 'freemium', or 'trial'."
    },
    "description": {
      "type": "string",
      "maxLength": 5000,
      "minLength": 1,
      "description": "Longer description (optional — you can edit later)."
    },
    "pricing_model": {
      "enum": [
        "free",
        "freemium",
        "trial",
        "paid",
        "unknown"
      ],
      "type": "string",
      "description": "The product's pricing model (optional, but strongly recommended — captured now instead of after claim so the listing never sits at 'Pricing unlisted')."
    },
    "founder_x_handle": {
      "type": "string",
      "maxLength": 120,
      "description": "Founder's X handle, shown on the listing and tagged if the launch tops its day"
    },
    "preferred_launch_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Preferred launch date, YYYY-MM-DD (optional). Must be within the next 180 days. Free launches cannot take today or tomorrow: a date earlier than the next free date is moved to it (a later date is honoured). Use toolfound_get_launch_calendar to find open seats. If that day is full by the time you verify, the earliest open day is assigned and reported. Omit to get the earliest open date automatically."
    }
  }
}
toolfound_check_verification — Check verification status (dry run)
Advertised by the server during the last successful anonymous check.

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.

toolfound_check_verification input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "token"
  ],
  "properties": {
    "token": {
      "type": "string",
      "maxLength": 200,
      "minLength": 8,
      "description": "The verify_token returned by toolfound_submit_product."
    }
  }
}
toolfound_verify_submission — Verify a submission
Advertised by the server during the last successful anonymous check.

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.

toolfound_verify_submission input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "token"
  ],
  "properties": {
    "token": {
      "type": "string",
      "maxLength": 200,
      "minLength": 8,
      "description": "The verification token from your submission email or verification snippet."
    }
  }
}
toolfound_get_launch_status — Get launch status
Advertised by the server during the last successful anonymous check.

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.

toolfound_get_launch_status input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "url": {
      "type": "string",
      "maxLength": 500,
      "minLength": 4,
      "description": "Or the product URL you submitted."
    },
    "submission_id": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1,
      "description": "The submission id returned by toolfound_submit_product."
    }
  }
}
toolfound_claim_listing — Claim a listing
Advertised by the server during the last successful anonymous check.

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.

toolfound_claim_listing input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "slug",
    "email"
  ],
  "properties": {
    "slug": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1,
      "description": "Slug of the listing to claim."
    },
    "email": {
      "type": "string",
      "format": "email",
      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
      "maxLength": 254,
      "description": "Your email — ideally at the product's own domain — receives the claim magic link."
    }
  }
}
toolfound_relaunch — Relaunch a listing
Advertised by the server during the last successful anonymous check.

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.

toolfound_relaunch input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "slug",
    "email",
    "note"
  ],
  "properties": {
    "note": {
      "type": "string",
      "maxLength": 200,
      "minLength": 10,
      "description": "Required: one line about what changed since the original launch (10-200 characters). Shown publicly on the listing page."
    },
    "slug": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1,
      "description": "Slug of the listing to relaunch."
    },
    "email": {
      "type": "string",
      "format": "email",
      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
      "maxLength": 254,
      "description": "Claimed-owner email. The relaunch must still be authorized from its verified dashboard session."
    },
    "requested_launch_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Preferred new launch date, YYYY-MM-DD, within the next 180 days. Use toolfound_get_launch_calendar to find open featured seats. Falls back to the earliest open day if omitted or full."
    }
  }
}
toolfound_get_badge — Get embed badges
Advertised by the server during the last successful anonymous check.

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.

toolfound_get_badge input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "slug"
  ],
  "properties": {
    "slug": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1,
      "description": "Slug of the listing to get badges for."
    }
  }
}

Prompts

Not advertised

No prompt definitions available.

Resources

1 advertised

toolfound-toolkit-workflows — Toolfound toolkit workflows

Advertised by the server during the last successful anonymous check.

Read-only workflows and canonical Toolfound URLs for discovery, launch preparation, measurement, and public-link inspection.

toolfound-toolkit-workflows URI
https://toolfound.com/mcp/resources/toolkit-workflows

MIME type: text/markdown

90-day uptime

A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.

Too few checks for a percentage yet (1 of 1 answered).

  1. 2026-11-07: 1 of 1 checks answered

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
991 ms
95th percentile latency
991 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 991 ms · metadata changed · 32 tool(s), 1 resource(s), 0 resource template(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http toolfound-mcp https://toolfound.com/api/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add toolfound-mcp --url https://toolfound.com/api/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable toolfound-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "toolfound-mcp": {
      "url": "https://toolfound.com/api/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "toolfound-mcp": {
      "type": "streamableHttp",
      "url": "https://toolfound.com/api/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start toolfound-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "toolfound-mcp": {
      "type": "http",
      "url": "https://toolfound.com/api/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http toolfound-mcp https://toolfound.com/api/mcp

Claude Desktop

Open Claude Settings > Connectors > Add custom connector, enter this server URL and enable it for the conversation. This is a manual remote-connector handoff, not a desktop JSON configuration.
Claude Desktop configuration
https://toolfound.com/api/mcp

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "toolfound-mcp": {
      "serverUrl": "https://toolfound.com/api/mcp"
    }
  }
}

Let your agent find its tools

Find servers like Toolfound MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run Toolfound MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing