How MCP works
MCP servers run as local processes that Claude Code connects to. Claude sees the server’s tools and can call them like any other built-in tool. The connection is configured in~/.claude/settings.json (global) or .claude/settings.json (project-level).
Configuring an MCP server
command— the executable to runargs— arguments passed to the command (usually the package name)env— optional environment variables for authentication
Useful MCP servers
Filesystem (extended)
Provides recursive directory reading and content search beyond Claude Code’s defaults:/ or your home directory.
Brave Search
Real-time web search without leaving Claude Code:GitHub
Read issues, PRs, and file contents from GitHub repos without cloning:Memory (persistent notes)
Lets Claude maintain a persistent knowledge graph across sessions:Project-level vs global servers
- Global (
~/.claude/settings.json) — available in every Claude Code session on this machine - Project-level (
.claude/settings.jsonin repo root) — only available when Claude Code is running in that repo
Checking active servers
In a Claude Code session:Security considerations
- Each MCP server runs with the permissions of your user account
- Filesystem servers can read any path you grant them — scope paths tightly
- Never commit
settings.jsonfiles containing API keys — use environment variables or secret management - Prefer read-only servers unless write access is required for the task
AI Tools Overview
How Claude, OpenClaw, and Codex work together.