All agents

AGENT SETUP · MICROSOFT · GITHUB COPILOT

Set Up SaaS Custom Domains in VS Code and Copilot

GitHub Copilot in VS Code can install agent plugins straight from a GitHub repository. Our plugin adds the SaaS Custom Domains skill and connects the MCP server, and VS Code signs you in to it in your browser.

Works in VS Code with GitHub Copilot.

  • Plugin
  • Sign in or token

Quick start

  1. Turn on agent plugins

    Enable the chat.plugins.enabled setting.

  2. Install the plugin

    Click the button, or run Chat: Install Plugin from Source from the Command Palette and enter https://github.com/saas-custom-domains/skills. VS Code asks you to confirm before it installs.

    Install in VS Code
  3. Sign in

    The first time the server connects, VS Code opens your browser: approve the connection, sign in to SaaS Custom Domains (with two-factor authentication if you use it) and click Continue.

  4. Try a prompt

    Start a new Copilot chat session in your project.

    Prompt
    Show me requests and response codes for app.acme.com over the last 30 days.

Signing in and API tokens

To use an API token instead, add an input. VS Code asks for the token the first time the server starts and stores it securely. Servers that need an input prompt aren't passed to Copilot harness sessions, so sign in when you can.

.vscode/mcp.json
{
  "inputs": [
    {
      "type": "promptString",
      "id": "scd-api-token",
      "description": "SaaS Custom Domains API token",
      "password": true
    }
  ],
  "servers": {
    "saasCustomDomains": {
      "type": "http",
      "url": "https://mcp.saascustomdomains.com/mcp",
      "headers": {
        "Authorization": "Bearer ${input:scd-api-token}"
      }
    }
  }
}

Other ways to set it up

  • Add the MCP server

    Add it to .vscode/mcp.json for this project, or run the command to add it to your user profile.

    .vscode/mcp.json
    {
      "servers": {
        "saasCustomDomains": {
          "type": "http",
          "url": "https://mcp.saascustomdomains.com/mcp"
        }
      }
    }
    Terminal
    code --add-mcp '{"name":"saas-custom-domains","type":"http","url":"https://mcp.saascustomdomains.com/mcp"}'
  • Add the skill

    This puts the skill in .agents/skills/ in your project. Add -g to install it in ~/.copilot/skills/ for every project.

    Terminal
    npx skills add https://github.com/saas-custom-domains/skills -a github-copilot

Tell VS Code about your setup

Copilot reads project instructions from .github/copilot-instructions.md or AGENTS.md. In the Agent Customizations editor, select + next to Workspace to create one.

.github/copilot-instructions.md
## Custom domains
- Customer domains run through SaaS Custom Domains. Use the saas-custom-domains skill when writing code that calls its API, and the MCP server to look up or change domains in our account.
- Check X-SaaS-Domains-Auth-Token before trusting X-Served-For, then find the tenant by the X-Served-For host.
- In development and tests, call scd-mock at http://localhost:4010/api/v1 (token scd_test_token) instead of the real API.

EXAMPLE PROMPTS

What to ask VS Code

The skill helps when you build your custom domains integration. The MCP server works in your account.

Build

Integration code, with the skill

  • “Using the saas-custom-domains skill, add a webhook endpoint for domain_dns_proxy_record_valid and tls_certificate_issued that verifies the webhook token.”
  • “Our CSRF check fails on customer domains. After verifying X-SaaS-Domains-Auth-Token, make the framework use the X-Served-For host.”

Operate

Your account, through the MCP server

  • “Delete the custom domain trial.oldcustomer.com.”
  • “Add acme.com with the www redirect turned on, and give me the DNS records to send Acme.”

Troubleshooting

Nothing happens after I paste a config from Cursor or Claude

VS Code uses servers as the top-level key in .vscode/mcp.json. Configs from other clients use mcpServers and do nothing here.

I don't see Chat: Install Plugin from Source

Enable chat.plugins.enabled. Your organization's policy can also limit which plugins you can install.

The token prompt works in chat but not in Copilot harness sessions

Servers that need an input prompt aren't passed to Copilot harness sessions. Sign in instead, or send the token from an environment variable.

How do I check what is installed?

Run MCP: Show Installed Servers from the Command Palette.

Give your agent your custom domains

Start your free trial, then connect your agent by signing in.