- name
- mcp-servers-essential-reference
- description
- Reference guide for installing and configuring 50+ essential MCP servers across dev, data, ops, productivity, fintech, web3, trading, and creator tools
- triggers
- ["how do I install MCP servers","show me essential MCP servers","configure MCP server for Claude","what MCP servers should I use","set up github MCP server","MCP server best practices","troubleshoot MCP server connection","which MCP servers for development"]
# MCP Servers Essential Reference
> Skill by [ara.so](https://ara.so) — MCP Skills collection.
This skill provides expertise in selecting, installing, and configuring MCP (Model Context Protocol) servers for AI coding agents like Claude Code, Cursor, Codex, and Gemini CLI. It covers 50 essential servers across 9 categories with installation commands, security best practices, and troubleshooting.
## What MCP Servers Are
The Model Context Protocol (MCP) is a standardized interface that allows AI agents to connect to external tools and services. Instead of each AI model implementing custom integrations, MCP provides a "USB-C port for AI" — one protocol that both agents and tools speak.
**Key concepts:**
- **Server**: A service that exposes tools/resources via MCP (e.g., GitHub API, database access)
- **Transport**: How the agent connects (stdio for local, HTTP/SSE for hosted)
- **Tool**: A function the agent can call (e.g., `search_github`, `run_sql_query`)
- **Resource**: Read-only data the agent can access (e.g., file contents, API docs)
## The Three Critical Rules
Before installing any MCP server:
1. **Don't install more than 5-7 servers** — Tool bloat degrades agent performance and reasoning quality
2. **Treat every server like untrusted code** — Pin versions, scope tokens read-only, review source
3. **Never enable writes to production** — Point at replicas, snapshots, or staging environments
## Installation Methods by Agent
### Claude Code (Desktop)
```bash
# Local server (stdio transport)
claude mcp add github -- npx -y @modelcontextprotocol/server-github
# Hosted server (HTTP transport)
claude mcp add linear --transport http
# List installed servers
claude mcp list
# Remove a server
claude mcp remove github
```
Config file: `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS)
### Codex
```bash
# Add server
codex mcp add postgres -- npx -y @modelcontextprotocol/server-postgres
# Edit config directly
vim ~/.codex/config.toml
```
### Gemini CLI
Edit `~/.gemini/settings.json`:
```json
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}"
}
}
}
}
```
## Manual Configuration Format
All agents use similar JSON structure for `mcpServers`:
```json
{
"mcpServers": {
"server-name": {
"command": "npx",
"args": ["-y", "@scope/package-name"],
"env": {
"API_KEY": "${ENV_VAR_NAME}"
}
}
}
}
```
**For hosted servers:**
```json
{
"mcpServers": {
"linear": {
"url": "https://mcp.linear.app",
"transport": "http"
}
}
}
```
## Category-Based Server Selection
### Core Development (Pick 3-4)
**GitHub** (Official, hosted)
```bash
claude mcp add github -- npx -y @modelcontextprotocol/server-github
```
Environment: `GITHUB_PERSONAL_ACCESS_TOKEN`
Capabilities: Search repos/issues/PRs, create issues, manage PRs, push commits
**Filesystem** (Official, local)
```bash
claude mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem /path/to/allowed/directory
```
⚠️ **Security**: Only expose specific directories, never `/` or `~`
**Brave Search** (Official, local)
```bash
claude mcp add brave-search -- npx -y @modelcontextprotocol/server-brave-search
```
Environment: `BRAVE_API_KEY`
Use case: Web search without leaving the agent context
**Playwright** (Official, local)
```bash
claude mcp add playwright -- npx -y @executeautomation/playwright-mcp-server
```
Capabilities: Browser automation, screenshot capture, web scraping
### Databases & Backend (Pick 1)
**PostgreSQL** (Official, local)
```bash
claude mcp add postgres -- npx -y @modelcontextprotocol/server-postgres postgresql://user:pass@localhost/dbname
```
⚠️ **Critical**: Use read-only user or point at replica
**Supabase** (Official, hosted)
```bash
claude mcp add supabase --transport http
```
Requires: Supabase project URL and service role key
**SQLite** (Community, local)
```bash
claude mcp add sqlite -- npx -y @benborla/mcp-server-sqlite /path/to/database.db
```
### Ops & Infrastructure
**AWS** (Official, local)
```bash
claude mcp add aws -- npx -y @modelcontextprotocol/server-aws-kb-retrieval-server
```
Environment: `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, `AWS_REGION`
**Cloudflare** (Official, hosted)
```bash
claude mcp add cloudflare --transport http
```
⚠️ **Dangerous**: Can modify DNS, workers, R2 buckets
**Kubernetes** (Community, local)
```bash
claude mcp add kubernetes -- npx -y @strowk/mcp-k8s-go
```
Environment: `KUBECONFIG` path
⚠️ **Production risk**: Can delete pods, services, deployments
### Productivity & Team Tools
**Slack** (Community, local)
```bash
claude mcp add slack -- npx -y @modelcontextprotocol/server-slack
```
Environment: `SLACK_BOT_TOKEN`, `SLACK_TEAM_ID`
**Linear** (Official, hosted)
```bash
claude mcp add linear --transport http
```
OAuth flow via browser
**Notion** (Official, hosted)
```bash
claude mcp add notion --transport http
```
**Google Drive** (Official, local - archived)
```bash
claude mcp add gdrive -- npx -y @modelcontextprotocol/server-gdrive
```
Requires OAuth credentials JSON
### Fintech & Payments (⚠️ All flagged as money-moving)
**Stripe** (Official, hosted/local)
```bash
claude mcp add stripe -- npx -y @stripe/mcp
```
Environment: `STRIPE_SECRET_KEY` (use test keys first)
**Plaid** (Official, hosted)
Documentation: Check Plaid developer portal for latest MCP endpoint
⚠️ **All fintech servers**: Start in sandbox/test mode, never use production keys until you've verified agent behavior
### Web3 & Blockchain (⚠️ Irreversible transactions)
**Base MCP** (Official, hosted)
```bash
claude mcp add base --transport http
```
Capabilities: Deploy contracts, send transactions, query onchain data
⚠️ **Critical**: Transactions are irreversible. Use testnet first.
**The Graph** (Community, local - read-only)
```bash
claude mcp add thegraph -- npx -y @rainprotocol/mcp-subgraph
```
Safe for querying blockchain data via GraphQL
**Dune** (Community, local - read-only)
Environment: `DUNE_API_KEY`
Use case: SQL queries against blockchain data
### Trading & Markets
**Alpaca** (Official, local)
```bash
claude mcp add alpaca -- npx -y @alpacahq/mcp-server
```
Environment: `APCA_API_KEY_ID`, `APCA_API_SECRET_KEY`, `APCA_API_BASE_URL`
⚠️ **Paper trade first**: Set `APCA_API_BASE_URL=https://paper-api.alpaca.markets`
**Polygon.io** (Official, local - read-only)
```bash
claude mcp add polygon -- npx -y @modelcontextprotocol/server-polygon
```
Environment: `POLYGON_API_KEY`
**CoinGecko** (Official, hosted - read-only)
Safe for market data queries
### Creator Tools & Media
**ElevenLabs** (Official, local)
```bash
claude mcp add elevenlabs -- npx -y @modelcontextprotocol/server-elevenlabs
```
Environment: `ELEVENLABS_API_KEY`
**Figma** (Official, hosted/local)
```bash
claude mcp add figma -- npx -y @modelcontextprotocol/server-figma
```
Environment: `FIGMA_PERSONAL_ACCESS_TOKEN`
**YouTube** (Community, local)
Environment: `YOUTUBE_API_KEY`
Capabilities: Search videos, retrieve metadata, manage playlists
### Reasoning & Memory
**Sequential Thinking** (Official, local)
```bash
claude mcp add sequential-thinking -- npx -y @modelcontextprotocol/server-sequential-thinking
```
Forces step-by-step reasoning for complex problems
**Memory** (Official, local)
```bash
claude mcp add memory -- npx -y @modelcontextprotocol/server-memory
```
Persistent knowledge graph across sessions
## Real-World Configuration Examples
### Minimal Dev Setup (5 servers)
```json
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}"
}
},
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/you/projects"]
},
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://readonly:${DB_PASSWORD}@localhost/myapp_dev"]
},
"brave-search": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
"env": {
"BRAVE_API_KEY": "${BRAVE_API_KEY}"
}
},
"sequential-thinking": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-sequential-thinking"]
}
}
}
```
### Creator Pipeline (4 servers)
```json
{
"mcpServers": {
"elevenlabs": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-elevenlabs"],
"env": {
"ELEVENLABS_API_KEY": "${ELEVENLABS_API_KEY}"
}
},
"figma": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-figma"],
"env": {
"FIGMA_PERSONAL_ACCESS_TOKEN": "${FIGMA_TOKEN}"
}
},
"youtube": {
"command": "npx",
"args": ["-y", "@benborla/mcp-server-youtube"],
"env": {
"YOUTUBE_API_KEY": "${YOUTUBE_API_KEY}"
}
},
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/you/content"]
}
}
}
```
### Team Productivity (5 servers)
```json
{
"mcpServers": {
"linear": {
"url": "https://mcp.linear.app",
"transport": "http"
},
"notion": {
"url": "https://mcp.notion.so",
"transport": "http"
},
"slack": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-slack"],
"env": {
"SLACK_BOT_TOKEN": "${SLACK_BOT_TOKEN}",
"SLACK_TEAM_ID": "${SLACK_TEAM_ID}"
}
},
"gdrive": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-gdrive"],
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "/path/to/credentials.json"
}
},
"github": {
"command": "npx",
在 GitHub 查看