# The MCP Library

> Curated Model Context Protocol servers, ready-to-copy install commands, and production server templates in Python and TypeScript. Free, no gate.

Source: https://alexcinovoj.com/mcp-library
Updated: 2026-08-12

## Live MCP server on this site

This site runs its own live MCP server. Connect any MCP client to query Alex's bio, positioning, speaking topics, blog posts, availability, and submit contact requests - agent-to-agent.

- Name: alexcinovoj
- Endpoint: https://alexcinovoj.com/mcp
- Transport: streamable-http
- Tools: get_bio, get_positioning, get_speaking_topics, list_blog_posts, check_availability, submit_contact

```bash
claude mcp add --transport http alexcinovoj https://alexcinovoj.com/mcp
```

## Curated servers (10)

### Supabase MCP

- Category: Backend & Data
- Transport: stdio/http
- Docs: https://supabase.com/docs/guides/getting-started/mcp

Manage Postgres schema, run SQL, read logs, deploy edge functions, and check security advisors from your agent.

Why it matters: The fastest way to give an agent safe, structured access to your database instead of raw connection strings.

```bash
claude mcp add supabase -- npx -y @supabase/mcp-server-supabase@latest --project-ref=<ref>
```

### GitHub MCP

- Category: Dev Workflow
- Transport: http
- Docs: https://github.com/github/github-mcp-server

Issues, PRs, code search, CI status, and repo management through the official GitHub MCP server.

Why it matters: Turns your agent into a teammate that can triage issues and review PRs, not just write code.

```bash
claude mcp add --transport http github https://api.githubcopilot.com/mcp/
```

### Playwright MCP

- Category: Testing & QA
- Transport: stdio
- Docs: https://github.com/microsoft/playwright-mcp

Drive a real browser: navigate, click, fill forms, screenshot, and assert on live pages.

Why it matters: The single biggest upgrade for agent QA loops - the agent verifies its own UI work in a real browser.

```bash
claude mcp add playwright -- npx -y @playwright/mcp@latest
```

### Stripe MCP

- Category: Payments
- Transport: http
- Docs: https://docs.stripe.com/mcp

Query customers, subscriptions, invoices, and payment state; search Stripe docs from the agent.

Why it matters: Money paths need read-first tooling. Pair with a HALT-GO review gate before any write.

```bash
claude mcp add --transport http stripe https://mcp.stripe.com
```

### Context7

- Category: Docs & Context
- Transport: http
- Docs: https://github.com/upstash/context7

Pulls current, version-specific library docs into context so agents stop hallucinating APIs.

Why it matters: Kills the 'trained on last year's API' failure mode for fast-moving frameworks.

```bash
claude mcp add --transport http context7 https://mcp.context7.com/mcp
```

### Notion MCP

- Category: Knowledge & PM
- Transport: http
- Docs: https://developers.notion.com/docs/mcp

Search, read, and write Notion pages and databases with the official hosted server.

Why it matters: Puts your team's operating docs one tool call away from every agent.

```bash
claude mcp add --transport http notion https://mcp.notion.com/mcp
```

### Figma MCP

- Category: Design
- Transport: http
- Docs: https://developers.figma.com/docs/figma-mcp-server/

Read design context, variables, and screenshots; generate designs and connect components to code.

Why it matters: Design-to-code with real tokens and components instead of screenshot guessing.

```bash
claude mcp add --transport http figma https://mcp.figma.com/mcp
```

### Sentry MCP

- Category: Observability
- Transport: http
- Docs: https://docs.sentry.io/product/sentry-mcp/

Query errors, issues, and traces; let agents root-cause production failures with Seer.

Why it matters: Closes the loop: the agent that shipped the bug can find and fix the bug.

```bash
claude mcp add --transport http sentry https://mcp.sentry.dev/mcp
```

### Linear MCP

- Category: Dev Workflow
- Transport: http
- Docs: https://linear.app/docs/mcp

Create and update issues, projects, and cycles in Linear from any MCP client.

Why it matters: Agents that file their own tickets keep humans in the planning loop.

```bash
claude mcp add --transport http linear https://mcp.linear.app/mcp
```

### Firecrawl MCP

- Category: Web & Research
- Transport: stdio
- Docs: https://github.com/firecrawl/firecrawl-mcp-server

Scrape, crawl, and extract structured data from any website for agent research pipelines.

Why it matters: Research-grade web access with clean markdown output agents can actually use.

```bash
claude mcp add firecrawl -e FIRECRAWL_API_KEY=<key> -- npx -y firecrawl-mcp
```

## Server templates (2)

### Python MCP server (FastMCP)

Minimal production-shaped Python MCP server using the official SDK's FastMCP. One tool, one resource, stdio for local dev, streamable HTTP for deploy.

Install:

```bash
pip install "mcp[cli]"
```

Run:

```bash
python server.py            # stdio
fastmcp run server.py --transport streamable-http --port 8000
```

server.py:

```python
from mcp.server.fastmcp import FastMCP

mcp = FastMCP("techtide-example")

@mcp.tool()
def estimate_project(scope: str, weeks: int) -> str:
    """Estimate an AI automation project. Returns a rough cost band."""
    base = 4000
    return f"{scope}: ${base * weeks:,} - ${int(base * weeks * 1.6):,} over {weeks} weeks"

@mcp.resource("docs://playbook")
def playbook() -> str:
    """TechTide delivery playbook summary."""
    return "Scope one vertical slice. Ship behind a gate. Verify in a real browser."

if __name__ == "__main__":
    mcp.run()
```

### TypeScript MCP server (official SDK)

Minimal TypeScript MCP server with the official @modelcontextprotocol/sdk. Zod-validated tool input, stdio transport.

Install:

```bash
npm i @modelcontextprotocol/sdk zod
```

Run:

```bash
npx tsx server.ts
```

server.ts:

```typescript
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";

const server = new McpServer({ name: "techtide-example", version: "1.0.0" });

server.registerTool(
  "estimate_project",
  {
    title: "Estimate project",
    description: "Estimate an AI automation project cost band",
    inputSchema: { scope: z.string(), weeks: z.number().int().positive() },
  },
  async ({ scope, weeks }) => ({
    content: [{ type: "text", text: `${scope}: $${4000 * weeks} - $${Math.round(4000 * weeks * 1.6)} over ${weeks} weeks` }],
  })
);

const transport = new StdioServerTransport();
await server.connect(transport);
```

## Install guides

### Claude Code CLI

Run from your project root. Project scope writes .mcp.json so the team shares the server.

```bash
claude mcp add --transport http <name> <url>
claude mcp add <name> -- npx -y <package>   # stdio
# scopes: --scope local | project | user ; project scope writes .mcp.json
```

### Claude Desktop

Edit the config file, then restart Claude Desktop for the server to appear.

```json
{
  "mcpServers": {
    "my-server": {
      "command": "npx",
      "args": ["-y", "<package>"]
    }
  }
}
// ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)
// %APPDATA%\\Claude\\claude_desktop_config.json (Windows)
```

### Cursor

Project config lives in .cursor/mcp.json. Global config lives in your home directory.

```json
// .cursor/mcp.json (project) or ~/.cursor/mcp.json (global)
{
  "mcpServers": {
    "my-server": { "command": "npx", "args": ["-y", "<package>"] }
  }
}
```

## Registries

- [Official MCP Registry](https://registry.modelcontextprotocol.io): The canonical community registry; sub-registries consume its API.
- [Claude Directory](https://claude.ai/directory): Anthropic's curated connector directory.
- [mcp.so](https://mcp.so): Largest community catalog.
- [Smithery](https://smithery.ai): Hosted/managed servers with CLI install.
- [PulseMCP](https://www.pulsemcp.com): Directory plus ecosystem news.

## Pair servers with skills

Servers give an agent hands. Skills give it judgement. The open skills library is at https://alexcinovoj.com/skills.md
