# Claude Code MCP setup

> Most MCP lists rank by GitHub stars. This is the set that earns its place in daily work: live docs so the agent stops calling renamed methods, database access so it stops guessing your schema, and analytics so it can answer questions about real traffic. $50/mo all in, and the servers themselves are free.

Source: https://aistack.sh/stack/claude-code-mcp-setup
Category: Code · Agent setup
Level: Intermediate

## The tools

### Claude Code — The agent

- Pricing: Bundled with Claude Pro $20/mo · Max $100-200/mo · API metered
- Site: https://claude.com/code
- Why this one: MCP is a Claude Code feature, not a separate product. Everything below plugs into this one session.
- Swap in instead: Codex, Cursor
- More: https://aistack.sh/tool/claude-code

### Context7 — Live documentation

- Pricing: Free
- Site: https://context7.com
- Why this one: Stops the single most common agent failure: writing code against an API as it existed in the training data. Costs one tool call and removes a whole class of confident wrong answers.
- More: https://aistack.sh/tool/context7

### Supabase MCP — Database access

- Pricing: Free
- Site: https://supabase.com/docs/guides/getting-started/mcp
- Why this one: The agent reads your actual schema instead of inferring it from your code. Migrations and queries stop being a copy-paste round trip through a dashboard.
- More: https://aistack.sh/tool/supabase-mcp

### PostHog MCP — Product analytics

- Pricing: Free
- Site: https://posthog.com/docs/model-context-protocol
- Why this one: Turns 'which pages get impressions but no clicks' into a question you ask mid-session. The agent can act on the answer in the same turn.
- More: https://aistack.sh/tool/posthog-mcp

### CodeRabbit — Review

- Pricing: Free for OSS · $30/mo per dev Essentials ($24 billed annually) · $60/mo Team · $90/mo Advanced
- Site: https://coderabbit.link/aistacksh
- Why this one: The agent wrote the code, so it is the wrong reviewer. CodeRabbit reads the pull request cold, on GitHub, with no memory of the reasoning that produced it.
- More: https://aistack.sh/tool/coderabbit

## Monthly cost

### $20/mo — Solo, free servers only (small)

- Claude Code: $20
- Context7: $0
- Supabase MCP: $0
- PostHog MCP: $0
- CodeRabbit: $0 OSS

### $50/mo — Solo, private repos (medium)

- Claude Code: $20
- Context7: $0
- Supabase MCP: $0
- PostHog MCP: $0
- CodeRabbit: $30

### $390/mo — Heavy agent use, 3 devs (heavy)

- Claude Code: $300 Max ×3
- Context7: $0
- Supabase MCP: $0
- PostHog MCP: $0
- CodeRabbit: $90

## Workflow

### 1. Add the servers (Claude Code)

Each server is one command. Scope matters: `--scope user` makes a server available in every project, `--scope project` writes it into the repo's .mcp.json so your team inherits it.

**Prompt: Install the three servers**

```
claude mcp add --transport http --scope user context7 https://mcp.context7.com/mcp
claude mcp add --transport http --scope project supabase https://mcp.supabase.com/mcp?project_ref={{your_project_ref}}
claude mcp add --transport http --scope project posthog https://mcp.posthog.com/mcp

claude mcp list
```

### 2. Make the agent reach for docs (Context7)

Servers do not get used just because they are installed. Say so in CLAUDE.md, or the agent falls back on training data exactly when it matters most.

**Prompt: CLAUDE.md rule**

```
Before writing code against any library, framework, or SDK, look up its
current documentation with Context7. This applies even to libraries you
know well: the API may have changed since training. Do not skip it because
the change looks like a one-liner.
```

### 3. Let it read the real schema (Supabase MCP)

Point the agent at the database before asking for a migration. It will write SQL against what is actually there rather than what your types imply.

### 4. Close the loop with review (CodeRabbit)

Open the pull request and let CodeRabbit review it cold. Feed its comments back into the session; the agent applies the fixes and pushes again.

## What it produced

**This site runs on it**

aistack.sh is built with this setup. The Supabase and PostHog servers are wired in the repo's .mcp.json, and a recent session used the analytics server to find that five comparison pages were ranking on page one with under 2% click-through, then rewrote their titles in the same sitting. That is the whole argument for the analytics server: the question and the fix happen in one place.

## Pitfalls

- **Installing servers you never use** — Every connected server costs context on tool definitions. Three servers you actually reach for beat fifteen you installed from a list and forgot. Run `claude mcp list` monthly and remove what you have not used.
- **Assuming installation equals usage** — An agent will happily write code from memory with Context7 sitting right there. If you have not written the rule into CLAUDE.md, assume the server is not being consulted.
- **Giving a database server write access too early** — Start read-only. An agent that can run migrations unsupervised will eventually run one you did not want, and Postgres has no undo.
- **Letting the author review the work** — Asking the agent that wrote the code to review it produces agreeable answers. The reviewer has to be something that did not see the reasoning.

---

Curated by omar on aistack.sh. Last updated 2026-09-04.
