Find developer tools, APIs, MCP servers and SaaS by need, with pricing, free tier and API facts.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Put 2 to 6 products side by side on pricing, free tier, API, MCP, SDK and open source. Returns the full records plus a field-by-field table keyed by slug.
2 to 6 product slugs.
Put 2 to 6 products side by side on pricing, free tier, API, MCP, SDK and open source. Returns the full records plus a field-by-field table keyed by slug.
| Argument | Type | Description |
|---|---|---|
| slugs* | array | 2 to 6 product slugs. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"slugs"
],
"properties": {
"slugs": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 6,
"minItems": 2,
"description": "2 to 6 product slugs."
}
}
}Products similar to a given one (vector similarity), with optional filters. Nearest neighbours of the product's embedding; falls back to the same category when the vector index is unavailable.
| Argument | Type | Description |
|---|---|---|
| slug* | string | Slug of the product to find alternatives to. |
| limit | integer | |
| has_api | boolean | Only products with an API. |
| has_mcp | boolean | Only products that offer an MCP server. |
| category | string | Restrict to one category id (see the toolgrep://categories resource). |
| open_source | boolean | Only open-source products. |
| has_free_tier | boolean | Only products with a free plan or free usage allowance. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"description": "Slug of the product to find alternatives to."
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1
},
"has_api": {
"type": "boolean",
"description": "Only products with an API."
},
"has_mcp": {
"type": "boolean",
"description": "Only products that offer an MCP server."
},
"category": {
"enum": [
"ai-models",
"ai-agents",
"mcp-servers",
"api-platforms",
"auth",
"databases",
"hosting",
"devops",
"observability",
"messaging",
"payments",
"search",
"analytics",
"frontend",
"testing",
"security",
"dev-productivity",
"scraping",
"nocode",
"other"
],
"type": "string",
"description": "Restrict to one category id (see the toolgrep://categories resource)."
},
"open_source": {
"type": "boolean",
"description": "Only open-source products."
},
"has_free_tier": {
"type": "boolean",
"description": "Only products with a free plan or free usage allowance."
}
}
}Every field of one product by slug.
| Argument | Type | Description |
|---|---|---|
| slug* | string | Product slug, as in source_url (…/p/{slug}). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"description": "Product slug, as in source_url (…/p/{slug})."
}
}
}Flag a listing as outdated or wrong; triggers a re-crawl. A re-crawl runs at most once per hour per product; the report is always recorded.
| Argument | Type | Description |
|---|---|---|
| slug* | string | |
| reason | string | What is wrong, e.g. 'pricing changed' or 'site is down'. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string"
},
"reason": {
"type": "string",
"maxLength": 500,
"description": "What is wrong, e.g. 'pricing changed' or 'site is down'."
}
}
}Search the directory with a natural-language query and optional structured filters (category, free tier, API, MCP, open source). The query is matched by full-text and semantic similarity, so phrasing it like a need ("send transactional email with a free tier") works well. Returns up to `limit` products (default 10, max 50).
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| query | string | Natural-language query in any language. Omit to browse by filters only. |
| has_api | boolean | Only products with an API. |
| has_mcp | boolean | Only products that offer an MCP server. |
| category | string | Restrict to one category id (see the toolgrep://categories resource). |
| open_source | boolean | Only open-source products. |
| has_free_tier | boolean | Only products with a free plan or free usage allowance. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1
},
"query": {
"type": "string",
"maxLength": 500,
"description": "Natural-language query in any language. Omit to browse by filters only."
},
"has_api": {
"type": "boolean",
"description": "Only products with an API."
},
"has_mcp": {
"type": "boolean",
"description": "Only products that offer an MCP server."
},
"category": {
"enum": [
"ai-models",
"ai-agents",
"mcp-servers",
"api-platforms",
"auth",
"databases",
"hosting",
"devops",
"observability",
"messaging",
"payments",
"search",
"analytics",
"frontend",
"testing",
"security",
"dev-productivity",
"scraping",
"nocode",
"other"
],
"type": "string",
"description": "Restrict to one category id (see the toolgrep://categories resource)."
},
"open_source": {
"type": "boolean",
"description": "Only open-source products."
},
"has_free_tier": {
"type": "boolean",
"description": "Only products with a free plan or free usage allowance."
}
}
}Submit a product URL to be crawled and listed. No account needed. The site is crawled and the listing is usually live within a minute; poll status_url.
| Argument | Type | Description |
|---|---|---|
| url* | string | Homepage of the product. |
| string | Optional contact email, used to let the owner claim the listing later. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Homepage of the product."
},
"email": {
"type": "string",
"description": "Optional contact email, used to let the owner claim the listing later."
}
}
}