systemprompt-models 0.21.1

Foundation data models for systemprompt.io AI governance infrastructure. Shared DTOs, config, and domain types consumed by every layer of the MCP governance pipeline.
Documentation
//! Managed MCP server definitions in services config.
//!
//! Copyright (c) systemprompt.io — Business Source License 1.1.
//! See <https://systemprompt.io> for licensing details.

use schemars::JsonSchema;
use serde::{Deserialize, Serialize};

#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
pub struct McpServerSummary {
    pub name: String,
    #[serde(default)]
    pub display_name: String,
    #[serde(default)]
    pub server_type: String,
    pub enabled: bool,
    pub port: u16,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub status: Option<String>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub endpoint: Option<String>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub binary_debug: Option<String>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub binary_release: Option<String>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub debug_created_at: Option<String>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub release_created_at: Option<String>,
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub created_at: Option<String>,
}