Skip to main content
Glama
ampcome-mcps

Firecrawl MCP Server

by ampcome-mcps

firecrawl_check_crawl_status

Check the status and progress of a web crawling job, including viewing results when available.

Instructions

Check the status of a crawl job.

Usage Example:

{
  "name": "firecrawl_check_crawl_status",
  "arguments": {
    "id": "550e8400-e29b-41d4-a716-446655440000"
  }
}

Returns: Status and progress of the crawl job, including results if available.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesCrawl job ID to check

Implementation Reference

  • Main execution logic for the firecrawl_check_crawl_status tool. Validates arguments, calls Firecrawl client to check crawl status, formats the response with status details and results.
          case 'firecrawl_check_crawl_status': {
            if (!isStatusCheckOptions(args)) {
              throw new Error('Invalid arguments for firecrawl_check_crawl_status');
            }
            const response = await client.checkCrawlStatus(args.id);
            if (!response.success) {
              throw new Error(response.error);
            }
            const status = `Crawl Status:
    Status: ${response.status}
    Progress: ${response.completed}/${response.total}
    Credits Used: ${response.creditsUsed}
    Expires At: ${response.expiresAt}
    ${
      response.data.length > 0 ? '\nResults:\n' + formatResults(response.data) : ''
    }`;
            return {
              content: [{ type: 'text', text: trimResponseText(status) }],
              isError: false,
            };
          }
  • Tool definition object containing name, description, and input schema for validating arguments (requires 'id' string).
    const CHECK_CRAWL_STATUS_TOOL: Tool = {
      name: 'firecrawl_check_crawl_status',
      description: `
    Check the status of a crawl job.
    
    **Usage Example:**
    \`\`\`json
    {
      "name": "firecrawl_check_crawl_status",
      "arguments": {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    }
    \`\`\`
    **Returns:** Status and progress of the crawl job, including results if available.
    `,
      inputSchema: {
        type: 'object',
        properties: {
          id: {
            type: 'string',
            description: 'Crawl job ID to check',
          },
        },
        required: ['id'],
      },
    };
  • src/index.ts:962-973 (registration)
    Registration of all tools including CHECK_CRAWL_STATUS_TOOL in the MCP server's listTools handler.
    server.setRequestHandler(ListToolsRequestSchema, async () => ({
      tools: [
        SCRAPE_TOOL,
        MAP_TOOL,
        CRAWL_TOOL,
        CHECK_CRAWL_STATUS_TOOL,
        SEARCH_TOOL,
        EXTRACT_TOOL,
        DEEP_RESEARCH_TOOL,
        GENERATE_LLMSTXT_TOOL,
      ],
    }));
  • Type guard function to validate arguments for firecrawl_check_crawl_status tool.
    function isStatusCheckOptions(args: unknown): args is StatusCheckOptions {
      return (
        typeof args === 'object' &&
        args !== null &&
        'id' in args &&
        typeof (args as { id: unknown }).id === 'string'
      );
    }
  • TypeScript interface defining the expected arguments shape for the tool.
    interface StatusCheckOptions {
      id: string;
    }

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/ampcome-mcps/firecrawl-mcp'

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