How-to

Claude MCP Integration: A Step-by-Step Setup Guide

Learn how to set up a Claude MCP integration in minutes. Connect the Model Context Protocol to your tools, automate developer workflows, and build agentic AI pipelines.

M
Max Beech· Founder
··8 min read
Claude MCP Integration: A Step-by-Step Setup Guide
TL;DR - The Model Context Protocol (MCP) lets Claude call external tools and APIs directly inside a conversation — no copy-paste, no context-switching. - A working Claude MCP integration requires an MCP server, a transport layer (stdio or SSE), and a host application such as Claude Desktop, Cursor, or a custom agent. - Setup takes under 15 minutes if your server is already running; the most common stumbling block is misconfigured JSON in claude_desktop_config.json. - OpenHelm's hosted MCP server at mcp.openhelm.ai gives teams a production-ready endpoint with credential vaulting, human-in-the-loop approvals, and a full audit trail out of the box. - MCP is not just for Claude — the same server works with any MCP-compatible host, including Cursor AI, Windsurf, and custom agentic AI API clients. - Once connected, you can automate entire developer workflows: read Jira tickets, commit code, send Slack messages, and trigger CI runs — all from a single prompt.

---

Why Your Claude Integration Keeps Hitting a Wall

Claude is sharp. But without live tool access, it is answering from memory. Your team pastes in Jira ticket text, screenshots of dashboards, and chunks of log output — and Claude does its best with stale snapshots of a moving target.

The Model Context Protocol fixes that. It gives Claude a standardised channel to call real tools in real time. If you have been meaning to set up a proper Claude MCP integration but kept putting it off, this guide walks you through it end-to-end — from installing your first server to running a multi-tool agentic workflow in production.

---

What Is MCP, and Why Does It Matter Now?

Anthropic published the Model Context Protocol specification in late 2024. The core idea is simple: instead of embedding tool logic directly into a model, you expose capabilities through a lightweight server that any compatible host can call.

That server can wrap anything — a database, a REST API, a shell command, a SaaS integration. The model sees a list of tools with typed input schemas. It decides which tool to call and what arguments to pass. The server executes the call and returns the result.

As Anthropic's own documentation puts it, MCP turns a language model into "a client that connects to any number of servers, each providing different capabilities." That modularity is the whole point. You write the server once and use it with Claude Desktop, Cursor AI integration, your own agentic AI API client, or any other MCP-compatible host.

If you want a deeper primer on the protocol itself, our post on what an MCP server actually is covers the internals in plain English.

---

How a Claude MCP Integration Actually Works

Before touching any config files, it helps to have a clear mental model of the three moving parts.

1. The MCP Server

The server exposes tools. Each tool has a name, a description, and a JSON Schema for its input parameters. When Claude calls a tool, the server runs the underlying logic — hitting an API, querying a database, executing a script — and returns structured output.

Servers communicate over one of two transports:

TransportBest forNotes
stdioLocal development, CLI toolsProcess launched by the host; no network exposure
SSE (Server-Sent Events)Remote or hosted serversHTTP-based; works across machines and networks
Streamable HTTPProduction deploymentsNewer spec; replaces SSE in MCP 2025-03-26+

OpenHelm's MCP server at mcp.openhelm.ai uses Streamable HTTP, which means you connect to it from anywhere without managing a local process.

2. The Host Application

The host is whatever talks to Claude. Claude Desktop is the canonical example. Cursor AI, Windsurf, and custom clients built on Anthropic's SDK all count as hosts too. The host reads your server configuration, launches or connects to your servers, and injects the available tools into Claude's context window.

3. The Client (Inside the Host)

The MCP client lives inside the host. It manages the lifecycle of server connections, handles the JSON-RPC message passing, and surfaces tool results back to the model. You rarely interact with the client directly — it is the plumbing between host and server.

---

Setting Up Claude MCP Integration: Step by Step

Step 1 — Choose Your Server

You have three routes:

Run a community server locally. The MCP servers repository lists dozens of reference implementations — filesystem, GitHub, PostgreSQL, Brave Search, and more. Clone the repo, install dependencies, and you are ready in minutes.

Write your own server. Anthropic's SDKs for Python and TypeScript make this straightforward. You define tools as typed functions; the SDK handles the protocol layer.

Use a hosted server. This is the production route for teams. OpenHelm's MCP server runs in the cloud, connects to your existing credentials vault, and gives every tool call an audit entry. No local process to babysit.

Step 2 — Configure Claude Desktop

Open (or create) your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Add your server under mcpServers. Here is a minimal example using the official filesystem server:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/yourname/projects"
      ]
    }
  }
}

For a remote server like OpenHelm, you use a URL instead:

