Skip to main content
Glama
jeffgolden

Cloudflare MCP Server

by jeffgolden

cloudflare-dns-mcp_list_ssl_certs

Retrieve a list of SSL certificate packs associated with a specific zone, enabling efficient management and monitoring of certificates within the Cloudflare ecosystem.

Instructions

List SSL certificate packs for a zone

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
zone_nameYes

Implementation Reference

  • Handler function that executes the tool logic: resolves zone ID and fetches SSL certificate packs via Cloudflare API, returning formatted JSON in MCP content format.
    handler: async (params: any) => {
      const { zone_name } = params as z.infer<typeof listSslCertsParamsSchema>;
      const zoneId = await getZoneId(zone_name);
      return {
        content: [
          {
            type: "text",
            text: JSON.stringify(await client.get(`/zones/${zoneId}/ssl/certificate_packs`), null, 2)
          }
        ]
      };
    },
  • Input schema definition using Zod for the tool, validating 'zone_name' parameter.
    const listSslCertsParamsSchema = z.object({
      zone_name: zoneNameSchema,
    });
  • src/index.ts:48-52 (registration)
    Tool name sanitization replacing '/' with '_', registering 'cloudflare-dns-mcp/list_ssl_certs' as 'cloudflare-dns-mcp_list_ssl_certs' in the toolsMap used by the MCP server.
    const toolsMap: Record<string, any> = {};
    for (const tool of Object.values(allTools)) {
      const safeName = tool.name.replace(/[^a-zA-Z0-9_-]/g, '_');
      toolsMap[safeName] = tool;
    }
  • Local registration of the tool in the ssl-certs module's tools record (overrides any prior definitions).
    return {
      'cloudflare-dns-mcp/list_ssl_certs': listSslCertsTool,
      'cloudflare-dns-mcp/order_ssl_cert': orderSslCertTool,
      'cloudflare-dns-mcp/upload_custom_certificate': uploadCustomCertTool,
    };
  • Helper function to resolve zone name to zone ID, used by the handler.
    function makeHelpers(client: CloudflareClient) {
      return {
        getZoneId: async (zoneName: string): Promise<string> => {
          const zones = await client.get<Array<{ id: string; name: string }>>('/zones', { name: zoneName });
          if (zones.length === 0) throw new Error(`Zone ${zoneName} not found`);
          return zones[0].id;
        },
      };
    }

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/jeffgolden/cloudflare_mcp'

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