Skip to main content
Glama

docs_list_tools

Discover available SDK documentation tools and their parameters to access up-to-date API data and build with live information.

Instructions

List all SDK documentation tools with parameters. Essential for discovering what's available.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • Complete implementation of docs_list_tools handler - fetches GitBook tools and formats them with full parameter details
    server.tool(
      "docs_list_tools",
      "List all SDK documentation tools with parameters. Essential for discovering what's available.",
      {},
      DOCS_READ_ONLY,
      async () => {
        const tools = await fetchGitBookTools();
        if (tools.length === 0) {
          return {
            content: [{
              type: "text",
              text: `⚠️ No SDK documentation tools available.\n\n**Troubleshooting:**\n1. Run \`docs_refresh\` to reconnect\n2. Check \`docs_health\` for status\n3. The GitBook MCP at docs.sodax.com may be temporarily down\n\n**Alternative:** SODAX API tools (sodax_*) work independently.`
            }]
          };
        }
        
        const toolList = tools.map(t => {
          const params = t.inputSchema.properties 
            ? Object.entries(t.inputSchema.properties).map(([k, v]) => {
                const prop = v as { type?: string; description?: string };
                const required = t.inputSchema.required?.includes(k) ? " (required)" : "";
                return `  - \`${k}\`: ${prop.type || "any"}${required}${prop.description ? ` — ${prop.description}` : ""}`;
              }).join("\n")
            : "  (no parameters)";
          return `### \`docs_${t.name}\`\n${t.description}\n\n**Parameters:**\n${params}`;
        }).join("\n\n---\n\n");
        
        return {
          content: [{
            type: "text",
            text: `# SDK Documentation Tools\n\n${tools.length} tools from docs.sodax.com:\n\n---\n\n${toolList}`
          }]
        };
      }
    );
  • Input schema for docs_list_tools - empty object indicates no parameters required
    {},
  • Registration of docs_list_tools tool via server.tool() with name, description, schema, and handler
    server.tool(
      "docs_list_tools",
      "List all SDK documentation tools with parameters. Essential for discovering what's available.",
      {},
      DOCS_READ_ONLY,
      async () => {
        const tools = await fetchGitBookTools();
        if (tools.length === 0) {
          return {
            content: [{
              type: "text",
              text: `⚠️ No SDK documentation tools available.\n\n**Troubleshooting:**\n1. Run \`docs_refresh\` to reconnect\n2. Check \`docs_health\` for status\n3. The GitBook MCP at docs.sodax.com may be temporarily down\n\n**Alternative:** SODAX API tools (sodax_*) work independently.`
            }]
          };
        }
        
        const toolList = tools.map(t => {
          const params = t.inputSchema.properties 
            ? Object.entries(t.inputSchema.properties).map(([k, v]) => {
                const prop = v as { type?: string; description?: string };
                const required = t.inputSchema.required?.includes(k) ? " (required)" : "";
                return `  - \`${k}\`: ${prop.type || "any"}${required}${prop.description ? ` — ${prop.description}` : ""}`;
              }).join("\n")
            : "  (no parameters)";
          return `### \`docs_${t.name}\`\n${t.description}\n\n**Parameters:**\n${params}`;
        }).join("\n\n---\n\n");
        
        return {
          content: [{
            type: "text",
            text: `# SDK Documentation Tools\n\n${tools.length} tools from docs.sodax.com:\n\n---\n\n${toolList}`
          }]
        };
      }
    );
  • Helper function that returns list of available GitBook tool names including docs_list_tools
    export async function getGitBookToolNames(): Promise<string[]> {
      try {
        const tools = await fetchGitBookTools();
        const proxyTools = tools.map(t => `docs_${t.name}`);
        return [...proxyTools, "docs_health", "docs_refresh", "docs_list_tools"];
      } catch {
        return ["docs_health", "docs_refresh", "docs_list_tools"];
      }
    }
  • Analytics mapping for docs_list_tools to the 'sdk-docs' tracking group
    docs_list_tools: "sdk-docs",

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/gosodax/sodax-builders-mcp'

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