PATH:
home
/
thebhoeo
/
.trash
/
backwpup
/
vendor
/
wordpress
/
mcp-adapter
/
includes
/
Domain
/
Utils
<?php /** * Normalizes ability arguments for MCP protocol compatibility. * * @package McpAdapter */ declare( strict_types=1 ); namespace WP\MCP\Domain\Utils; /** * Normalizes ability arguments between MCP and WordPress Abilities API. * * MCP clients send {} (empty object) for tools without arguments. * PHP decodes this as [] (empty array). * Abilities without input_schema expect null, not empty array. * * @since 0.5.0 */ class AbilityArgumentNormalizer { /** * Normalize parameters for an ability based on its input schema. * * If the ability has no input schema, empty arrays are converted to null. * This ensures compatibility with abilities that don't accept parameters. * * @param \WP_Ability $ability The ability to normalize parameters for. * @param mixed $parameters The parameters to normalize. * * @return mixed Normalized parameters (null if ability has no schema and params are empty). * @since 0.5.0 * */ public static function normalize( \WP_Ability $ability, $parameters ) { $input_schema = $ability->get_input_schema(); if ( empty( $input_schema ) && is_array( $parameters ) && empty( $parameters ) ) { return null; } return $parameters; } }
[-] McpValidator.php
[edit]
[-] McpNameSanitizer.php
[edit]
[-] McpAnnotationMapper.php
[edit]
[+]
..
[-] AbilityArgumentNormalizer.php
[edit]
[-] SchemaTransformer.php
[edit]
[-] ContentBlockHelper.php
[edit]