AIWerk

@aiwerk/mcp-catalog

Community AIWerk
Updated

MCP server catalog — searchable directory of MCP server recipes, served as an MCP server

@aiwerk/mcp-catalog

Searchable directory of MCP server recipes, served as an MCP server. Any AI agent can discover, inspect, and download MCP server configs natively — through tool calls.

Works with Claude Desktop, Cursor, Windsurf, Cline, OpenClaw, MCP Bridge, or any MCP client.

Why?

Setting up MCP servers means finding the right package, writing config JSON, figuring out env vars. Every time.

MCP Catalog makes this discoverable:

  • 4 MCP tools: search, info, download, activate — all callable by AI agents
  • Weighted search: name, keywords, description, tool names, tags — all scored and ranked
  • 12 pre-seeded servers: popular MCP servers ready to go
  • Multi-language keywords: English + German (more coming)
  • Two transports: stdio (default) or Streamable HTTP

Install

npm install -g @aiwerk/mcp-catalog

Quick Start

# Start (stdio mode — connects to any MCP client)
mcp-catalog

On first start, the catalog auto-seeds from bundled recipes if the database is empty.

Use with Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "catalog": {
      "command": "npx",
      "args": ["-y", "@aiwerk/mcp-catalog"]
    }
  }
}

Use with Cursor / Windsurf

Add to your MCP config:

{
  "mcpServers": {
    "catalog": {
      "command": "npx",
      "args": ["-y", "@aiwerk/mcp-catalog"]
    }
  }
}

Use with MCP Bridge

Add to your ~/.mcp-bridge/config.json:

{
  "servers": {
    "aiwerk-catalog": {
      "transport": "stdio",
      "command": "npx",
      "args": ["-y", "@aiwerk/mcp-catalog"],
      "description": "MCP server catalog — searchable directory of MCP server recipes"
    }
  }
}

MCP Tools

catalog_search

Search for MCP servers by keyword, category, or transport type.

{
  "query": "payment",
  "category": "finance",
  "transport": "stdio"
}

Returns ranked results:

{
  "results": [
    {
      "name": "stripe",
      "description": "payments & billing",
      "category": "finance",
      "badges": ["stdio", "auth-required"],
      "transport": "stdio",
      "authRequired": true,
      "authType": "api-key",
      "downloads": 42
    }
  ]
}

catalog_info

Get full recipe details for a specific server.

{ "name": "stripe" }

Returns complete config: command, args, env vars, credentials URL, homepage, keywords, tool names, and more.

catalog_download

Download a server recipe (returns full config JSON + increments download counter).

{ "name": "github" }

catalog_activate

Activate a server on the hosted bridge (coming in Phase 4).

{ "name": "todoist" }

Search Scoring

Results are ranked by weighted scoring across multiple fields:

Match type Weight Example
Exact name 1.0 "github" → github server
Name prefix 0.9 "goo" → google-maps
Keyword 0.8 "zahlungen" → stripe, wise
Description 0.6 "web scraping" → apify
Tool name 0.5 "issues" → github
Tag 0.4 "productivity" → todoist, linear, miro

Category aliases also work: searching "developer" filters to developer-tools category.

Pre-seeded Servers

Server Category Transport Auth
apify search streamable-http API key
github developer-tools stdio API key
google-maps maps stdio API key
hetzner cloud stdio API key
hostinger hosting stdio API key
linear productivity stdio API key
miro productivity stdio API key
notion productivity stdio API key
stripe finance stdio API key
tavily search stdio API key
todoist productivity stdio API key
wise finance stdio API key

CLI Reference

Command Behavior
mcp-catalog Start stdio MCP server (default)
mcp-catalog serve Start Streamable HTTP MCP server
mcp-catalog --http Start Streamable HTTP MCP server
mcp-catalog seed [path] Seed recipe data (optional directory override)
mcp-catalog --version Print package version
mcp-catalog --help Show usage

HTTP Port

mcp-catalog --http --port 3200   # CLI arg
MCP_CATALOG_PORT=3200 mcp-catalog serve   # environment variable

Default HTTP port is 3100.

Tech Stack

  • TypeScript + Node.js
  • SQLite (better-sqlite3) with FTS5 for full-text search
  • MCP SDK (@modelcontextprotocol/sdk)
  • Zod for parameter validation

Development

git clone https://github.com/AIWerk/mcp-catalog.git
cd mcp-catalog
npm install

# Seed the database manually (optional; startup auto-seeds if needed)
npm run seed

# Run tests
npm test

# Dev mode
npm run dev

# Build
npm run build

Architecture

┌─────────────────┐     ┌──────────────────────────────────────┐
│  Claude Desktop  │     │  MCP Catalog                         │
│  Cursor          │◄───►│                                      │
│  MCP Bridge      │stdio│  ┌────────────┐  ┌───────────────┐  │
│  Any MCP client  │ or  │  │ 4 MCP Tools│  │ SQLite + FTS5 │  │
│                  │http │  │            │──│               │  │
└─────────────────┘     │  │ search     │  │ 12 recipes    │  │
                        │  │ info       │  │ weighted      │  │
                        │  │ download   │  │ scoring       │  │
                        │  │ activate   │  │               │  │
                        │  └────────────┘  └───────────────┘  │
                        └──────────────────────────────────────┘

Related

License

MIT — AIWerk

MCP Server · Populars

MCP Server · New