Skip to main content
Glama
blackpwnguin

Claude Code MCP for Cursor

by blackpwnguin

Claude Code MCP for Cursor

Use your existing Claude subscription ($20/month) with Cursor IDE instead of paying separate API costs.

๐ŸŽฏ What This Does

This MCP (Model Context Protocol) server bridges Claude Code CLI with Cursor IDE, allowing you to:

  • โœ… Use your existing $20/month Claude subscription in Cursor

  • โœ… Avoid separate pay-per-use API billing

  • โœ… Keep your Claude usage within your monthly plan limits

  • โœ… Get the same Claude experience directly in your IDE

Related MCP server: mlx-mcp-server

๐Ÿ’ฐ Cost Benefits

Method

Cost Structure

Monthly Estimate*

This MCP Bridge

$20/month (your existing plan)

$20

Direct API

Pay-per-token usage

$30-100+

*Estimates vary based on usage patterns

๐Ÿ”ง Prerequisites

  1. Claude Code CLI installed and authenticated

    # Install Claude Code (if not already installed)
    curl -fsSL https://claude.ai/install.sh | bash
    
    # Verify it works
    claude chat "Hello"
  2. Cursor IDE with MCP support

  3. Node.js installed on your system

๐Ÿ“ฆ Installation

Step 1: Clone this repository

git clone https://github.com/Blackpenguin46/Claude-Code-MCP-for-Cursor.git
cd Claude-Code-MCP-for-Cursor

Step 2: Set up the MCP server in your project

Copy the files to your project directory:

# Copy the MCP server to your project root
cp claude-mcp-server.js /path/to/your/project/

# Create the .cursor directory if it doesn't exist
mkdir -p /path/to/your/project/.cursor

# Copy the MCP configuration
cp mcp.json /path/to/your/project/.cursor/

Your project structure should look like:

your-project/
โ”œโ”€โ”€ .cursor/
โ”‚   โ””โ”€โ”€ mcp.json
โ”œโ”€โ”€ claude-mcp-server.js
โ””โ”€โ”€ (your other project files)

Step 3: Configure Cursor

  1. Open Cursor

  2. Go to Settings โ†’ Tools & Integrations โ†’ MCP Tools

  3. You should see "claude-code" in the MCP Tools section

  4. Make sure the toggle is enabled (green)

  5. Verify it shows "1 tools enabled" (not "0 tools enabled")

If you see "0 tools enabled":

  • Restart Cursor completely

  • Check that files are in the correct locations

  • Ensure claude-mcp-server.js is executable: chmod +x claude-mcp-server.js

๐Ÿงช Testing

Test that everything works:

  1. Test Claude Code directly:

    claude chat "What is 2+2?"
  2. Test the MCP server:

    cd your-project
    node claude-mcp-server.js

    Then paste this JSON and press Enter:

    {"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"claude_chat","arguments":{"message":"What is 2+2?"}}}

    You should see a response like:

    {"jsonrpc":"2.0","id":3,"result":{"content":[{"type":"text","text":"4"}]}}
  3. Test in Cursor:

    • Open a chat in Cursor

    • Ask Claude a question

    • Verify the response comes from your Claude Code subscription

๐Ÿ” How It Works

graph LR
    A[Cursor IDE] --> B[MCP Server]
    B --> C[Claude Code CLI]
    C --> D[Your $20 Subscription]
    D --> E[Claude API]
    E --> D
    D --> C
    C --> B
    B --> A
  1. Cursor sends chat requests to the MCP server

  2. MCP Server translates requests to Claude Code CLI commands

  3. Claude Code uses your existing subscription to contact Claude

  4. Response flows back through the chain to Cursor

๐Ÿ“ File Descriptions

claude-mcp-server.js

The main MCP server that bridges Cursor and Claude Code. Handles:

  • JSON-RPC protocol for MCP communication

  • Spawning Claude Code processes

  • Response cleaning and formatting

  • Error handling and timeouts

.cursor/mcp.json

Cursor's MCP configuration file that tells Cursor how to connect to the server:

{
  "mcpServers": {
    "claude-code": {
      "command": "node",
      "args": ["claude-mcp-server.js"],
      "env": {}
    }
  }
}

๐Ÿšจ Troubleshooting

"0 tools enabled" in Cursor

  • Ensure files are in correct locations

  • Restart Cursor completely

  • Check file permissions: chmod +x claude-mcp-server.js

  • Verify Claude Code works: claude chat "test"

MCP server hangs or errors

  • Test Claude Code independently first

  • Check that you're authenticated with Claude Code

  • Verify Node.js is installed and working

  • Look at Cursor's developer console for errors

"Claude Code error" messages

  • Ensure Claude Code is properly installed and authenticated

  • Check your Claude subscription status

  • Verify you haven't exceeded usage limits

๐Ÿ”„ Usage Patterns

Best Practices

  • Development work: Perfect for code review, debugging, refactoring

  • Documentation: Great for generating comments and documentation

  • Learning: Ideal for understanding new codebases or technologies

What Counts Against Your Limits

  • Each message sent through Cursor counts against your $20/month plan limits

  • Same usage tracking as using Claude Code directly in terminal

  • Monitor your usage in Claude's web interface

๐ŸŽ Benefits Over Direct API

Feature

MCP Bridge

Direct API

Cost Predictability

โœ… Fixed $20/month

โŒ Variable usage costs

Usage Limits

โœ… Clear monthly limits

โŒ Surprise bills possible

Setup Complexity

โš ๏ธ Initial setup required

โœ… Simple API key

Claude Code Integration

โœ… Uses existing auth

โŒ Separate billing

๐Ÿค Contributing

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes

  4. Test thoroughly

  5. Submit a pull request

๐Ÿ“„ License

MIT License - feel free to use and modify as needed.

โšก Quick Start Summary

# 1. Clone repo
git clone https://github.com/Blackpenguin46/Claude-Code-MCP-for-Cursor.git

# 2. Copy files to your project
cp claude-mcp-server.js /path/to/project/
mkdir -p /path/to/project/.cursor
cp mcp.json /path/to/project/.cursor/

# 3. Test
claude chat "Hello"  # Verify Claude Code works
node claude-mcp-server.js  # Test MCP server

# 4. Restart Cursor and check MCP Tools section

๐Ÿ’ก Pro Tip: This setup is perfect for developers who use Claude regularly for coding tasks and want predictable monthly costs instead of surprise API bills!

Available Tools

1 tool
claude_chatB

Send a message to Claude using Claude Code CLI

ParametersJSON Schema
NameRequiredDescriptionDefault
messageYesThe message to send to Claude

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full responsibility for behavioral transparency. It does not disclose any side effects, statefulness, authentication requirements, or rate limits. The agent is left to assume basic behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence without unnecessary words. It is front-loaded and efficient, though it may be too brief for complete clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low complexity (1 parameter, no output schema), the description covers the basic action. However, it lacks context about conversation continuity and response behavior, making it adequate but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with a clear description for the 'message' parameter. The tool description adds no additional meaning beyond the schema, earning the baseline score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Send' and the resource 'a message to Claude', with the additional context of using Claude Code CLI. It is specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No sibling tools exist, so alternative guidance is unnecessary. However, the description does not provide any context on when to use this tool, such as initiating versus continuing a conversation. It is adequate but minimal.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool updatev1.0.0
    • First observedclaude_chat

TDQS

B3.4/5.0
Disambiguation5/5

With only one tool, there is no possibility of confusion between tools. The single tool has a clearly distinct purpose.

Naming Consistency5/5

A single tool named 'claude_chat' follows a consistent verb_noun pattern in snake_case. No inconsistencies exist.

Tool Count2/5

One tool for a chat interaction is too few; typical chat servers would include tools for getting responses, managing history, or configuring context. This feels incomplete for the domain.

Completeness2/5

The server only offers a 'send message' action. There is no way to retrieve responses, manage conversation state, or clear history, which are obvious gaps for a chat interface.

Maintenance

ActivitySlowing
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/blackpwnguin/Claude-Code-MCP-for-Cursor'

If you have feedback or need assistance with the MCP directory API, please join our Discord server