register_output_type
Registers a new output type in the Facets control plane, with optional interfaces, attributes, and providers. Automatically detects existing types and prompts for override confirmation.
Instructions
Tool to register a new output type in the Facets control plane.
This tool first checks if the output type already exists:
If it doesn't exist, it proceeds with registration
If it exists, it compares properties and providers to determine if an update is needed
Args:
name (str): The name of the output type in the format '@namespace/name'.
interfaces (Dict[str, Any], optional): Dictionary of output interfaces as JSON schema. Each key is an interface name, value is a JSON schema definition.
attributes (Dict[str, Any], optional): Dictionary of output attributes as JSON schema. Each key is an attribute name, value is a JSON schema definition.
Example: { "default": { "type": "object", "properties": { "topic_name": {"type": "string"}, "topic_id": {"type": "string"} } } }
❌ INCORRECT (do NOT wrap field names in outer "properties" key): { "properties": { "default": {...} } }
providers (List[Dict[str, str]], optional): List of provider dictionaries with 'name', 'source', and 'version'.
override_confirmation (bool): Flag to confirm overriding existing output type if different properties/providers found.
Returns:
str: A JSON string with the output from the FTF command execution, error message, or request for confirmation.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| interfaces | No | ||
| attributes | No | ||
| providers | No | ||
| override_confirmation | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |