root_mcp.core.io.validators module
Path validation and security checks.
- class root_mcp.core.io.validators.PathValidator(config)[source]
Bases:
objectValidates file paths against security constraints.
- Parameters:
config (Config)
- __init__(config)[source]
Initialize validator with configuration.
- Parameters:
config (Config) – Server configuration
- check_file_pattern(path, resource)[source]
Check if a file matches resource patterns.
- Parameters:
path (Path) – File path
resource (ResourceConfig) – Resource configuration
- Returns:
True if file matches allowed patterns and not excluded
- Return type:
- validate_output_path(path)[source]
Validate an output path for exports.
- Parameters:
path (str) – Destination path for export
- Returns:
Validated path
- Raises:
SecurityError – If path is not allowed for output
- Return type:
- validate_path(path, resource=None)[source]
Validate a file path against security constraints.
- Parameters:
path (str) – File path or URI to validate
resource (ResourceConfig | None) – Optional resource context
- Returns:
Resolved, validated Path object
- Raises:
SecurityError – If path violates security constraints
- Return type:
Path
- validate_write_operation(input_path, output_path, allow_overwrite=False)[source]
Validate a write operation to ensure security constraints.
This method enforces critical security rules: 1. Input and output paths must be different 2. Output path must be in allowed output directory 3. Cannot overwrite existing files unless explicitly allowed
- Parameters:
- Returns:
Tuple of (validated_input_path, validated_output_path)
- Raises:
SecurityError – If security constraints are violated
- Return type: