Skip to main content
Glama

validate_zip

Validate ZIP files for WordPress plugins or themes to check content integrity and ensure they meet required standards.

Instructions

Validate a local plugin or theme ZIP file's content.

⚠️ QIT CLI not detected. QIT CLI not found. Please install it using one of these methods:

  1. Via Composer (recommended): composer require woocommerce/qit-cli --dev

  2. Set QIT_CLI_PATH environment variable: export QIT_CLI_PATH=/path/to/qit

  3. Ensure 'qit' is available in your system PATH

For more information, visit: https://github.com/woocommerce/qit-cli

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathYesPath to the ZIP file to validate

Implementation Reference

  • The handler function for the 'validate_zip' tool. It constructs CLI arguments for 'woo:validate-zip' using the provided path and delegates execution to executeAndFormat.
    handler: async (args: { path: string }) => {
      const cmdArgs = ["woo:validate-zip", args.path];
      return executeAndFormat(cmdArgs);
    },
  • Input schema using Zod, defining a required 'path' parameter as a string describing the ZIP file location.
    inputSchema: z.object({
      path: z.string().describe("Path to the ZIP file to validate"),
    }),
  • Full tool definition object for 'validate_zip' registered as a property in the utilitiesTools export.
    validate_zip: {
      name: "validate_zip",
      description: "Validate a local plugin or theme ZIP file's content.",
      inputSchema: z.object({
        path: z.string().describe("Path to the ZIP file to validate"),
      }),
      handler: async (args: { path: string }) => {
        const cmdArgs = ["woo:validate-zip", args.path];
        return executeAndFormat(cmdArgs);
      },
    },
  • Incorporates utilitiesTools (containing validate_zip) into the aggregated allTools export used by the MCP server.
    ...utilitiesTools,
  • src/server.ts:29-35 (registration)
    Dynamically registers all tools from allTools, including validate_zip, for MCP ListTools requests with conditional description.
    const tools = Object.entries(allTools).map(([_, tool]) => ({
      name: tool.name,
      description: cliInfo
        ? tool.description
        : `${tool.description}\n\n⚠️ QIT CLI not detected. ${getQitCliNotFoundError()}`,
      inputSchema: zodToJsonSchema(tool.inputSchema),
    }));

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/woocommerce/qit-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server