# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

from typing import Dict, List, Optional

from .._models import BaseModel

__all__ = ["McpServerConfig"]


class McpServerConfig(BaseModel):
    """Configuration for an MCP server.

    Must have exactly one of: warp_id, command, or url.
    """

    args: Optional[List[str]] = None
    """Stdio transport - command arguments"""

    command: Optional[str] = None
    """Stdio transport - command to run"""

    env: Optional[Dict[str, str]] = None
    """Environment variables for the server"""

    headers: Optional[Dict[str, str]] = None
    """HTTP headers for SSE/HTTP transport"""

    url: Optional[str] = None
    """SSE/HTTP transport - server URL"""

    warp_id: Optional[str] = None
    """Reference to a Warp shared MCP server by UUID"""
