# How to fix MCP tools not showing in Cursor

- Tool: MCP
- Difficulty: Beginner
- Time required: 5-10 min
- Compatibility: Cursor 0.40+, all MCP servers
- Last updated: March 2026

## TL;DR

If MCP tools are not appearing in Cursor's Composer, check three things in order: your .cursor/mcp.json has valid JSON syntax, the MCP server is actually running and connected (green dot in MCP status), and the Cursor window has been reloaded after config changes. Cursor also has a soft limit of around 40 tools — if you exceed this, some tools may not appear.

## Fixing MCP Tools Not Showing in Cursor

You have configured an MCP server in Cursor, but when you open Composer and type @, your server's tools do not appear. This is a common issue with several possible causes. This tutorial walks you through each cause in order of likelihood, from simple config errors to the tool count limit.

## Before you start

- Cursor IDE installed (version 0.40 or later)
- An MCP server configured in .cursor/mcp.json
- The MCP server package installed or available via npx/uvx

## Step-by-step guide

### 1. Validate your mcp.json syntax

The most common cause is invalid JSON in your .cursor/mcp.json file. A single trailing comma, missing quote, or mismatched brace will silently prevent all MCP servers from loading. Cursor does not always show a clear error for JSON syntax issues. Open the file and validate it manually or with a JSON linter. Pay special attention to trailing commas after the last item in objects and arrays — JSON does not allow them.

```
// Check your .cursor/mcp.json file
// WRONG — trailing comma breaks JSON
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
    }
  }
}

// RIGHT — no trailing comma
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"]
    }
  }
}

# Validate from terminal:
cat .cursor/mcp.json | python3 -m json.tool
```

**Expected result:** The JSON validator confirms valid syntax, or shows you the exact error to fix.

### 2. Check the MCP server connection status

Cursor shows MCP server connection status in the bottom status bar or in the settings. Look for the MCP indicator — a green dot means connected, red or absent means disconnected. You can also check by opening Cursor's command palette (Cmd+Shift+P) and searching for 'MCP' to see server status. If the server shows as disconnected, the server process may have crashed or failed to start.

```
# Steps to check MCP status in Cursor:
# 1. Open Command Palette: Cmd+Shift+P (macOS) or Ctrl+Shift+P (Windows)
# 2. Type: "MCP" or "Model Context Protocol"
# 3. Look for server status options
# 4. Check if your server shows as connected

# Alternatively, check Cursor's Output panel:
# 1. View → Output (or Cmd+Shift+U)
# 2. Select "MCP" from the dropdown
# 3. Look for connection errors
```

**Expected result:** You can see whether your MCP server is connected or disconnected, and any error messages in the output.

### 3. Reload Cursor after config changes

Cursor reads the mcp.json file at startup or when the window reloads. If you edited the config while Cursor was running, the changes may not have been picked up. Reload the window using Cmd+Shift+P then typing 'Reload Window'. For stubborn cases, quit Cursor entirely and reopen it. This forces a fresh read of the config file and a fresh connection attempt to all servers.

```
# Reload Cursor window:
# 1. Cmd+Shift+P (macOS) or Ctrl+Shift+P (Windows)
# 2. Type: "Developer: Reload Window"
# 3. Press Enter

# If that does not work, fully quit and reopen Cursor
```

**Expected result:** Cursor reloads, reconnects to MCP servers, and tools appear in Composer.

### 4. Verify the server has tools registered

If the server connects but reports zero tools, Composer has nothing to show. Test the server independently using MCP Inspector to confirm it actually exposes tools. Some servers only expose resources or prompts, not tools. Others may require specific environment variables to initialize their tool list. Run the server with MCP Inspector and verify tools appear there.

```
# Test with MCP Inspector
npx -y @modelcontextprotocol/inspector

# In the Inspector web UI:
# 1. Enter your server command
# 2. Click Connect
# 3. Check the Tools tab — tools should be listed
# 4. If no tools appear, the server has none registered
```

**Expected result:** MCP Inspector shows the server's tools, confirming they are properly registered.

### 5. Work around the tool count limit

Cursor has a soft limit of approximately 40 tools across all connected MCP servers. If you have many servers or servers that expose dozens of tools each, some tools may be silently dropped. The fix is to reduce the number of connected servers or configure servers to expose fewer tools. Prioritize the servers you use most often. If your workflow requires many MCP tools and you need help designing an efficient configuration, the RapidDev team can help optimize your setup.

```
// Example: connect only the servers you need
// Instead of 5 servers with 50+ total tools:
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"]
    },
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/path"]
    }
  }
}
// Keep total tools under ~40 for best results
```

**Expected result:** With fewer total tools, all tools appear correctly in Cursor's Composer.

## Complete code example

File: `.cursor/mcp.json`

```json
{
  "mcpServers": {
    "github": {
      "command": "/opt/homebrew/bin/npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
      }
    },
    "filesystem": {
      "command": "/opt/homebrew/bin/npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/yourname/projects"
      ]
    },
    "memory": {
      "command": "/opt/homebrew/bin/npx",
      "args": ["-y", "@modelcontextprotocol/server-memory"]
    }
  }
}
```

## Common mistakes

- **Having trailing commas in mcp.json** — undefined Fix: JSON does not allow trailing commas. Remove the comma after the last item in every object and array.
- **Using the project-scoped config when you meant global, or vice versa** — undefined Fix: Project config is .cursor/mcp.json in your workspace root. Global config is ~/.cursor/mcp.json. Make sure you are editing the right file.
- **Not reloading Cursor after editing mcp.json** — undefined Fix: Use Cmd+Shift+P → Reload Window after every config change.
- **Exceeding the ~40 tool limit with too many servers** — undefined Fix: Reduce the number of connected servers or consolidate tools into fewer custom servers.

## Best practices

- Validate mcp.json with a JSON linter after every edit
- Use absolute paths in the command field to avoid PATH issues
- Reload Cursor's window after any MCP configuration change
- Keep total tool count under 40 across all servers for reliable tool discovery
- Check Cursor's Output panel (MCP channel) for detailed connection errors
- Test new servers with MCP Inspector before adding them to Cursor

## Frequently asked questions

### Where is the .cursor/mcp.json file located?

For project-scoped servers, it is at .cursor/mcp.json inside your workspace root directory. For global servers available across all projects, it is at ~/.cursor/mcp.json in your home directory.

### Can I use both project-scoped and global MCP servers?

Yes, Cursor merges both configurations. Project-scoped servers from .cursor/mcp.json are combined with global servers from ~/.cursor/mcp.json. If the same server name appears in both, the project-scoped config takes precedence.

### How many tools can Cursor handle from MCP servers?

Cursor has a soft limit of approximately 40 tools across all connected servers. Beyond this, some tools may not appear in the Composer interface. This limit may change in future Cursor updates.

### Do I need Cursor Pro for MCP servers?

MCP server support is available on all Cursor plans, including the free Hobby tier. However, Agent mode (which makes the best use of MCP tools) requires Cursor Pro or higher.

### Can I see which tools are loaded from each server?

Check the Cursor Output panel (View → Output → select MCP) to see connection logs. MCP Inspector provides the most detailed view of tools per server — use it for comprehensive debugging.

---

Source: https://www.rapidevelopers.com/mcp-tutorial/how-to-fix-mcp-tool-not-showing-in-cursor
© RapidDev — https://www.rapidevelopers.com/mcp-tutorial/how-to-fix-mcp-tool-not-showing-in-cursor
