Koskamo

CodeTrendy MCP

A read-only MCP server that allows AI agents to search the CodeTrendy directory of startups and tools, retrieve full product profiles, find alternatives, and view trending items without requiring authentication.

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.

CodeTrendy MCP logo, by CodeTrendyVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-01Operated by CodeTrendy
MCP endpoint (Streamable HTTP)
https://codetrendy.com/api/mcp
Vendor documentation

What you can do with it

  • Search for software, SaaS, AI tools and websites listed in the directory by keyword
  • Retrieve full public profiles of listed products including tech stack and social links
  • Find alternatives to a named product
  • View trending leaderboards and the daily featured site

Source and maintenance

Vendor evidenceRegistry 1.1.0

Protocol and capabilities

Server
CodeTrendy 1.2.0
MCP protocol
2025-06-18
Tools
7 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": false
  }
}

Server-provided instructions

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

CodeTrendy is a curated directory of websites, SaaS products, tools and startups. Use this server when the user wants to find, compare or research products, alternatives or tools in a category, or wants the public profile of a specific product. Start with search_listings (keyword) or list_categories (browse), use get_listing with a slug for the full profile, and get_trending for what is popular right now. When presenting results, cite each listing by linking its listingUrl so the user can open the profile. Read-only; no authentication required; all data is public.

Tools

7 advertised

search_listings — Search the directory
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

search_listings input schema
{
  "type": "object",
  "required": [
    "query"
  ],
  "properties": {
    "limit": {
      "type": "number",
      "description": "Maximum number of results (1-25, default 10)."
    },
    "query": {
      "type": "string",
      "description": "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."
    },
    "pricing": {
      "enum": [
        "free",
        "freemium",
        "free_trial",
        "paid"
      ],
      "type": "string",
      "description": "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 retry without it if results are thin."
    },
    "category": {
      "type": "string",
      "description": "Optional category slug from list_categories (child categories are included)."
    }
  }
}
search_listings annotations
{
  "title": "Search the directory",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
get_listing — Get a listing profile
Advertised by the server during the last successful anonymous check.
Advertised read-only

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

get_listing input schema
{
  "type": "object",
  "required": [
    "slug"
  ],
  "properties": {
    "slug": {
      "type": "string",
      "description": "The listing slug, as returned by the other tools."
    }
  }
}
get_listing annotations
{
  "title": "Get a listing profile",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
find_alternatives — Find alternatives to a product
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

find_alternatives input schema
{
  "type": "object",
  "required": [
    "product"
  ],
  "properties": {
    "limit": {
      "type": "number",
      "description": "Maximum number of alternatives (1-25, default 10)."
    },
    "product": {
      "type": "string",
      "description": "Product name (e.g. \"Notion\") or a listing slug from this directory."
    }
  }
}
find_alternatives annotations
{
  "title": "Find alternatives to a product",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
browse_category — Browse a category
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

browse_category input schema
{
  "type": "object",
  "required": [
    "category"
  ],
  "properties": {
    "limit": {
      "type": "number",
      "description": "Maximum number of results (1-25, default 10)."
    },
    "pricing": {
      "enum": [
        "free",
        "freemium",
        "free_trial",
        "paid"
      ],
      "type": "string",
      "description": "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 retry without it if results are thin."
    },
    "category": {
      "type": "string",
      "description": "Category slug from list_categories (an exact category name also works)."
    }
  }
}
browse_category annotations
{
  "title": "Browse a category",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
list_categories — List categories
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

list_categories input schema
{
  "type": "object",
  "properties": {}
}
list_categories annotations
{
  "title": "List categories",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
get_trending — Trending products
Advertised by the server during the last successful anonymous check.
Advertised read-only

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.

get_trending input schema
{
  "type": "object",
  "properties": {}
}
get_trending annotations
{
  "title": "Trending products",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
get_site_of_the_day — Site of the Day
Advertised by the server during the last successful anonymous check.
Advertised read-only

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

get_site_of_the_day input schema
{
  "type": "object",
  "properties": {}
}
get_site_of_the_day annotations
{
  "title": "Site of the Day",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

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
913 ms
95th percentile latency
913 ms

Maintenance history

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

  • · probe · passed · 913 ms · metadata changed · 7 tool(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 codetrendy-mcp https://codetrendy.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 codetrendy-mcp --url https://codetrendy.com/api/mcp

Cursor

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

Cline

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

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start codetrendy-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "codetrendy-mcp": {
      "type": "http",
      "url": "https://codetrendy.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 codetrendy-mcp https://codetrendy.com/api/mcp

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "codetrendy-mcp": {
      "url": "https://codetrendy.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": {
    "codetrendy-mcp": {
      "serverUrl": "https://codetrendy.com/api/mcp"
    }
  }
}

Let your agent find its tools

Find servers like CodeTrendy 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 CodeTrendy 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