Connect Claude Code to tools via MCP
Learn how to connect Claude Code to your tools with the Model Context Protocol.
Claude Code can connect to hundreds of external tools and data sources through the Model Context Protocol (MCP), an open-source standard for AI-tool integrations. MCP servers give Claude Code access to your tools, databases, and APIs.
What you can do with MCP
With MCP servers connected, you can ask Claude Code to:
- Implement features from issue trackers: “Add the feature described in JIRA issue ENG-4521 and create a PR on GitHub.”
- Analyze monitoring data: “Check Sentry and Statsig to check the usage of the feature described in ENG-4521.”
- Query databases: “Find emails of 10 random users who used feature ENG-4521, based on our Postgres database.”
- Integrate designs: “Update our standard email template based on the new Figma designs that were posted in Slack”
- Automate workflows: “Create Gmail drafts inviting these 10 users to a feedback session about the new feature.”
Popular MCP servers
Here are some commonly used MCP servers you can connect to Claude Code:
Use third party MCP servers at your own risk - Anthropic has not verified the correctness or security of all these servers. Make sure you trust MCP servers you are installing. Be especially careful when using MCP servers that could fetch untrusted content, as these can expose you to prompt injection risk.
Development & Testing Tools
Monitor errors, debug production issues
Command
claude mcp add --transport http sentry https://mcp.sentry.dev/mcp
Security analysis for dependencies
Command
claude mcp add --transport http socket https://mcp.socket.dev/
Provides access to Hugging Face Hub information and Gradio AI Applications
Command
claude mcp add --transport http hugging-face https://huggingface.co/mcp
Debug faster with AI agents that can access Jam recordings like video, console logs, network requests, and errors
Command
claude mcp add --transport http jam https://mcp.jam.dev/mcp
Project Management & Documentation
Interact with your Asana workspace to keep projects on track
Command
claude mcp add --transport sse asana https://mcp.asana.com/sse
Manage your Jira tickets and Confluence docs
Command
claude mcp add --transport sse atlassian https://mcp.atlassian.com/v1/sse
Task management, project tracking
Command
claude mcp add clickup --env CLICKUP_API_KEY=YOUR_KEY --env CLICKUP_TEAM_ID=YOUR_ID -- npx -y @hauptsache.net/clickup-mcp
Access real-time customer conversations, tickets, and user data
Command
claude mcp add --transport http intercom https://mcp.intercom.com/mcp
Integrate with Linear's issue tracking and project management
Command
claude mcp add --transport sse linear https://mcp.linear.app/sse
Read docs, update pages, manage tasks
Command
claude mcp add --transport http notion https://mcp.notion.com/mcp
Ask questions about your enterprise content, get insights from unstructured data, automate content workflows
Command
claude mcp add --transport http box https://mcp.box.com/
Extract valuable insights from meeting transcripts and summaries
Command
claude mcp add --transport http fireflies https://api.fireflies.ai/mcp
Manage monday.com boards by creating items, updating columns, assigning owners, setting timelines, adding CRM activities, and writing summaries
Command
claude mcp add --transport sse monday https://mcp.monday.com/sse
Databases & Data Management
Read/write records, manage bases and tables
Command
claude mcp add airtable --env AIRTABLE_API_KEY=YOUR_KEY -- npx -y airtable-mcp-server
Supplies high quality fundamental financial data sourced from SEC Filings, investor presentations
Command
claude mcp add --transport http daloopa https://mcp.daloopa.com/server/mcp
Access and manage HubSpot CRM data by fetching contacts, companies, and deals, and creating and updating records
Command
claude mcp add --transport http hubspot https://mcp.hubspot.com/anthropic
Payments & Commerce
Integrate PayPal commerce capabilities, payment processing, transaction management
Command
claude mcp add --transport http paypal https://mcp.paypal.com/mcp
Analyze, troubleshoot, and optimize Plaid integrations. Banking data, financial account linking
Command
claude mcp add --transport sse plaid https://api.dashboard.plaid.com/mcp/sse
Use an agent to build on Square APIs. Payments, inventory, orders, and more
Command
claude mcp add --transport sse square https://mcp.squareup.com/sse
Payment processing, subscription management, and financial transactions
Command
claude mcp add --transport http stripe https://mcp.stripe.com
Design & Media
Access designs, export assetsRequires latest Figma Desktop with Dev Mode MCP Server. If you have an existing server at http://127.0.0.1:3845/sse, delete it first before adding the new one.
Command
claude mcp add --transport http figma-dev-mode-mcp-server http://127.0.0.1:3845/mcp
Upload, manage, transform, and analyze your media assets
Command
claude mcp add --transport http cloudinary https://mcp.cloudinary.com/mcp
Build video creation capabilities into your applications
Command
claude mcp add --transport sse invideo https://mcp.invideo.io/sse
Browse, summarize, autofill, and even generate new Canva designs directly from Claude
Command
claude mcp add --transport http canva https://mcp.canva.com/mcp
Infrastructure & DevOps
Build applications, analyze traffic, monitor performance, and manage security settings through CloudflareMultiple services available. See documentation for specific server URLs. Claude Code can use the Cloudflare CLI if installed.
Create, deploy, and manage websites on Netlify. Control all aspects of your site from creating secrets to enforcing access controls to aggregating form submissions
Command
claude mcp add --transport http netlify https://netlify-mcp.netlify.app/mcp
Configure and manage Stytch authentication services, redirect URLs, email templates, and workspace settings
Command
claude mcp add --transport http stytch http://mcp.stytch.dev/mcp
Vercel's official MCP server, allowing you to search and navigate documentation, manage projects and deployments, and analyze deployment logs—all in one place
Command
claude mcp add --transport http vercel https://mcp.vercel.com/
Automation & Integration
Need a specific integration? Find hundreds more MCP servers on GitHub, or build your own using the MCP SDK.
Installing MCP servers
MCP servers can be configured in three different ways depending on your needs:
Option 1: Add a local stdio server
Stdio servers run as local processes on your machine. They’re ideal for tools that need direct system access or custom scripts.
Understanding the ”—” parameter:
The --
(double dash) separates Claude’s own CLI flags from the command and arguments that get passed to the MCP server. Everything before --
are options for Claude (like --env
, --scope
), and everything after --
is the actual command to run the MCP server.
For example:
claude mcp add myserver -- npx server
→ runsnpx server
claude mcp add myserver --env KEY=value -- python server.py --port 8080
→ runspython server.py --port 8080
withKEY=value
in environment
This prevents conflicts between Claude’s flags and the server’s flags.
Option 2: Add a remote SSE server
SSE (Server-Sent Events) servers provide real-time streaming connections. Many cloud services use this for live updates.
Option 3: Add a remote HTTP server
HTTP servers use standard request/response patterns. Most REST APIs and web services use this transport.
Managing your servers
Once configured, you can manage your MCP servers with these commands:
Tips:
- Use the
--scope
flag to specify where the configuration is stored:local
(default): Available only to you in the current project (was calledproject
in older versions)project
: Shared with everyone in the project via.mcp.json
fileuser
: Available to you across all projects (was calledglobal
in older versions)
- Set environment variables with
--env
flags (e.g.,--env KEY=value
) - Configure MCP server startup timeout using the MCP_TIMEOUT environment variable (e.g.,
MCP_TIMEOUT=10000 claude
sets a 10-second timeout) - Use
/mcp
to authenticate with remote servers that require OAuth 2.0 authentication
Windows Users: On native Windows (not WSL), local MCP servers that use npx
require the cmd /c
wrapper to ensure proper execution.
Without the cmd /c
wrapper, you’ll encounter “Connection closed” errors because Windows cannot directly execute npx
. (See the note above for an explanation of the --
parameter.)
MCP installation scopes
MCP servers can be configured at three different scope levels, each serving distinct purposes for managing server accessibility and sharing. Understanding these scopes helps you determine the best way to configure servers for your specific needs.
Local scope
Local-scoped servers represent the default configuration level and are stored in your project-specific user settings. These servers remain private to you and are only accessible when working within the current project directory. This scope is ideal for personal development servers, experimental configurations, or servers containing sensitive credentials that shouldn’t be shared.
Project scope
Project-scoped servers enable team collaboration by storing configurations in a .mcp.json
file at your project’s root directory. This file is designed to be checked into version control, ensuring all team members have access to the same MCP tools and services. When you add a project-scoped server, Claude Code automatically creates or updates this file with the appropriate configuration structure.
The resulting .mcp.json
file follows a standardized format:
For security reasons, Claude Code prompts for approval before using project-scoped servers from .mcp.json
files. If you need to reset these approval choices, use the claude mcp reset-project-choices
command.
User scope
User-scoped servers provide cross-project accessibility, making them available across all projects on your machine while remaining private to your user account. This scope works well for personal utility servers, development tools, or services you frequently use across different projects.
Choosing the right scope
Select your scope based on:
- Local scope: Personal servers, experimental configurations, or sensitive credentials specific to one project
- Project scope: Team-shared servers, project-specific tools, or services required for collaboration
- User scope: Personal utilities needed across multiple projects, development tools, or frequently-used services
Scope hierarchy and precedence
MCP server configurations follow a clear precedence hierarchy. When servers with the same name exist at multiple scopes, the system resolves conflicts by prioritizing local-scoped servers first, followed by project-scoped servers, and finally user-scoped servers. This design ensures that personal configurations can override shared ones when needed.
Environment variable expansion in .mcp.json
Claude Code supports environment variable expansion in .mcp.json
files, allowing teams to share configurations while maintaining flexibility for machine-specific paths and sensitive values like API keys.
Supported syntax:
${VAR}
- Expands to the value of environment variableVAR
${VAR:-default}
- Expands toVAR
if set, otherwise usesdefault
Expansion locations: Environment variables can be expanded in:
command
- The server executable pathargs
- Command-line argumentsenv
- Environment variables passed to the serverurl
- For SSE/HTTP server typesheaders
- For SSE/HTTP server authentication
Example with variable expansion:
If a required environment variable is not set and has no default value, Claude Code will fail to parse the config.
Practical examples
Example: Monitor errors with Sentry
Authenticate with remote MCP servers
Many cloud-based MCP servers require authentication. Claude Code supports OAuth 2.0 for secure connections.
Add the server that requires authentication
For example:
Use the /mcp command within Claude Code
In Claude code, use the command:
Then follow the steps in your browser to login.
Tips:
- Authentication tokens are stored securely and refreshed automatically
- Use “Clear authentication” in the
/mcp
menu to revoke access - If your browser doesn’t open automatically, copy the provided URL
- OAuth authentication works with both SSE and HTTP transports
Add MCP servers from JSON configuration
If you have a JSON configuration for an MCP server, you can add it directly:
Add an MCP server from JSON
Verify the server was added
Tips:
- Make sure the JSON is properly escaped in your shell
- The JSON must conform to the MCP server configuration schema
- You can use
--scope user
to add the server to your user configuration instead of the project-specific one
Import MCP servers from Claude Desktop
If you’ve already configured MCP servers in Claude Desktop, you can import them:
Import servers from Claude Desktop
Select which servers to import
After running the command, you’ll see an interactive dialog that allows you to select which servers you want to import.
Verify the servers were imported
Tips:
- This feature only works on macOS and Windows Subsystem for Linux (WSL)
- It reads the Claude Desktop configuration file from its standard location on those platforms
- Use the
--scope user
flag to add servers to your user configuration - Imported servers will have the same names as in Claude Desktop
- If servers with the same names already exist, they will get a numerical suffix (e.g.,
server_1
)
Use Claude Code as an MCP server
You can use Claude Code itself as an MCP server that other applications can connect to:
You can use this in Claude Desktop by adding this configuration to claude_desktop_config.json:
Tips:
- The server provides access to Claude’s tools like View, Edit, LS, etc.
- In Claude Desktop, try asking Claude to read files in a directory, make edits, and more.
- Note that this MCP server is simply exposing Claude Code’s tools to your MCP client, so your own client is responsible for implementing user confirmation for individual tool calls.
Use MCP resources
MCP servers can expose resources that you can reference using @ mentions, similar to how you reference files.
Reference MCP resources
List available resources
Type @
in your prompt to see available resources from all connected MCP servers. Resources appear alongside files in the autocomplete menu.
Reference a specific resource
Use the format @server:protocol://resource/path
to reference a resource:
Multiple resource references
You can reference multiple resources in a single prompt:
Tips:
- Resources are automatically fetched and included as attachments when referenced
- Resource paths are fuzzy-searchable in the @ mention autocomplete
- Claude Code automatically provides tools to list and read MCP resources when servers support them
- Resources can contain any type of content that the MCP server provides (text, JSON, structured data, etc.)
Use MCP prompts as slash commands
MCP servers can expose prompts that become available as slash commands in Claude Code.
Execute MCP prompts
Discover available prompts
Type /
to see all available commands, including those from MCP servers. MCP prompts appear with the format /mcp__servername__promptname
.
Execute a prompt without arguments
Execute a prompt with arguments
Many prompts accept arguments. Pass them space-separated after the command:
Tips:
- MCP prompts are dynamically discovered from connected servers
- Arguments are parsed based on the prompt’s defined parameters
- Prompt results are injected directly into the conversation
- Server and prompt names are normalized (spaces become underscores)