Cursor Configuration
This guide shows you how to configure the Probo MCP Server with Cursor, the AI-powered code editor, enabling AI to interact with your compliance data while you code.
Prerequisites
Section titled “Prerequisites”- Cursor IDE installed (available at cursor.com)
- A running Probo instance with API access
- API token from your Probo instance
Quick Install
Section titled “Quick Install”Click the button below to automatically install the Probo MCP server in Cursor. You’ll need to replace YOUR_PROBO_INSTANCE with your actual instance URL and YOUR_API_TOKEN with your token.
Manual Configuration Steps
Section titled “Manual Configuration Steps”1. Generate an API Token
Section titled “1. Generate an API Token”First, generate an API token from your Probo instance:
- Log into your Probo web interface
- Navigate to Settings → API Tokens
- Click “Generate New Token”
- Copy the token - you’ll need it for configuration
2. Locate Cursor Configuration
Section titled “2. Locate Cursor Configuration”Cursor stores MCP server configurations in the Cursor settings directory.
macOS/Linux:
~/.cursor/mcp_config.jsonWindows:
%USERPROFILE%\.cursor\mcp_config.jsonIf the file doesn’t exist, create it.
3. Configure the MCP Server
Section titled “3. Configure the MCP Server”Add the Probo MCP server to your Cursor configuration:
{ "mcpServers": { "probo": { "url": "https://your-probo-instance.com/api/mcp/v1", "headers": { "Authorization": "Bearer your_api_token_here" } } }}Replace:
https://your-probo-instance.com/api/mcp/v1with your Probo instance URLyour_api_token_herewith the API token you generated
4. Restart Cursor
Section titled “4. Restart Cursor”After saving the configuration:
- Close Cursor completely (Cmd+Q on macOS, Alt+F4 on Windows)
- Restart Cursor
- The Probo MCP server will be loaded automatically
Using Probo in Cursor
Section titled “Using Probo in Cursor”Access via Cursor Chat
Section titled “Access via Cursor Chat”Open Cursor Chat (Cmd+L on macOS, Ctrl+L on Windows) and interact with your compliance data:
You: "List all high-priority risks in my organization"
Cursor: I'll fetch the risks from Probo.[Uses listRisks tool]
Here are the high-priority risks:1. Data breach from vendor systems (Risk Score: 20)2. Inadequate access controls (Risk Score: 18)...Inline Assistance
Section titled “Inline Assistance”Use Cursor’s inline chat (Cmd+K) while editing code:
# You're editing a scriptdef generate_compliance_report(): # Cmd+K: "Fetch all open nonconformities from Probo" # Cursor generates code using Probo MCP APIMulti-file Editing
Section titled “Multi-file Editing”When working across multiple files:
You: "Create a risk assessment report using data from Probo"
Cursor:[Uses listRisks, listMeasures, and other tools][Generates markdown report with current compliance status]Project-Specific Configuration
Section titled “Project-Specific Configuration”Create a .cursor/mcp_config.json file in your project root for project-specific settings:
{ "mcpServers": { "probo": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-fetch", "${PROBO_PROJECT_URL}/api/mcp"], "env": { "PROBO_API_TOKEN": "${PROBO_PROJECT_TOKEN}" } } }}Then set environment variables in your project:
# .env filePROBO_PROJECT_URL=https://project.probo.comPROBO_PROJECT_TOKEN=your_project_tokenUse Cases
Section titled “Use Cases”Compliance Documentation
Section titled “Compliance Documentation”Generate compliance documentation automatically:
You: "Create a vendor risk assessment document for CloudStorage Inc"
Cursor:[Fetches vendor details from Probo][Generates formatted document with risk analysis]Code Comments
Section titled “Code Comments”Add compliance-aware comments to your code:
# Cmd+K: "Add a compliance note about data handling"
# Cursor adds:# COMPLIANCE NOTE: This function processes sensitive customer data (PII)# Probo Classification: CONFIDENTIAL# Associated Risks: Risk_xxx, Risk_yyy# Required Controls: Encryption at rest, Access loggingScript Generation
Section titled “Script Generation”Generate scripts that interact with Probo:
You: "Write a Python script to export all risks to CSV"
Cursor:[Generates complete script using Probo MCP API]Automated Checks
Section titled “Automated Checks”Create compliance check scripts:
// Cmd+K: "Create a function to check if all critical vendors have recent reviews"
// Cursor generates:async function checkVendorReviews() { // Uses Probo MCP listVendors tool // Checks last review dates // Returns vendors needing review}Advanced Configuration
Section titled “Advanced Configuration”Multiple Probo Instances
Section titled “Multiple Probo Instances”Configure multiple environments:
{ "mcpServers": { "probo-dev": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-fetch", "http://localhost:8080/api/mcp"], "env": { "PROBO_API_TOKEN": "${PROBO_DEV_TOKEN}" }, "description": "Probo Development" }, "probo-prod": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-fetch", "https://probo.company.com/api/mcp"], "env": { "PROBO_API_TOKEN": "${PROBO_PROD_TOKEN}" }, "description": "Probo Production" } }}Custom Commands
Section titled “Custom Commands”Create Cursor commands that use Probo:
- Open Cursor Settings (Cmd+, or Ctrl+,)
- Go to “Features” → “Custom Commands”
- Add a new command:
{ "name": "Fetch Compliance Status", "description": "Get current compliance status from Probo", "prompt": "Using the Probo MCP server, fetch and summarize: 1) Number of open risks, 2) Compliance measure status, 3) Overdue obligations"}Workspace Settings
Section titled “Workspace Settings”Configure Cursor workspace settings for compliance projects:
Create .vscode/settings.json (Cursor uses VS Code format):
{ "cursor.mcp.enabled": true, "cursor.mcp.autoLoadServers": true, "cursor.chat.welcomeMessage": "I can help with compliance management using Probo. Try: 'List all vendors' or 'Show high-priority risks'"}Integration Examples
Section titled “Integration Examples”React Component Generator
Section titled “React Component Generator”// Cmd+L: "Create a React component that displays Probo risks"
// Cursor generates:import { useEffect, useState } from 'react';
function RiskDashboard() { const [risks, setRisks] = useState([]);
useEffect(() => { // Fetch risks from Probo fetchRisks(); }, []);
// Component implementation using Probo data...}API Client Generator
Section titled “API Client Generator”// Cmd+K: "Generate a TypeScript client for Probo MCP"
// Cursor creates a complete typed client:class ProboClient { private baseUrl: string; private token: string;
async listRisks(organizationId: string): Promise<Risk[]> { // Implementation using Probo MCP }
async addVendor(data: AddVendorInput): Promise<Vendor> { // Implementation }}Test Generation
Section titled “Test Generation”# Cmd+K: "Generate tests that verify compliance data integrity"
# Cursor creates:import unittestfrom probo_client import ProboClient
class TestComplianceData(unittest.TestCase): def test_all_vendors_have_reviews(self): # Test using Probo MCP pass
def test_high_risks_have_mitigations(self): # Test using Probo MCP passKeyboard Shortcuts
Section titled “Keyboard Shortcuts”Useful Cursor shortcuts when working with Probo:
- Cmd+L / Ctrl+L: Open Cursor Chat
- Cmd+K / Ctrl+K: Inline code generation
- Cmd+Shift+L / Ctrl+Shift+L: Open chat in sidebar
- Cmd+I / Ctrl+I: Ask about selection
- Cmd+. / Ctrl+.: Quick actions
Troubleshooting
Section titled “Troubleshooting”MCP Server Not Loading
Section titled “MCP Server Not Loading”Check if the server is configured correctly:
- Open Cursor Settings (Cmd+, or Ctrl+,)
- Search for “MCP”
- Check “Developer Tools” → “Console” for errors
- Look at logs in
~/.cursor/logs/mcp-*.log
Connection Issues
Section titled “Connection Issues”Verify connectivity:
# Test Probo MCP endpointcurl -H "Authorization: Bearer YOUR_TOKEN" \ https://your-probo-instance.com/api/mcp/healthToken Errors
Section titled “Token Errors”If you see authentication errors:
- Verify the token in your configuration
- Check token hasn’t expired
- Ensure the
PROBO_API_TOKENenv variable is set - Test token with curl:
Terminal window curl -H "Authorization: Bearer YOUR_TOKEN" \https://your-probo-instance.com/api/mcp/tools/listOrganizations
Clear Cursor Cache
Section titled “Clear Cursor Cache”If configuration changes aren’t applying:
# macOS/Linuxrm -rf ~/.cursor/cache/mcp
# Windowsrmdir /s /q %USERPROFILE%\.cursor\cache\mcpThen restart Cursor.
Security Best Practices
Section titled “Security Best Practices”-
Use environment variables for tokens:
{"env": {"PROBO_API_TOKEN": "${PROBO_TOKEN}"}} -
Don’t commit tokens to version control:
.gitignore .cursor/mcp_config.json.env -
Use HTTPS for production instances
-
Rotate tokens regularly
-
Set appropriate file permissions:
Terminal window chmod 600 ~/.cursor/mcp_config.json -
Review generated code before committing
Tips and Tricks
Section titled “Tips and Tricks”Quick Compliance Checks
Section titled “Quick Compliance Checks”Create snippets for common queries:
// In Cursor Settings → Snippets{ "Check High Risks": { "prefix": "@risks-high", "body": "Show me all risks with residual score above 15 from Probo" }, "Vendor Review Status": { "prefix": "@vendors-review", "body": "List all vendors and their last review dates from Probo" }}Compliance-Aware Coding
Section titled “Compliance-Aware Coding”Have Cursor check compliance as you code:
You: "Review this data processing function for compliance issues"
Cursor:[Analyzes code][Checks against Probo risk database][Suggests compliance controls]Documentation Generation
Section titled “Documentation Generation”Auto-generate compliance documentation:
You: "Create a SOC 2 control matrix using current Probo data"
Cursor:[Fetches measures, risks, and frameworks from Probo][Generates formatted matrix document]Next Steps
Section titled “Next Steps”- Explore all available MCP tools
- Try VS Code integration for similar functionality
- Check out Windsurf configuration
- View the API specification
Support
Section titled “Support”Need help with Cursor configuration?