Skip to main content
Glama
CorbettCajun

SpiderFoot MCP Server

spiderfoot_scan_logs

Retrieve scan execution logs for a specific SpiderFoot OSINT reconnaissance scan to monitor progress, track events, and analyze data collection activities.

Instructions

Fetch/poll scan logs for a given scan ID.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
limitNo
reverseNo
rowIdNo

Implementation Reference

  • Core implementation of the scanLogs functionality: sends a POST request to the Spiderfoot server's /scanlog endpoint with the provided parameters and returns the response data.
    async scanLogs(args: { id: string; limit?: number; reverse?: '0' | '1'; rowId?: number }) {
      const { data } = await this.http.post('/scanlog', {
        id: args.id,
        limit: args.limit,
        reverse: args.reverse,
        rowId: args.rowId,
      });
      return data;
    }
  • Zod schema defining the input parameters for the spiderfoot_scan_logs tool.
    const ScanLogsSchema = z.object({
      id: z.string().min(1),
      limit: z.number().int().positive().optional(),
      reverse: z.enum(['0', '1']).optional(),
      rowId: z.number().int().nonnegative().optional(),
    });
  • src/index.ts:94-98 (registration)
    Registers the 'spiderfoot_scan_logs' tool on the MCP server (stdio transport), providing title, description, input schema, and handler that delegates to sf.scanLogs.
    server.registerTool(
      'spiderfoot_scan_logs',
      { title: 'Scan Logs', description: 'Fetch/poll scan logs for a given scan ID.', inputSchema: { id: z.string(), limit: z.number().optional(), reverse: z.enum(['0','1']).optional(), rowId: z.number().optional() } },
      async ({ id, limit, reverse, rowId }) => ({ content: [{ type: 'text', text: JSON.stringify(await sf.scanLogs({ id, limit, reverse, rowId })) }] })
    );
  • Registers the 'spiderfoot_scan_logs' tool on the MCP server (HTTP transport), identical to the stdio version.
    server.registerTool(
      'spiderfoot_scan_logs',
      { title: 'Scan Logs', description: 'Fetch/poll scan logs for a given scan ID.', inputSchema: { id: z.string(), limit: z.number().optional(), reverse: z.enum(['0','1']).optional(), rowId: z.number().optional() } },
      async ({ id, limit, reverse, rowId }) => ({ content: [{ type: 'text', text: JSON.stringify(await sf.scanLogs({ id, limit, reverse, rowId })) }] })
    );

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/CorbettCajun/Spiderfoot-MCP-Server'

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