MCP Servers Reference
Complete reference for Model Context Protocol server configurations.
Model Context Protocol (MCP) servers extend your agent with additional tools and data sources. This reference covers all available server templates and configuration options.
Transport Types
stdio
Standard I/O transport runs a local command and communicates via stdin/stdout. Most common for npx-based MCP servers.
1{
2 "name": "server-name",
3 "transport": "stdio",
4 "command": "npx",
5 "args": ["-y", "@package/server"],
6 "env": {
7 "API_KEY": "${API_KEY}"
8 }
9}http
HTTP transport connects to a REST endpoint.
1{
2 "name": "server-name",
3 "transport": "http",
4 "url": "https://api.example.com/mcp",
5 "headers": {
6 "Authorization": "Bearer ${TOKEN}"
7 }
8}sse
Server-Sent Events transport for real-time streaming.
1{
2 "name": "server-name",
3 "transport": "sse",
4 "url": "https://api.example.com/events"
5}sdk
SDK transport loads a JavaScript module directly.
1{
2 "name": "server-name",
3 "transport": "sdk",
4 "serverModule": "./path/to/server.js"
5}Available Server Templates
Filesystem
Read and write files in specified directories.
1{
2 "name": "filesystem",
3 "transport": "stdio",
4 "command": "npx",
5 "args": [
6 "-y",
7 "@modelcontextprotocol/server-filesystem",
8 "/path/to/allowed/directory"
9 ]
10}| Package | @modelcontextprotocol/server-filesystem |
| Category | Filesystem |
| Configuration | Specify allowed directories as arguments |
GitHub
GitHub API operations including repos, issues, and PRs.
1{
2 "name": "github",
3 "transport": "stdio",
4 "command": "npx",
5 "args": ["-y", "@modelcontextprotocol/server-github"],
6 "env": {
7 "GITHUB_TOKEN": "${GITHUB_TOKEN}"
8 }
9}| Package | @modelcontextprotocol/server-github |
| Category | Git |
| Required Env | GITHUB_TOKEN |
Git
Local Git repository operations.
1{
2 "name": "git",
3 "transport": "stdio",
4 "command": "npx",
5 "args": ["-y", "@modelcontextprotocol/server-git"]
6}| Package | @modelcontextprotocol/server-git |
| Category | Git |
| Required Env | None |
PostgreSQL
Query and manage PostgreSQL databases.
1{
2 "name": "postgres",
3 "transport": "stdio",
4 "command": "npx",
5 "args": ["-y", "@modelcontextprotocol/server-postgres"],
6 "env": {
7 "DATABASE_URL": "${DATABASE_URL}"
8 }
9}| Package | @modelcontextprotocol/server-postgres |
| Category | Database |
| Required Env | DATABASE_URL (connection string) |
SQLite
Query SQLite databases.
1{
2 "name": "sqlite",
3 "transport": "stdio",
4 "command": "npx",
5 "args": [
6 "-y",
7 "@modelcontextprotocol/server-sqlite",
8 "--db-path",
9 "/path/to/database.db"
10 ]
11}| Package | @modelcontextprotocol/server-sqlite |
| Category | Database |
| Configuration | --db-path argument for database location |
Brave Search
Web search via Brave Search API.
1{
2 "name": "brave-search",
3 "transport": "stdio",
4 "command": "npx",
5 "args": ["-y", "@modelcontextprotocol/server-brave-search"],
6 "env": {
7 "BRAVE_API_KEY": "${BRAVE_API_KEY}"
8 }
9}| Package | @modelcontextprotocol/server-brave-search |
| Category | API/Web |
| Required Env | BRAVE_API_KEY |
Fetch
Fetch and parse web content.
1{
2 "name": "fetch",
3 "transport": "stdio",
4 "command": "npx",
5 "args": ["-y", "@modelcontextprotocol/server-fetch"]
6}| Package | @modelcontextprotocol/server-fetch |
| Category | API/Web |
| Required Env | None |
Puppeteer
Browser automation for web scraping and testing.
1{
2 "name": "puppeteer",
3 "transport": "stdio",
4 "command": "npx",
5 "args": ["-y", "@modelcontextprotocol/server-puppeteer"]
6}| Package | @modelcontextprotocol/server-puppeteer |
| Category | API/Web |
| Required Env | None (Chrome/Chromium required) |
Google Drive
Access and manage Google Drive files.
1{
2 "name": "google-drive",
3 "transport": "stdio",
4 "command": "npx",
5 "args": ["-y", "@anthropic/mcp-server-gdrive"],
6 "env": {
7 "GOOGLE_APPLICATION_CREDENTIALS": "${GOOGLE_APPLICATION_CREDENTIALS}"
8 }
9}| Package | @anthropic/mcp-server-gdrive |
| Category | Cloud |
| Required Env | GOOGLE_APPLICATION_CREDENTIALS (OAuth) |
AWS
AWS service integration.
1{
2 "name": "aws",
3 "transport": "stdio",
4 "command": "npx",
5 "args": ["-y", "@anthropic/mcp-server-aws"],
6 "env": {
7 "AWS_ACCESS_KEY_ID": "${AWS_ACCESS_KEY_ID}",
8 "AWS_SECRET_ACCESS_KEY": "${AWS_SECRET_ACCESS_KEY}",
9 "AWS_REGION": "${AWS_REGION}"
10 }
11}| Package | @anthropic/mcp-server-aws |
| Category | Cloud |
| Required Env | AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION |
Slack
Slack workspace integration.
1{
2 "name": "slack",
3 "transport": "stdio",
4 "command": "npx",
5 "args": ["-y", "@modelcontextprotocol/server-slack"],
6 "env": {
7 "SLACK_BOT_TOKEN": "${SLACK_BOT_TOKEN}"
8 }
9}| Package | @modelcontextprotocol/server-slack |
| Category | Productivity |
| Required Env | SLACK_BOT_TOKEN |
Generated Configuration
MCP servers are configured in .mcp.json at the project root:
1{
2 "mcpServers": {
3 "filesystem": {
4 "command": "npx",
5 "args": ["-y", "@modelcontextprotocol/server-filesystem", "./data"]
6 },
7 "github": {
8 "command": "npx",
9 "args": ["-y", "@modelcontextprotocol/server-github"],
10 "env": {
11 "GITHUB_TOKEN": "${GITHUB_TOKEN}"
12 }
13 }
14 }
15}Environment variables
Environment variable references like ${GITHUB_TOKEN} are resolved at runtime from your .env file.
Creating Custom Servers
To add a custom MCP server:
- Determine the transport type (stdio, http, sse, sdk)
- Configure the command/URL and arguments
- Set required environment variables
- Add to
.mcp.json
MCP ecosystem
The MCP ecosystem is growing. Check the MCP Servers repository for the latest available servers.