MCP Servers

Create MCP Server

Creates a new MCP server integration in your organization.

The server will be created with the specified configuration and will be immediately available for use by your organization's users.

If no slug is provided, one will be automatically generated from the name. If the slug already exists, a numeric suffix will be appended to ensure uniqueness.

post/api/mcp-servers

Request

  • Base URL: https://app.withwillow.ai
  • URL: https://app.withwillow.ai/api/mcp-servers
  • Auth: HTTP bearer

Request body

namestring required

Display name for the MCP server

mcp_proxystring required

JSON string containing the MCP server configuration. Must be valid JSON with type and url fields.

slugstring

URL-friendly identifier for the server. If not provided, will be generated from the name. Must be lowercase alphanumeric with hyphens only. No leading or trailing hyphens allowed.

logo_urlstring

URL to the server's logo image

descriptionstring

Human-readable description of the MCP server

status'active' | 'draft'

Server visibility status.

  • active: Visible to users in the integrations catalog
  • draft: Hidden from users, only visible to admins

Example request

{
  "name": "My Custom Server",
  "mcp_proxy": "{\"type\":\"http\",\"url\":\"https://my-mcp-server.example.com\"}",
  "slug": "my-custom-server",
  "logo_url": "https://example.com/logo.png",
  "description": "Custom MCP server for internal tools",
  "request_settings": {
    "headers": [
      {
        "key": "X-Custom-Header",
        "value": "custom-value"
      }
    ]
  },
  "auth_settings": {
    "clientId": "your-oauth-client-id",
    "authUrl": "https://provider.com/oauth/authorize",
    "tokenUrl": "https://provider.com/oauth/token",
    "client": {
      "scope": "read write"
    }
  }
}

Response

MCP server created successfully

Example response

{
  "data": {
    "slug": "my-custom-server"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.