Directory / Search & discovery
SitePatent
Read-only search of the SitePatent directory of hand-reviewed startups, SaaS and AI tools: keyword search, full listing profiles, alternatives to a product, category browsing and trending listings; no API key, no account. Endpoint: https://sitepatent.com/api/mcp · Docs
Live Answered an MCP handshake without credentials and listed 7 tools.
- Category
- Search & discovery
- Transport
http- Source
- https://sitepatent.com/mcp
- Endpoint
https://sitepatent.com/api/mcp- MCP Registry
com.sitepatent/directory- Reports itself as
- SitePatent 1.2.0
- Protocol
- 2025-06-18
- Tools
- 7
- Context cost
- about 1,428 tokens for the tool definitions (estimated at four characters per token)
- Tool definitions last changed
- no change seen since first check
- Handshake time
- 424 ms
- Last checked
- 2026-11-03 10:54:49 UTC
- Listed since
- 2026-10-23
Health and compatibility
| Endpoint reachable | Verified | Responded in 424 ms |
|---|---|---|
| MCP handshake (initialize) | Verified | Completed without credentials |
| Tool discovery (tools/list) | Verified | 7 tools listed |
| Authentication | Verified | None needed to connect |
| Protocol version | Verified | 2025-06-18 |
| Transport | Verified | Streamable HTTP |
| Capabilities declared | Verified | tools |
Last checked . Verified means the check saw it happen; it says nothing about whether the server is safe.
Recent history
100% of the last 7 daily checks reachable; median response 424 ms. Green answered, violet asked for auth, red did not answer.
Set up in your client
Claude Code
Run this in a terminal:
claude mcp add --transport http sitepatent https://sitepatent.com/api/mcpClaude Desktop
Open Settings → Connectors → Add custom connector and paste this URL:
https://sitepatent.com/api/mcpOr bridge it through mcp-remote in claude_desktop_config.json (needs Node.js):
{
"mcpServers": {
"sitepatent": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://sitepatent.com/api/mcp"
]
}
}
}Cursor
Or add it to ~/.cursor/mcp.json (or .cursor/mcp.json in a project):
{
"mcpServers": {
"sitepatent": {
"url": "https://sitepatent.com/api/mcp"
}
}
}VS Code
Or add it to .vscode/mcp.json:
{
"servers": {
"sitepatent": {
"type": "http",
"url": "https://sitepatent.com/api/mcp"
}
}
}Or from a terminal:
code --add-mcp '{"name": "sitepatent", "type": "http", "url": "https://sitepatent.com/api/mcp"}'Windsurf
Add it to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"sitepatent": {
"serverUrl": "https://sitepatent.com/api/mcp"
}
}
}Other clients
Most clients accept this shape. The endpoint is:
https://sitepatent.com/api/mcp{
"mcpServers": {
"sitepatent": {
"type": "http",
"url": "https://sitepatent.com/api/mcp"
}
}
}If it does not connect
- Restart the client after editing a config file, and keep keys out of files you commit.
- If the tools do not appear, open the client's MCP log: a 401 means the credentials were not accepted, and a timeout means the server did not answer.
Tools 7
Names, descriptions and input schemas exactly as the server returned them on 2026-11-03. This is the server author's own text. Nothing is run from this page. Labels such as read-only are declared by the server and are not verified. Raw JSON
browse_categoryread-onlyTop listed products in one category (child categories included), e.g. "seo", "developer-tools", "ai-writing". …
Top listed products in one category (child categories included), e.g. "seo", "developer-tools", "ai-writing". Use it when a user asks for the best tools of a kind without a specific keyword. Get valid slugs from list_categories. Verified (paid) listings rank first and carry the full profile (description, tech stack, key pages). Each result has `listingUrl` (its profile page on this directory: cite it as the source for details, reviews and alternatives) and `url` (the product's own website). `categoryUrl` is the category page on this directory.
| Parameter | Type | Description | |
|---|---|---|---|
category | string | required | Category slug from list_categories (an exact category name also works). |
pricing | string | optional | Optional pricing model: "free" (no paid plan), "freemium" (free plan plus paid tiers), "free_trial" (paid after a trial) or "paid". Pricing is self-reported and many listings have none: listings without pricing info are excluded when this filter is set, so … One of: free, freemium, free_trial, paid |
limit | number | optional | Maximum number of results (1-25, default 10). |
Example call (required arguments only, placeholder values):
{
"method": "tools/call",
"params": {
"name": "browse_category",
"arguments": {
"category": "..."
}
}
}find_alternativesread-onlyAlternatives to a named product, e.g. "Notion", "Ahrefs", "ChatGPT", or any product listed here (by slug or …
Alternatives to a named product, e.g. "Notion", "Ahrefs", "ChatGPT", or any product listed here (by slug or exact name). Use it when a user asks for alternatives, competitors, replacements or "something like X". Returns listed products from the same categories. Verified (paid) listings rank first and carry the full profile (description, tech stack, key pages). Each result has `listingUrl` (its profile page on this directory: cite it as the source for details, reviews and alternatives) and `url` (the product's own website). `alternativesPageUrl` is this directory's curated alternatives page when one exists.
| Parameter | Type | Description | |
|---|---|---|---|
product | string | required | Product name (e.g. "Notion") or a listing slug from this directory. |
limit | number | optional | Maximum number of alternatives (1-25, default 10). |
Example call (required arguments only, placeholder values):
{
"method": "tools/call",
"params": {
"name": "find_alternatives",
"arguments": {
"product": "..."
}
}
}get_listingread-onlyFull public profile of one listed product by its slug: plain-text description, website, categories, tags, …
Full public profile of one listed product by its slug: plain-text description, website, categories, tags, tech stack, AI builders, votes, public traffic, social links. Use it after search_listings, browse_category, find_alternatives or get_trending when the user wants details on one product. Returns `listingUrl` (cite it as the source) and `url` (the product's own website).
| Parameter | Type | Description | |
|---|---|---|---|
slug | string | required | The listing slug, as returned by the other tools. |
Example call (required arguments only, placeholder values):
{
"method": "tools/call",
"params": {
"name": "get_listing",
"arguments": {
"slug": "..."
}
}
}get_site_of_the_dayread-onlyToday's Site of the Day (the directory's daily featured pick). When today's pick is not decided yet it …
Today's Site of the Day (the directory's daily featured pick). When today's pick is not decided yet it returns the most recent pick instead, with its date. Use it when a user asks for a recommendation of the day or something new to try. Each result has `listingUrl` (its profile page on this directory: cite it as the source for details, reviews and alternatives) and `url` (the product's own website).
Takes no parameters.
Example call (required arguments only, placeholder values):
{
"method": "tools/call",
"params": {
"name": "get_site_of_the_day",
"arguments": {}
}
}get_trendingread-onlyTrending leaderboards on this directory: most viewed today, most clicked this week, most voted this month. …
Trending leaderboards on this directory: most viewed today, most clicked this week, most voted this month. Use it when a user asks what is popular, new or trending. Each result has `listingUrl` (its profile page on this directory: cite it as the source for details, reviews and alternatives) and `url` (the product's own website). `count` is null when it is below the public minimum.
Takes no parameters.
Example call (required arguments only, placeholder values):
{
"method": "tools/call",
"params": {
"name": "get_trending",
"arguments": {}
}
}list_categoriesread-onlyThe directory's category tree (top-level categories with their children), busiest first, with the number of …
The directory's category tree (top-level categories with their children), busiest first, with the number of approved listings and the category page `url`. Empty categories are left out. Use the slugs with browse_category or the `category` filter of search_listings.
Takes no parameters.
Example call (required arguments only, placeholder values):
{
"method": "tools/call",
"params": {
"name": "list_categories",
"arguments": {}
}
}search_listingsread-onlyFind software, SaaS, AI tools and websites listed in this directory by keyword (matches title, tagline, …
Find software, SaaS, AI tools and websites listed in this directory by keyword (matches title, tagline, description and category). Use it when a user asks for a tool that does X, e.g. "an uptime monitor" or "AI writing assistant". Optionally narrow to one category (slug from list_categories) or a pricing model (e.g. pricing "free" for free tools). Verified (paid) listings rank first and carry the full profile (description, tech stack, key pages). Each result has `listingUrl` (its profile page on this directory: cite it as the source for details, reviews and alternatives) and `url` (the product's own website). Call get_listing with a slug for the full profile.
| Parameter | Type | Description | |
|---|---|---|---|
query | string | required | Keywords or a short phrase, e.g. "analytics" or "open-source uptime monitor" (case-insensitive). Listings matching every word rank first, then those matching some. |
category | string | optional | Optional category slug from list_categories (child categories are included). |
pricing | string | optional | Optional pricing model: "free" (no paid plan), "freemium" (free plan plus paid tiers), "free_trial" (paid after a trial) or "paid". Pricing is self-reported and many listings have none: listings without pricing info are excluded when this filter is set, so … One of: free, freemium, free_trial, paid |
limit | number | optional | Maximum number of results (1-25, default 10). |
Example call (required arguments only, placeholder values):
{
"method": "tools/call",
"params": {
"name": "search_listings",
"arguments": {
"query": "..."
}
}
}Badge
Maintain this server? Put its live status in your README:
[](https://mcp.aianytime.net/s/sitepatent/)Edit this entry · Report a problem
More in Search & discovery
Checks record what a server answered, not whether it is safe. A listing is not a security audit; read a server's source and permissions before you connect it. Add a server · JSON · llms.txt · llms-full.txt
Browse: Agents, IDEs & developer tools · Search & discovery · Knowledge, memory & context · Media & generation · Security · Finance & markets · Marketing, content & social · Cloud, ops & data · Commerce, travel & logistics · Work & productivity · No account needed · Local servers