SAMMCPClient
smarter.models.sam.mcpclient
SAM model of the MCPClient kind, generated from the Smarter platform’s JSON Schema.
Do not edit: run scripts/generate_sam_models.py. See smarter.models.sam.
- class smarter.models.sam.mcpclient.SAMDependency
Bases:
smarter.models.sam.base.SAMModelA resource that depends on the resource that a manifest describes.
- class smarter.models.sam.mcpclient.SAMMCPClientMetadata
Bases:
smarter.models.sam.base.SAMModelSmarter API MCPClient Manifest - Metadata class.
- annotations: None | list[dict[str, str | int | float | bool | datetime.date | datetime.datetime | Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern='^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$')] | uuid.UUID | bytes | list | dict[str, Any]]]
The manifest annotations.
- Used for storing arbitrary metadata as
key-value pairs. Example: [{‘smarter.sh/test-manifest/project-name’: ‘Scooby dooby do’}]. The key should be a valid url-friendly string. The value accepts multi-line string values (YAML block scalars) and various scalar types including str, int, float, bool, datetime.date, datetime.datetime, decimal.Decimal, uuid.UUID, bytes, list, dict.
- class smarter.models.sam.mcpclient.SAMMCPClientSpecConfig
Bases:
smarter.models.sam.base.SAMModelSmarter API MCPClient Manifest MCPClient.spec.config.
- allowedResources: list[str] | None
MCPClient.spec.config.allowedResources[list]: glob patterns of the resource URIs that the LLM may read, e.g. docs://example.com/* .
Empty means none.
- allowedTools: list[str] | None
MCPClient.spec.config.allowedTools[list]: glob patterns of the tool names to offer the LLM, e.g. search_* .
Empty means all of the tools that the server advertises.
- apiKeyHeader: str | None
MCPClient.spec.config.apiKeyHeader[str]: the HTTP header that carries an api_key credential.
- authType: str | None
MCPClient.spec.config.authType[str]: how to authenticate with the MCP server.
One of: [‘none’, ‘api_key’, ‘bearer_token’, ‘oauth2’]. oauth2 sends an OAuth access token, obtained elsewhere, as a bearer token.
- cacheTtl: Optional
MCPClient.spec.config.cacheTtl[int]: seconds to cache the MCP server’s tools, instructions and capabilities.
0 disables caching.
- credentials: str | None
MCPClient.spec.config.credentials[str]: the name of the Smarter Secret containing the credential.
Required unless authType is none.
- endpointUrl: str
MCPClient.spec.config.endpointUrl[str]: the https URL of the MCP server’s endpoint.
- headers: dict[str, str] | None
MCPClient.spec.config.headers[dict]: optional, non-secret HTTP headers to send to the MCP server.
Credentials belong in a Smarter Secret, via credentials.
- includeInstructions: bool | None
MCPClient.spec.config.includeInstructions[bool]: add the MCP server’s instructions to the system prompt.
- priority: Optional
MCPClient.spec.config.priority[int]: the order in which an LLMClient’s MCPClients are offered to the LLM.
Lower runs first.
- timeout: Optional
MCPClient.spec.config.timeout[int]: seconds to wait for the MCP server to connect and respond.
- class smarter.models.sam.mcpclient.SAMMCPClientStatus
Bases:
smarter.models.sam.base.SAMModelSmarter API MCPClient Manifest - Status class.
Read only. Besides ownership, it reports the result of the last connection to the MCP server.
- accountNumber: str
MCPClient.status.account_number: The account owner of this MCPClient.
Read only.
- connectionStatus: str | None
MCPClient.status.connectionStatus: the result of the last connection to the MCP server: unconfigured, connected, disconnected or error.
Read only.
- created: datetime
The date in which this resource was created.
Read only.
- dependencies: list[smarter.models.sam.mcpclient.SAMDependency] | None
Dependencies[List]: The resources that depend on this resource, and that must be deleted, or stop referring to it, before it can be deleted.
Lists only the resources that you can read. Read only.
- lastConnected: datetime.datetime | None
MCPClient.status.lastConnected: when Smarter last connected to the MCP server.
Read only.
- lastError: str | None
MCPClient.status.lastError: the error of the last failed connection, if any.
Read only.
- modified: datetime
The date in which this resource was most recently changed.
Read only.
- protocolVersion: str | None
MCPClient.status.protocolVersion: the MCP protocol version negotiated with the server.
Read only.
- recordLocator: str
RecordLocator[String]: An optional identifier used to locate the resource record associated with this manifest.
Read only.
- serverName: str | None
MCPClient.status.serverName: the name that the MCP server reported.
Read only.
- serverVersion: str | None
MCPClient.status.serverVersion: the version that the MCP server reported.
Read only.
- class smarter.models.sam.mcpclient.SAMMCPClientSpec
Bases:
smarter.models.sam.base.SAMModelSmarter API MCPClient Manifest MCPClient.spec.
- config: SAMMCPClientSpecConfig
MCPClient.spec.config[object].
The configuration for the MCPClient.
- class smarter.models.sam.mcpclient.SAMMCPClient
Bases:
smarter.models.sam.base.SAMModelSmarter API Manifest - MCPClient.
- metadata: SAMMCPClientMetadata
MCPClient.metadata[obj]: Required, the MCPClient metadata.
- spec: SAMMCPClientSpec
MCPClient.spec[obj]: Required, the MCPClient specification.
- status: smarter.models.sam.mcpclient.SAMMCPClientStatus | None
MCPClient.status[obj]: Optional, Read-only.
Stateful status information about the MCPClient.