{
  "mcpServers": {
    "openhelm": {
      "url": "https://mcp.openhelm.ai/sse",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

Save the file, quit Claude Desktop fully (check the menu bar), and relaunch it. You should see a hammer icon in the input bar indicating tools are available.

Step 3 — Verify the Connection

Type a simple test prompt: *"List the tools you have access to."* Claude should enumerate your available tools by name. If it does not, the most likely culprits are:

  • JSON syntax error in your config file — run it through a JSON validator.
  • Server not running — for stdio servers, check that Node or Python is on your PATH.
  • Auth failure — for remote servers, confirm your API key is correct and has not expired.

Step 4 — Wire Up Cursor AI Integration

Cursor reads MCP config from .cursor/mcp.json in your project root (or the global ~/.cursor/mcp.json). The schema is identical to Claude Desktop's format. Drop in the same mcpServers block and restart Cursor. Your tools will appear in Cursor's Agent mode.

This is particularly useful for developer workflow automation: Cursor can read a ticket, plan the implementation, write the code, and push a branch — all by chaining MCP tool calls without ever leaving the editor.

Step 5 — Test a Real Workflow

Once connected, try something concrete. With the GitHub MCP server installed, you might ask:

*"Find all open PRs in acme-corp/backend that have been waiting for review for more than three days. Summarise the diff for each one."*

Claude calls list_pull_requests, filters by age, then calls get_pull_request_diff for each match, and synthesises the results. No copy-paste. No tab switching. The whole thing runs in the conversation.

---

A Real-World Example: The RevOps Team at a Series B SaaS Company

Sarah, a RevOps lead at a 120-person SaaS company, was spending two hours every Monday pulling together pipeline data from Salesforce, churn signals from Mixpanel, and support ticket counts from Zendesk before her weekly call with the CRO.

After connecting OpenHelm's MCP server to Claude Desktop, she replaced that process with a single prompt. Claude calls the Salesforce, Mixpanel, and Zendesk tools in parallel, formats the output into a structured briefing, and flags any accounts that show risk signals across all three sources. The whole run takes 40 seconds.

The key was not just the tools — it was the credential vault. Sarah's Salesforce OAuth token and Mixpanel API key live in OpenHelm's encrypted vault. Claude never sees the raw credentials. Every tool call logs to the audit trail, which her security team required before sign-off.

---

Common Mistakes and How to Avoid Them

Storing credentials in the config file. It works locally, but it is a security liability the moment that file touches version control or a shared machine. Use environment variables at minimum; use a credential vault in production.

Running too many servers at once. Claude has a finite context window. Connecting 15 MCP servers dumps hundreds of tool descriptions into that window before you have typed a single word. Start with the servers your workflow actually needs.

Ignoring error output. MCP servers write errors to stderr. On macOS, you can tail Claude Desktop's logs at ~/Library/Logs/Claude/. Reading those logs is almost always faster than guessing what went wrong.

Not setting tool descriptions carefully. If your tool description is vague, Claude will call the wrong tool or hallucinate arguments. Treat tool descriptions like function docstrings — specific, with examples of valid inputs.

---

MCP vs Other Integration Approaches

ApproachStrengthsWeaknesses
MCPStandardised, model-agnostic, composableRequires server setup; newer ecosystem
Function calling (raw API)Fine-grained controlEach client implements its own schema
Zapier / MakeNo code, huge libraryNot AI-native; limited branching logic
LangChain toolsFlexible, Python-nativeVendor-specific; not portable across hosts
OpenHelm workflowsHosted, audited, human-in-loop readyRequires OpenHelm account

The agentic AI API pattern that MCP enables sits in a different category from traditional connectors. Zapier moves data on a trigger. An MCP-connected agent decides what data to fetch, when, and why — based on the goal, not a pre-wired flowchart.

"The shift from connector-based automation to goal-directed agents is the single biggest change in enterprise workflow tooling since the RPA wave." — *Benedict Evans, independent technology analyst*

For a broader view of how this fits into modern automation stacks, see our post on how AI workflow automation works.

---

Frequently Asked Questions

Does claude mcp integration work without Claude Desktop?

Yes. Claude Desktop is the easiest starting point, but MCP works with any compatible host. Cursor, Windsurf, and custom clients built on Anthropic's Python or TypeScript SDKs all support MCP. You can also connect directly to the Anthropic API with tool use enabled — MCP is one way to define those tools, not the only way.

Is a claude mcp integration safe to use with sensitive credentials?

It can be, provided you handle credentials properly. Running credentials in plaintext inside a config file is not safe for anything beyond local experimentation. In production, use a dedicated credential vault — OpenHelm's credential vaulting feature encrypts secrets at rest and injects them into tool calls without exposing them to the model or the user.

What is the difference between MCP and the OpenAI function calling spec?

MCP is a transport and discovery protocol — it defines how a host finds servers, lists tools, and executes calls. OpenAI's function calling spec defines how you pass tool schemas to the chat completions API. They operate at different layers. Claude's native tool use is compatible with both patterns; MCP just standardises the server side so the same server works across multiple models and hosts.

Can I use MCP with the mcp server for chatgpt or other models?

MCP is model-agnostic by design. The same server that powers your Claude MCP integration will work with any host that implements the protocol. Several OpenAI-compatible clients are adding MCP support, and open-source projects are building bridges between MCP and other model APIs.

How does human-in-the-loop approval work with MCP tool calls?

By default, Claude Desktop shows a confirmation dialogue before each tool call. In production agentic pipelines, you typically want more granular control. OpenHelm's human-in-the-loop approval queue lets you define policies — approve all write operations, flag anything touching production systems, auto-approve read-only calls — so your team retains oversight without manually rubber-stamping every step.

---

Get Your MCP Integration Running Today

A Claude MCP integration is not a research project — it is a weekend afternoon of setup that permanently changes how your team works with AI. The protocol is stable, the tooling is mature, and the productivity gains are immediate.

If you want to skip the infrastructure work and connect a production-ready MCP server to Claude in minutes, OpenHelm's MCP endpoint is ready to go. It includes credential vaulting, an audit trail, and human-in-the-loop approvals out of the box — everything your security team will ask for before enterprise rollout.

Not sure where to start? Book a 20-minute call and we will map out the right setup for your team's existing tools and workflows.

More from the blog

Stop doing the work around the work

OpenHelm connects to your tools, reads the context, and does the steps, so you sign off on the result instead of producing it. See how it covers an entire role’s weekly workload, check the pricing, or run it yourself with the free local app.