Skip to main content
Glama

proxy_check_fingerprint_runtime

Check Docker/Podman runtime readiness for TLS/HTTP2 fingerprint spoofing without sending network traffic.

Instructions

Check Docker/Podman runtime readiness for TLS/HTTP2 fingerprint spoofing without sending traffic.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • The tool registration and handler implementation for 'proxy_check_fingerprint_runtime' within the MCP server.
    server.tool(
      "proxy_check_fingerprint_runtime",
      "Check Docker/Podman runtime readiness for TLS/HTTP2 fingerprint spoofing without sending traffic.",
      {},
      async () => {
        try {
          const runtime = await checkSpoofRuntime();
          return {
            content: [{
              type: "text" as const,
              text: JSON.stringify(runtime),
            }],
          };
        } catch (e) {
          return { content: [{ type: "text" as const, text: JSON.stringify({ status: "error", error: String(e) }) }] };
        }
      },
    );
  • The 'checkSpoofRuntime' helper function, which probes for docker/podman and checks for container image readiness, used by the tool handler.
    export async function checkSpoofRuntime(): Promise<FingerprintRuntimeCheck> {
      const runtimes = await Promise.all(["docker", "podman"].map((name) => probeRuntime(name)));
      const recommended = runtimes.find((r) => r.operational)?.name ?? null;
      const cached = _containerCli;
      const selected = cached ?? recommended;
      const cacheStale = !!cached && !runtimes.some((r) => r.name === cached && r.operational);
      const inspectRuntime = (!cacheStale ? selected : recommended) ?? null;
    
      let image: ImageInspectResult = { name: IMAGE_NAME, exists: false };
      let container: ContainerInspectResult = { name: CONTAINER_NAME, exists: false, running: false };
      if (inspectRuntime) {
        [image, container] = await Promise.all([
          inspectImageByName(inspectRuntime, IMAGE_NAME),
          inspectContainerByName(inspectRuntime, CONTAINER_NAME),
        ]);
      }
    
      return {
        status: "success",
        ready: !!selected && runtimes.some((r) => r.name === selected && r.operational),
        runtime: { selected, recommended, cached, cacheStale },
        inspectedWithRuntime: inspectRuntime,
        runtimes,
        image,
        container,
      };
    }
    
    // ── Container lifecycle ──
    
    function getProjectRoot(): string {
      const thisFile = fileURLToPath(import.meta.url);

Tool Definition Quality

Score is being calculated. Check back soon.

Install Server

Other Tools

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/yfe404/proxy-mcp'

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