VS Code Copilot MCP Setup

December 5, 2025 · View on GitHub

This guide explains how to use the MCP Aruba Email & Calendar Server with VS Code's Copilot MCP extension.

Prerequisites

  • VS Code installed
  • GitHub Copilot subscription (with MCP support)
  • MCP Aruba server installed (see README.md)

Step 1: Prerequisites

  • VS Code 1.102+ (MCP support is generally available from this version)
  • GitHub Copilot subscription with MCP support
  • Check VS Code MCP documentation for the latest information

Enable MCP in VS Code Settings

Open VS Code Settings (Cmd+, on macOS) and add:

"chat.mcp.enabled": true,
"chat.mcp.autostart": true

Or via Command Palette: Cmd+Shift+P → "Preferences: Open User Settings (JSON)"

Step 2: Install MCP Aruba Server

# Clone the repository
git clone https://github.com/jackfioru92/mcp-aruba-email.git
cd mcp-aruba-email

# Create virtual environment
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install dependencies
pip install -e .

Step 3: Configure MCP Server for VS Code

Configuration File Location

Create the MCP configuration file in your workspace .vscode folder:

  • Workspace: <your-project>/.vscode/mcp.json

Or for global configuration:

  • macOS/Linux: ~/.vscode/mcp.json
  • Windows: %USERPROFILE%\.vscode\mcp.json

Configuration (IMPORTANT: Use servers not mcpServers)

{
  "servers": {
    "aruba-email": {
      "type": "stdio",
      "command": "/full/path/to/mcp-aruba-email/.venv/bin/python",
      "args": ["-m", "mcp_aruba.server"],
      "env": {
        "IMAP_HOST": "imaps.aruba.it",
        "IMAP_PORT": "993",
        "IMAP_USERNAME": "your_email@aruba.it",
        "IMAP_PASSWORD": "your_password_here",
        "SMTP_HOST": "smtps.aruba.it",
        "SMTP_PORT": "465",
        "CALDAV_URL": "https://syncdav.aruba.it/calendars/your_email@aruba.it/",
        "CALDAV_USERNAME": "your_email@aruba.it",
        "CALDAV_PASSWORD": "your_password_here"
      }
    }
  }
}

⚠️ CRITICAL:

  • Use "servers" (NOT "mcpServers")
  • Include "type": "stdio"
  • These are required for VS Code to recognize the MCP server

Important:

  • Replace /full/path/to/mcp-aruba-email/ with your actual installation path
  • Replace your_email@aruba.it and your_password_here with your Aruba credentials
# Create .vscode folder in your project
mkdir -p /path/to/your/project/.vscode

# Create configuration file
cat > /path/to/your/project/.vscode/mcp.json << 'EOF'
{
  "servers": {
    "aruba-email": {
      "type": "stdio",
      "command": "/Users/yourusername/mcp-aruba-email/.venv/bin/python",
      "args": ["-m", "mcp_aruba.server"],
      "env": {
        "IMAP_HOST": "imaps.aruba.it",
        "IMAP_PORT": "993",
        "IMAP_USERNAME": "your_email@aruba.it",
        "IMAP_PASSWORD": "your_password",
        "SMTP_HOST": "smtps.aruba.it",
        "SMTP_PORT": "465",
        "CALDAV_URL": "https://syncdav.aruba.it/calendars/your_email@aruba.it/",
        "CALDAV_USERNAME": "your_email@aruba.it",
        "CALDAV_PASSWORD": "your_password"
      }
    }
  }
}
EOF

Step 4: Start the MCP Server

After creating the configuration file:

  1. Reload VS Code Window:

    • Press Cmd+Shift+P (macOS) or Ctrl+Shift+P (Windows/Linux)
    • Type "Developer: Reload Window"
    • Press Enter
  2. Start the MCP Server:

    • Press Cmd+Shift+P → "MCP: List Servers"
    • You should see aruba-email in the list
    • Click Start to start the server
  3. Or enable autostart (recommended): Add to your VS Code settings:

    "chat.mcp.autostart": true
    

Step 5: Verify MCP Server Connection

  1. Open a new Copilot Chat (Cmd+Shift+I or click the Copilot icon)

  2. Try one of these commands:

    "List my last 5 emails"
    "Show my calendar for today"
    
  3. If the server is connected, Copilot will use the MCP tools to fetch your data.

Check Server Status

  • Cmd+Shift+P → "MCP: List Servers" - shows all configured servers
  • Look for the green indicator next to aruba-email
  • If there's an error, click "Show Output" to see logs

Available Tools

Once connected, Copilot will have access to 15 MCP tools:

Email Tools (7)

  • list_emails - List recent emails with optional sender filter
  • read_email - Read full email content by ID
  • search_emails - Search emails by subject/body with date filters
  • send_email - Send emails via SMTP with optional signature
  • check_bounced_emails - Check for delivery failure notifications
  • set_email_signature - Create custom email signature with photo
  • get_email_signature - Retrieve saved signature
  • list_email_signatures - List all saved signatures

Calendar Tools (6)

  • create_calendar_event - Create events with attendees
  • list_calendar_events - List upcoming events in date range
  • accept_calendar_event - Accept calendar invitations
  • decline_calendar_event - Decline calendar invitations
  • tentative_calendar_event - Respond "maybe" to invitations
  • delete_calendar_event - Remove events from calendar
  • tentative_calendar_event - Mark as tentative
  • delete_calendar_event - Delete events

Example Queries

Email Examples

Usage Examples

Email Examples

"Show me the last 5 emails"

"List emails from christopher.caponi@emotion-team.com"

"Search for emails about 'marketplace' from last week"

"Send an email to team@company.com with subject 'Meeting Notes'"

"Create an email signature with my name and company"

"Check if I have any bounced emails"

Calendar Examples

"What's on my calendar this week?"

"Create a team meeting for tomorrow at 2pm"

"Schedule a 1-hour meeting called 'Project Review' on December 10th at 3pm with john@example.com"

"Accept the calendar invitation for Friday's review"

"Decline the Monday meeting"

"Show me all my meetings next week"

Troubleshooting

Server Not Found in "MCP: List Servers"

  1. Check configuration format - Must use "servers" not "mcpServers":

    {
      "servers": {        // ✅ Correct
        "aruba-email": {
          "type": "stdio",  // ✅ Required
          ...
        }
      }
    }
    
  2. Check file location:

    • Workspace: <project>/.vscode/mcp.json (recommended)
    • Global: ~/.vscode/mcp.json
  3. Reload VS Code: Cmd+Shift+P → "Developer: Reload Window"

Server Not Starting

  1. Verify Python path exists:

    ls /path/to/mcp-aruba-email/.venv/bin/python
    
  2. Test server manually:

    cd /path/to/mcp-aruba-email
    source .venv/bin/activate
    python -m mcp_aruba.server
    # Should show: "Starting Aruba Email & Calendar MCP Server"
    
  3. Check VS Code Output:

    • Cmd+Shift+P → "MCP: List Servers" → Select server → "Show Output"
    • Look for error messages

Authentication Errors

  • Verify email and password in mcp.json
  • Check for typos in credentials
  • Ensure no extra spaces in values
  • Test credentials with webmail: https://webmail.aruba.it

No Calendars Found

Enable CalDAV sync in Aruba Webmail:

  1. Go to https://webmail.aruba.it
  2. Navigate to Calendar section
  3. Click "Sincronizza calendario" (Sync calendar)
  4. Select calendars to sync

MCP Tools Not Available in Copilot

  1. Verify MCP support:

    • Check you have VS Code Insiders or latest stable with MCP support
    • GitHub Copilot extension must support MCP
  2. Check logs:

    • Open Command Palette (Cmd/Ctrl + Shift + P)
    • Type "Developer: Show Logs"
    • Look for MCP connection errors
  3. Restart completely:

    • Quit VS Code completely
    • Reopen VS Code
    • Open a new Copilot chat

Alternative Setup Methods

{
  "mcpServers": {
    "aruba-email": {
      "command": "/Users/username/mcp-aruba-email/.venv/bin/python",
      "args": ["-m", "mcp_aruba.server"],
      "env": { ... }
    }
  }
}

Method 2: Use python3 Command

Only works if mcp_aruba is installed globally:

{
  "mcpServers": {
    "aruba-email": {
      "command": "python3",
      "args": ["-m", "mcp_aruba.server"],
      "env": { ... }
    }
  }
}

Security Notes

  • Configuration file ~/.vscode/mcp.json contains credentials in plain text
  • Ensure the file has appropriate permissions: chmod 600 ~/.vscode/mcp.json
  • Consider using environment variables or password managers
  • The MCP server runs locally and connects directly to Aruba servers
  • No data is sent to third parties

Additional Resources

Additional Resources

Support

If you encounter issues:

  1. Check the troubleshooting section above
  2. Review VS Code's Output panel (View → Output → Select "MCP")
  3. Test the server independently: python test_connection.py and python test_calendar.py
  4. Open an issue on GitHub

Security Best Practices

  1. ✅ Use Option A (.env file) to keep credentials separate
  2. ✅ Never commit mcp-settings.json with credentials to git
  3. ✅ Use strong, unique passwords
  4. ✅ Enable 2FA on your Aruba account if available
  5. ✅ Regularly rotate your credentials
  6. ✅ Review MCP server logs periodically

Tips

  • The MCP server runs locally and only connects directly to Aruba servers
  • All credentials stay on your machine
  • You can use the same server with both Claude Desktop and VS Code Copilot
  • Copilot will automatically choose the right tool based on your request
  • You can ask Copilot to explain what tools are available: "What MCP tools do you have access to?"

Enjoy using your Aruba email and calendar with AI assistance! 🚀