|
7 | 7 | from .tunnel_view import TunnelView |
8 | 8 | from .shared.launch_parameters import LaunchParameters |
9 | 9 |
|
10 | | -__all__ = ["DevboxView", "StateTransition", "GatewaySpecs"] |
| 10 | +__all__ = ["DevboxView", "StateTransition", "GatewaySpecs", "McpSpec"] |
11 | 11 |
|
12 | 12 |
|
13 | 13 | class StateTransition(BaseModel): |
@@ -39,6 +39,14 @@ class GatewaySpecs(BaseModel): |
39 | 39 | """The ID of the secret containing the credential.""" |
40 | 40 |
|
41 | 41 |
|
| 42 | +class McpSpec(BaseModel): |
| 43 | + mcp_config_id: str |
| 44 | + """The ID of the MCP config (e.g., mcp_123abc).""" |
| 45 | + |
| 46 | + secret_id: str |
| 47 | + """The ID of the secret containing the credential.""" |
| 48 | + |
| 49 | + |
42 | 50 | class DevboxView(BaseModel): |
43 | 51 | """A Devbox represents a virtual development environment. |
44 | 52 |
|
@@ -99,6 +107,13 @@ class DevboxView(BaseModel): |
99 | 107 | initiator_type: Optional[Literal["unknown", "api", "scenario", "scoring_validation"]] = None |
100 | 108 | """The type of initiator that created the Devbox.""" |
101 | 109 |
|
| 110 | + mcp_specs: Optional[List[McpSpec]] = None |
| 111 | + """[Beta] MCP specifications configured for this devbox. |
| 112 | +
|
| 113 | + Each spec links an MCP config to a secret for MCP server access through the MCP |
| 114 | + hub. |
| 115 | + """ |
| 116 | + |
102 | 117 | name: Optional[str] = None |
103 | 118 | """The name of the Devbox.""" |
104 | 119 |
|
|
0 commit comments