PluginProbe ʕ •ᴥ•ʔ
CommerceBird – AI Command Center, ERP Integrations & B2B for WooCommerce (Zoho, Exact Online). / trunk
CommerceBird – AI Command Center, ERP Integrations & B2B for WooCommerce (Zoho, Exact Online). vtrunk
3.0.3 3.0.2 3.0.1 trunk 2.2.14 2.2.15 2.2.16 2.2.17 2.2.18 2.2.19 2.3.0 2.3.1 2.3.10 2.3.11 2.3.12 2.3.13 2.3.14 2.3.2 2.3.3 2.3.4 2.3.5 2.3.6 2.3.7 2.3.8 2.3.9 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.5.0 2.5.1 2.5.2 2.6.0 2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 2.7.8 2.7.9 2.7.91 2.7.92 2.7.93 2.8.0 2.8.1 2.8.2 2.8.3 2.8.4 2.8.5 2.9.0 2.9.1 2.9.2 2.9.3 3.0.0
commercebird / vendor / wordpress / mcp-adapter / includes / Domain / Prompts / Contracts / McpPromptBuilderInterface.php
commercebird / vendor / wordpress / mcp-adapter / includes / Domain / Prompts / Contracts Last commit date
McpPromptBuilderInterface.php 2 months ago
McpPromptBuilderInterface.php
75 lines
1 <?php
2 /**
3 * Interface for MCP Prompt Builders.
4 *
5 * @package McpAdapter
6 */
7
8 declare( strict_types=1 );
9
10 namespace WP\MCP\Domain\Prompts\Contracts;
11
12 use WP\McpSchema\Server\Prompts\DTO\Prompt;
13
14 /**
15 * Interface for building MCP prompts.
16 *
17 * Classes implementing this interface can be passed directly to McpServer::register_prompts()
18 * instead of requiring WordPress abilities.
19 */
20 interface McpPromptBuilderInterface {
21
22 /**
23 * Build and return the Prompt DTO instance.
24 *
25 * @return \WP\McpSchema\Server\Prompts\DTO\Prompt The built prompt DTO.
26 */
27 public function build(): Prompt;
28
29 /**
30 * Get the unique name for this prompt.
31 *
32 * @return string The prompt name.
33 */
34 public function get_name(): string;
35
36 /**
37 * Get the prompt title.
38 *
39 * @return string|null The prompt title.
40 */
41 public function get_title(): ?string;
42
43 /**
44 * Get the prompt description.
45 *
46 * @return string|null The prompt description.
47 */
48 public function get_description(): ?string;
49
50 /**
51 * Get the prompt arguments.
52 *
53 * @return array The prompt arguments.
54 */
55 public function get_arguments(): array;
56
57 /**
58 * Handle the prompt execution when called.
59 *
60 * @param array $arguments The arguments passed to the prompt.
61 *
62 * @return array The prompt response.
63 */
64 public function handle( array $arguments ): array;
65
66 /**
67 * Check if the current user has permission to execute this prompt.
68 *
69 * @param array $arguments The arguments passed to the prompt.
70 *
71 * @return bool True if execution is allowed, false otherwise.
72 */
73 public function has_permission( array $arguments ): bool;
74 }
75