Cursor MCP Setup
Connect your MCP bundles to Cursor to give your AI coding assistant access to external tools and APIs.
Requirements
- Latest Cursor version
- A bundle enabled in your MCPBundles dashboard
- Credentials connected for the providers in your bundle
Time to complete: 2-3 minutes
Option A: CLI Setup (Recommended)
If you have terminal access (you're using Cursor, so you do), the fastest way to connect is via the MCPBundles CLI:
pip install mcpbundles
mcpbundles init
This automatically discovers your bundles, writes the Cursor MCP config, and handles authentication. No manual JSON editing needed.
After running mcpbundles init, restart Cursor and your tools will be available.
Want more control? Use mcpbundles tools to browse available tools, or mcpbundles call <tool-name> to test a tool directly from your terminal.
Option B: Manual Config Setup
1. Get Your Bundle URL
- Log in to MCPBundles Dashboard
- Click on the bundle you want to use
- Scroll to the "Quick Setup" section (only visible when bundle is operational)
- Copy the MCP Server URL (looks like
https://mcp.mcpbundles.com/bundle/YOUR-BUNDLE-SLUG)
2. Locate Your MCP Config File
Cursor stores MCP server configuration in .cursor/mcp.json.
File location by OS:
macOS:
~/.cursor/mcp.json
Windows:
%USERPROFILE%\.cursor\mcp.json
Linux:
~/.cursor/mcp.json
Note: If the file doesn't exist, create it.
3. Edit the Config File
Option A: If file is empty or doesn't exist
Create a new file with this content:
{
"mcpServers": {
"your-bundle-name": {
"url": "https://mcp.mcpbundles.com/bundle/YOUR-BUNDLE-ID"
}
}
}
Option B: If file already has other MCP servers
Add your bundle to the existing mcpServers object:
{
"mcpServers": {
"existing-server": {
"url": "https://some-other-server.com"
},
"your-bundle-name": {
"url": "https://mcp.mcpbundles.com/bundle/YOUR-BUNDLE-ID"
}
}
}
Replace:
your-bundle-name- A short identifier (no spaces, e.g.,marketing-automation)https://mcp.mcpbundles.com/bundle/YOUR-BUNDLE-ID- Your actual bundle URL from step 1
4. Save and Restart Cursor
- Save the
mcp.jsonfile - Quit Cursor completely (not just close the window)
- Reopen Cursor
- Wait 10-20 seconds for MCP servers to initialize
5. Verify the Connection
- Open the Cursor command palette (
Cmd/Ctrl + Shift + P) - Type "MCP" and look for MCP-related commands
- Or simply ask the AI: "What tools do you have access to?"
Expected response:
"I have access to tools from the following MCP servers:
- your-bundle-name: list_campaigns, create_contact, send_message..."
Using Tools in Cursor
Once connected, Cursor can use your tools when relevant to your coding tasks.
Example Prompts
Fetch data for development:
"Get the latest campaign data from Smartlead and create a TypeScript interface for it"
Automate deployment:
"List my GitHub repos, find the one called 'api-server', and check if there are any open PRs"
CRM integration:
"Fetch the latest 10 contacts from HubSpot and generate a SQL migration to import them"
Cursor will call the relevant tools, get real data, and use it in code generation or analysis.
Configuration Examples
Single Bundle (Minimal)
{
"mcpServers": {
"marketing": {
"url": "https://mcp.mcpbundles.com/bundle/abc123"
}
}
}
Multiple Bundles
{
"mcpServers": {
"marketing": {
"url": "https://mcp.mcpbundles.com/bundle/abc123"
},
"dev-tools": {
"url": "https://mcp.mcpbundles.com/bundle/def456"
},
"crm": {
"url": "https://mcp.mcpbundles.com/bundle/ghi789"
}
}
}
Cursor will have access to tools from all bundles simultaneously.
With Other MCP Servers
MCPBundles works alongside other MCP servers:
{
"mcpServers": {
"mcpbundles-marketing": {
"url": "https://mcp.mcpbundles.com/bundle/abc123"
},
"local-filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/you/projects"]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"]
}
}
}
Troubleshooting
"MCP server connection failed"
Cause: The URL is unreachable or invalid.
Fix:
- Check the URL is exactly as shown in your dashboard (including
https://) - Verify you have internet connection
- Make sure the bundle is enabled in your dashboard
- Try copying the URL again
Tools don't appear after adding config
Cause: Cursor hasn't reloaded the MCP config.
Fix:
- Quit Cursor completely (not just close window)
- Wait 5 seconds
- Reopen Cursor
- Wait 20 seconds for MCP to initialize
- Try asking "What tools do you have?"
"Authentication required" when calling a tool
Cause: Provider credentials not connected.
Fix:
- Go to Dashboard → Providers
- Find the provider for that tool
- Click Connect and complete OAuth or add API key
- Try the tool again in Cursor
See Provider Credentials Guide.
JSON syntax error in mcp.json
Symptom: Cursor shows "Invalid JSON" or doesn't load any MCP servers.
Common mistakes:
Missing comma:
{
"mcpServers": {
"bundle1": { "url": "..." } // ❌ Missing comma
"bundle2": { "url": "..." }
}
}
Should be:
{
"mcpServers": {
"bundle1": { "url": "..." }, // ✅ Has comma
"bundle2": { "url": "..." }
}
}
Trailing comma:
{
"mcpServers": {
"bundle": { "url": "..." }, // ❌ Trailing comma
}
}
Should be:
{
"mcpServers": {
"bundle": { "url": "..." } // ✅ No trailing comma
}
}
Fix: Use a JSON validator or VS Code to check syntax.
Bundle shows "Needs Credentials" in dashboard
Cause: Providers not connected.
Fix:
- Dashboard → Bundles → [Your Bundle]
- Scroll to the "Credentials" section
- Find provider cards marked "Not configured" or showing "Error" badges
- Click "Add Credential" (or "Edit" if credential exists) on each provider card
- Complete OAuth or enter API key in the credential panel
- Select validation tool and click "Validate Now"
- Bundle status should become "Ready" with "Credentials valid" subtext
Tools work but return empty data
Cause: Connected to the wrong account or no data exists.
Fix:
- Dashboard → Providers → [Provider Name]
- Check which account is connected (shown in provider details)
- If wrong account, click Reconnect and use correct account
- Verify data exists in the provider's actual app (e.g., log in to Smartlead and check campaigns exist)
Advanced Configuration
Environment Variables
You can use environment variables in mcp.json:
{
"mcpServers": {
"marketing": {
"url": "${MCP_BUNDLE_URL}"
}
}
}
Then set MCP_BUNDLE_URL in your shell:
export MCP_BUNDLE_URL="https://mcp.mcpbundles.com/bundle/abc123"
Useful for:
- Sharing config across team members
- Switching between staging/production bundles
- Keeping secrets out of version control
Per-Project Configuration
You can also create a workspace-specific config:
.cursor/mcp.json in your project root
Cursor will use this instead of the global one when the project is open.
Useful for:
- Different bundles per project
- Team-shared MCP configurations
- Project-specific tool access
Cursor-Specific Features
Tool Call Visibility
Cursor shows tool calls in the chat:
- Tool name and parameters used
- Results returned
- Errors if any
Useful for debugging when tools don't behave as expected.
Context Awareness
Cursor automatically uses tools based on:
- Current file content
- Selected code
- Recent edits
- Open files
Example: If you have a campaigns.ts file open and ask "update this", Cursor might call list_campaigns to get current data.
Code Generation with Live Data
Cursor can:
- Call a tool to get real data
- Inspect the structure
- Generate TypeScript interfaces
- Create mock data based on real examples
- Write API client code that matches actual endpoints
This is more accurate than hallucinated code.
Limitations
Cursor MCP Constraints
- Concurrent tool calls: Limited by Cursor's rate limits
- Large responses: Might be truncated if tool returns massive JSON
- Internet required: Tools need network access
Bundle Readiness
Cursor can only use tools from bundles with valid credentials:
- Ready (with "Credentials valid" subtext) - all providers configured and working
- Setup Required (needs provider configuration for some tools)
If bundle shows "Connection Error":
- Go to Dashboard → Bundles → Your bundle
- Scroll to the "Credentials" section
- Find provider cards showing "Error" badges or marked "Not configured"
- Click "Add Credential" (or "Edit" if credential exists) on affected provider cards
- Add or update credentials in the credential panel
- Select validation tool and click "Validate Now"
- Restart Cursor after credentials are verified
Tips & Best Practices
Naming Bundles
Use descriptive, short names without spaces:
- ✅
marketing-automation - ✅
dev-tools - ✅
crm-suite - ❌
my bundle with spaces - ❌
bundle-123-abc-xyz-really-long-name
Multiple Bundles vs Combined Bundle
Use multiple bundles when:
- Different projects need different tools
- You want to limit tool access per workspace
Use one combined bundle when:
- You use the same tools across all projects
- Simpler configuration
Testing New Bundles
Before adding to your main config:
- Test in a separate Cursor window
- Verify tools work
- Check credentials are correct
- Then add to main config
Next Steps
- Browse Bundles - Explore available bundles
- Connect Credentials - Set up authentication
- Troubleshooting Guide - Fix issues
- FAQ - Common questions
Need Help?
- Not working? See Troubleshooting
- Questions? Check the FAQ
- Support: Email help@mcpbundles.com