dataflow.platform.models.mcp¶
MCP Platform Models - Specialized Platform for MCP Operations
This module provides specialized platform models for MCP (Model Context Protocol) operations, inheriting from BasePlatform and extending with MCP-specific capabilities.
Key Features: - Inherits all BasePlatform capabilities - MCP-specific configuration and capabilities - Plugin management system - API and discovery configuration - Server management capabilities
Classes¶
FastAPI application configuration. |
|
Discovery system configuration. |
|
Health check status. |
|
Specialized platform for MCP operations - inherits all base capabilities. |
|
MCP transport protocols. |
|
Plugin configuration model. |
|
Server management configuration. |
|
Where the server came from. |
|
Server operational status. |
Module Contents¶
- class dataflow.platform.models.mcp.APIConfig(/, **data)¶
Bases:
pydantic.BaseModel
FastAPI application configuration.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class dataflow.platform.models.mcp.DiscoveryConfig(/, **data)¶
Bases:
pydantic.BaseModel
Discovery system configuration.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class dataflow.platform.models.mcp.HealthStatus¶
-
Health check status.
Initialize self. See help(type(self)) for accurate signature.
- class dataflow.platform.models.mcp.MCPPlatform¶
Bases:
dataflow.platform.models.base.BasePlatform
Specialized platform for MCP operations - inherits all base capabilities.
This platform extends BasePlatform with MCP-specific functionality: - Plugin management system - Server discovery and management - API configuration - MCP transport protocol support
Inheritance Features: - Inherits all BasePlatform fields and validation - Extends capability flags with MCP-specific ones - Adds MCP-specific configuration models - Maintains platform inheritance patterns
Examples
Basic MCP platform:
platform = MCPPlatform() # Uses all defaults, inherits platform_id from class default
With custom plugins:
platform = MCPPlatform( plugins=[ PluginConfig( name="mcp-browser", entry_point="haive.mcp:MCPBrowserPlugin" ), PluginConfig( name="hap-agents", entry_point="haive.agp:HAPPlugin" ) ] )
Full configuration:
platform = MCPPlatform( platform_id="production-mcp", platform_name="Production MCP Platform", description="Production MCP management system", api_config=APIConfig(host="mcp.company.com", port=443), discovery_config=DiscoveryConfig(auto_discover=True) )
- add_plugin(plugin_config)¶
Add a plugin to the platform.
- Parameters:
plugin_config (PluginConfig) – Plugin configuration to add
- Raises:
ValueError – If plugin name already exists
- Return type:
None
- get_enabled_plugins()¶
Get list of enabled plugins.
- Returns:
List of enabled plugin configurations
- Return type:
List[PluginConfig]
- get_mcp_capability_summary()¶
Get summary of MCP-specific capabilities.
- get_plugin(plugin_name)¶
Get plugin configuration by name.
- Parameters:
plugin_name (str) – Name of plugin to find
- Returns:
Plugin configuration if found, None otherwise
- Return type:
Optional[PluginConfig]
- remove_plugin(plugin_name)¶
Remove a plugin from the platform.
- classmethod validate_plugins_unique(v)¶
Ensure plugin names are unique.
- Parameters:
v (List[PluginConfig]) – List of plugin configurations
- Returns:
Validated plugin list
- Raises:
ValueError – If duplicate plugin names found
- Return type:
List[PluginConfig]
- class dataflow.platform.models.mcp.MCPTransport¶
-
MCP transport protocols.
Initialize self. See help(type(self)) for accurate signature.
- class dataflow.platform.models.mcp.PluginConfig(/, **data)¶
Bases:
pydantic.BaseModel
Plugin configuration model.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- classmethod validate_entry_point(v)¶
Validate entry point format.
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class dataflow.platform.models.mcp.ServerManagementConfig(/, **data)¶
Bases:
pydantic.BaseModel
Server management configuration.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class dataflow.platform.models.mcp.ServerSource¶
-
Where the server came from.
Initialize self. See help(type(self)) for accurate signature.