Skip to main content
Glama

get_twitterapi_guide

Access TwitterAPI.io documentation for pricing, rate limits, authentication, and filter rules. Retrieve full guide content with headers, paragraphs, and code examples.

Instructions

Get TwitterAPI.io guide pages for conceptual topics.

USE THIS WHEN: You need information about pricing, rate limits, authentication, or filter rules. AVAILABLE GUIDES: pricing, qps_limits, tweet_filter_rules, changelog, introduction, authentication, readme

RETURNS: Full guide content with headers, paragraphs, and code examples.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
guide_nameYesGuide name: pricing, qps_limits, tweet_filter_rules, changelog, introduction, authentication, readme

Implementation Reference

  • Main execution logic for get_twitterapi_guide: validates input, retrieves guide page from data.pages, constructs formatted Markdown response with title, URL, overview, TOC, content sections, key points, code examples, and full raw text.
    case "get_twitterapi_guide": { // Validate input const validation = validateGuideName(args.guide_name); if (!validation.valid) { return formatToolError(validation.error); } const page = data.pages?.[validation.value]; if (!page) { return formatToolError({ type: ErrorType.NOT_FOUND, message: `Guide "${validation.value}" not found`, suggestion: `Available guides: ${Object.keys(data.pages || {}).join(', ')}`, retryable: false }); } let output = `# ${page.title || validation.value}\n\n`; output += `**URL:** ${page.url || "N/A"}\n\n`; if (page.description) { output += `## Overview\n${page.description}\n\n`; } if (page.headers?.length > 0) { output += `## Table of Contents\n`; output += page.headers.map(h => `${" ".repeat(h.level - 1)}- ${h.text}`).join("\n"); output += "\n\n"; } if (page.paragraphs?.length > 0) { output += `## Content\n`; output += page.paragraphs.join("\n\n"); output += "\n\n"; } if (page.list_items?.length > 0) { output += `## Key Points\n`; output += page.list_items.map(li => `- ${li}`).join("\n"); output += "\n\n"; } if (page.code_snippets?.length > 0) { output += `## Code Examples\n\`\`\`\n`; output += page.code_snippets.join("\n"); output += "\n```\n\n"; } output += `## Full Content\n${page.raw_text || "No additional content."}`; return formatToolSuccess(output); }
  • index.js:1024-1060 (registration)
    Tool registration in ListToolsRequestSchema handler: defines name, description, input schema (guide_name enum), and output schema for structured LLM responses.
    name: "get_twitterapi_guide", description: `Get TwitterAPI.io guide pages for conceptual topics. USE THIS WHEN: You need information about pricing, rate limits, authentication, or filter rules. AVAILABLE GUIDES: pricing, qps_limits, tweet_filter_rules, changelog, introduction, authentication, readme RETURNS: Full guide content with headers, paragraphs, and code examples.`, inputSchema: { type: "object", properties: { guide_name: { type: "string", description: "Guide name: pricing, qps_limits, tweet_filter_rules, changelog, introduction, authentication, readme", enum: ["pricing", "qps_limits", "tweet_filter_rules", "changelog", "introduction", "authentication", "readme"] }, }, required: ["guide_name"], }, outputSchema: { type: "object", properties: { content: { type: "array", items: { type: "object", properties: { type: { type: "string", enum: ["text"] }, text: { type: "string", description: "Markdown with: Title, URL, Overview, Table of Contents, Content paragraphs, Key Points list, Code Examples, Full Content" } } } } } } },
  • Input/output schemas defining the tool's parameters (guide_name with enum validation) and expected response structure (text content array).
    inputSchema: { type: "object", properties: { guide_name: { type: "string", description: "Guide name: pricing, qps_limits, tweet_filter_rules, changelog, introduction, authentication, readme", enum: ["pricing", "qps_limits", "tweet_filter_rules", "changelog", "introduction", "authentication", "readme"] }, }, required: ["guide_name"], }, outputSchema: { type: "object", properties: { content: { type: "array", items: { type: "object", properties: { type: { type: "string", enum: ["text"] }, text: { type: "string", description: "Markdown with: Title, URL, Overview, Table of Contents, Content paragraphs, Key Points list, Code Examples, Full Content" } } } } } }
  • Helper function to validate and normalize guide_name input against predefined GUIDE_NAMES list, providing error messages with available options.
    function validateGuideName(name) { if (!name || typeof name !== 'string') { return { valid: false, error: { type: ErrorType.INPUT_VALIDATION, message: 'Guide name cannot be empty', suggestion: `Available guides: ${VALIDATION.GUIDE_NAMES.join(', ')}`, retryable: false } }; } const trimmed = name.trim().toLowerCase(); if (!VALIDATION.GUIDE_NAMES.includes(trimmed)) { return { valid: false, error: { type: ErrorType.INPUT_VALIDATION, message: `Unknown guide: "${trimmed}"`, suggestion: `Available guides: ${VALIDATION.GUIDE_NAMES.join(', ')}`, retryable: false } }; } return { valid: true, value: trimmed }; }

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/dorukardahan/twitterapi-docs-mcp'

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