_ registry / mcp http-sse · checked 15m ago

identifai-mcp-server

https://mcp.identifai.net

Registry code: db7ca3237c834529

api record

Detect AI-generated images, videos, and audio with identifAI's deepfake detection tools.

from a public catalogue that lists it, not from the operator

endpoint
https://mcp.identifai.net
protocol
http-sse ·2025-06-18
authentication
none observed
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
0 · newcomer
_ is it live, free and safe measured by this hub
Is identifai-mcp-server live?
Yes — it answered the hub's last check (checked 15m ago). It answered 100% of checks over the last 30 days.
Is identifai-mcp-server free to use?
Yes — the hub reached it with no key and no payment.
What tools does identifai-mcp-server have?
22 tools: get_image_classification, get_xai_map, classify_audio, override_video_classification, get_user_credits, classify_image, classify_image_url, get_all_image_classifications, ….
Is identifai-mcp-server safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
99.7%

90 days 99.6%· all time 99.6%

latency
242ms

last good check

priced tools
0

of 22 tools

_ answered our checks, 90 days 470 checks · signed record
  • degraded → live
  • live → degraded· timeout after 20000ms
  • degraded → live
  • degraded → live
  • live → degraded· timeout after 20000ms
_ what it is for
used for
  • detect ai-generated images
  • detect ai-generated video
  • detect synthetic speech in audio
  • get an image manipulation heatmap
  • check document tampering
takes → gives
images, video, audio → data, images
tools
9 reads10 changes data
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

inferred, not observed

Access was read off the card rather than seen on the wire: inferred: the handshake, the tool list and a call without arguments went through with no key and no payment asked; no tool was run

_ what it can do 22 tools
22 never probed 0 of 22 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • get_image_classification reads unknown 13h ago

    Retrieve the classification result for a previously submitted image. Use the identifier returned by classify_image or classify_image_url. Poll this endpoint until the result is available.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "identifier"
      ],
      "properties": {
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "identifier": {
          "type": "string",
          "description": "Classification identifier returned by the submission endpoint"
        }
      }
    }
    arguments 17 lines
  • get_xai_map unknown 6h ago

    Download the Attention Map or the Attention Graph (PNG) produced by the XAI (eXplainable AI) scope for a model, for an image classified with withXai=true or for a frame of a video classified with withXai=true (use the identifier of the frame listed in results.images). The explanations of the per-model results list the type and method of every map available for each model. The Smart Full Analysis heatmap is not an XAI map: use get_classification_heatmap for it.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "identifier",
        "model",
        "method"
      ],
      "properties": {
        "type": {
          "enum": [
            "attention_map",
            "attention_graph"
          ],
          "type": "string",
          "description": "Map to download: attention_map (overlaid on the original content, default) or attention_graph (trend and peaks of the model attention)"
        },
        "model": {
          "type": "string",
          "description": "Name of the model that produced the map, as reported in the model field of the per-model results (e.g. Revelio)"
        },
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "method": {
          "enum": [
            "legrad",
            "transformer_attribution",
            "attention_rollout"
          ],
          "type": "string",
          "description": "XAI method used to compute the map"
        },
        "identifier": {
          "type": "string",
          "description": "Identifier of the image, or of the video frame"
        }
      }
    }
    arguments 40 lines
  • classify_audio changes data unknown never probed

    Upload an audio or speech file to detect whether it is human-recorded or AI-synthesized. Provide the audio content as a base64-encoded string. Returns a classification identifier for async result retrieval. WARNING: base64 encoding adds ~33% overhead to the original file size. For audio files larger than 10 MB, use classify_audio_url instead and provide a publicly accessible URL to avoid payload size issues. Authentication: provide your Identifai API key via the apiKey parameter or configure the X-Api-Key HTTP header in your MCP client (recommended).

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "fileData"
      ],
      "properties": {
        "refId": {
          "type": "string",
          "description": "Optional caller-defined reference ID"
        },
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "noCache": {
          "type": "boolean",
          "description": "Bypass cache and force fresh classification"
        },
        "fileData": {
          "type": "string",
          "description": "Base64-encoded raw binary content of the audio file to classify. Do not pass a file-system path; encode the file bytes directly as base64. Only suitable for files up to ~10 MB; for larger audio files use classify_audio_url with a publicly accessible URL."
        },
        "filename": {
          "type": "string",
          "description": "Optional file name including extension (e.g. voice.mp3). Used to hint the media type."
        },
        "webhookUrl": {
          "type": "string",
          "description": "Optional URL that receives the classification result as soon as it is ready, instead of polling. Webhook callbacks must be enabled for your account."
        },
        "audioTimestamps": {
          "type": "string",
          "description": "[Plan feature] Specific moments of the speech to analyze: comma-separated timecodes in HH:MM:SS.mmm from the start of the file (e.g. \"00:00:05.000,00:01:12.500\")."
        },
        "preventC2paForces": {
          "type": "boolean",
          "description": "If true, a C2PA signature will not force the classification to artificial"
        },
        "deferredWebhookUrl": {
          "type": "string",
          "description": "Optional URL notified once the deferred results of the submission are complete (e.g. the textual explanations of the XAI maps and of the heatmap), after the main result sent to webhookUrl."
        }
      }
    }
    arguments 45 lines
  • override_video_classification changes data unknown never probed

    Manually override the classification verdict for a previously classified video. Sets the result to either "human" or "artificial".

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "identifier",
        "classification"
      ],
      "properties": {
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "identifier": {
          "type": "string",
          "description": "Classification identifier to override"
        },
        "classification": {
          "enum": [
            "human",
            "artificial"
          ],
          "type": "string",
          "description": "The correct classification value to apply"
        }
      }
    }
    arguments 26 lines
  • get_user_credits reads unknown never probed

    Retrieve the current available and used classification credits for the authenticated Identifai account. Use this to check quota status before submitting large batches.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        }
      }
    }
    arguments 10 lines
  • classify_image changes data unknown never probed

    Upload an image file to detect whether it is human-made or AI-generated. Provide the image content as a base64-encoded string. Returns a classification identifier for async result retrieval. WARNING: base64 encoding adds ~33% overhead to the original file size. For images larger than 4 MB, use classify_image_url instead and provide a publicly accessible URL to avoid payload size issues. Authentication: provide your Identifai API key via the apiKey parameter or configure the X-Api-Key HTTP header in your MCP client (recommended).

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "fileData"
      ],
      "properties": {
        "refId": {
          "type": "string",
          "description": "Optional caller-defined reference ID attached to the result"
        },
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "noCache": {
          "type": "boolean",
          "description": "Bypass cache and force a fresh classification"
        },
        "withXai": {
          "type": "boolean",
          "description": "Enable the XAI (eXplainable AI) scope: the models also report the areas of the image they focused on (attention map and attention graph, downloadable with get_xai_map). Must be enabled in the pricing plan."
        },
        "fileData": {
          "type": "string",
          "description": "Base64-encoded raw binary content of the image file to classify. Do not pass a file-system path; encode the file bytes directly as base64. Only suitable for files up to ~4 MB; for larger images use classify_image_url with a publicly accessible URL."
        },
        "filename": {
          "type": "string",
          "description": "Optional file name including extension (e.g. photo.jpg). Used to hint the media type."
        },
        "withNsfw": {
          "type": "boolean",
          "description": "Enable NSFW (Not Safe For Work) content detection on the image"
        },
        "webhookUrl": {
          "type": "string",
          "description": "Optional URL that receives the classification result as soon as it is ready, instead of polling. Webhook callbacks must be enabled for your account."
        },
        "withLlmXai": {
          "type": "boolean",
          "description": "Together with withXai, also produce AI-powered natural-language explanations of the regions that received the most attention. They are a deferred result: poll the classification again or use deferredWebhookUrl."
        },
        "withHeatmap": {
          "type": "boolean",
          "description": "Generate an AI content heatmap alongside the classification"
        },
        "withMorphing": {
          "type": "boolean",
          "description": "Enable face morphing analysis on the image"
        },
        "withTampering": {
          "type": "boolean",
          "description": "Enable tampering/splicing detection on the image"
        },
        "llmXaiLanguage": {
          "enum": [
            "english",
            "italian",
            "spanish",
            "german"
          ],
          "type": "string",
          "description": "Language of the AI-powered explanations. Applied only together with withLlmXai; defaults to the language of the pricing plan."
        },
        "preventC2paForces": {
          "type": "boolean",
          "description": "If true, a C2PA signature will not force the classification to artificial"
        },
        "withSmartAnalysis": {
          "type": "boolean",
          "description": "Enable the Smart Full Analysis on the image: the most informative areas are classified as separate crops by the most advanced Revelio model and combined into an overall verdict. Must be enabled in the pricing plan."
        },
        "deferredWebhookUrl": {
          "type": "string",
          "description": "Optional URL notified once the deferred results of the submission are complete (e.g. the textual explanations of the XAI maps and of the heatmap), after the main result sent to webhookUrl."
        }
      }
    }
    arguments 79 lines
  • classify_image_url changes data unknown never probed

    Submit a publicly accessible image URL to detect whether it is human-made or AI-generated. Returns a classification identifier for result retrieval. Supports the same analysis options as file-based classification. Authentication: provide your Identifai API key via the apiKey parameter or configure the X-Api-Key HTTP header in your MCP client (recommended).

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "imageUrl"
      ],
      "properties": {
        "refId": {
          "type": "string",
          "description": "Optional caller-defined reference ID"
        },
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "noCache": {
          "type": "boolean",
          "description": "Bypass cache and force fresh classification"
        },
        "withXai": {
          "type": "boolean",
          "description": "Enable the XAI (eXplainable AI) scope: the models also report the areas of the image they focused on (attention map and attention graph, downloadable with get_xai_map). Must be enabled in the pricing plan."
        },
        "imageUrl": {
          "type": "string",
          "description": "Public HTTP/HTTPS URL of the image to classify"
        },
        "withNsfw": {
          "type": "boolean",
          "description": "Enable NSFW (Not Safe For Work) content detection on the image"
        },
        "webhookUrl": {
          "type": "string",
          "description": "Optional URL that receives the classification result as soon as it is ready, instead of polling. Webhook callbacks must be enabled for your account."
        },
        "withLlmXai": {
          "type": "boolean",
          "description": "Together with withXai, also produce AI-powered natural-language explanations of the regions that received the most attention. They are a deferred result: poll the classification again or use deferredWebhookUrl."
        },
        "withHeatmap": {
          "type": "boolean",
          "description": "Generate an AI content heatmap"
        },
        "withMorphing": {
          "type": "boolean",
          "description": "Enable face morphing analysis"
        },
        "withTampering": {
          "type": "boolean",
          "description": "Enable tampering/splicing detection"
        },
        "llmXaiLanguage": {
          "enum": [
            "english",
            "italian",
            "spanish",
            "german"
          ],
          "type": "string",
          "description": "Language of the AI-powered explanations. Applied only together with withLlmXai; defaults to the language of the pricing plan."
        },
        "preventC2paForces": {
          "type": "boolean",
          "description": "If true, a C2PA signature will not force the classification to artificial"
        },
        "withSmartAnalysis": {
          "type": "boolean",
          "description": "Enable the Smart Full Analysis on the image: the most informative areas are classified as separate crops by the most advanced Revelio model and combined into an overall verdict. Must be enabled in the pricing plan."
        },
        "deferredWebhookUrl": {
          "type": "string",
          "description": "Optional URL notified once the deferred results of the submission are complete (e.g. the textual explanations of the XAI maps and of the heatmap), after the main result sent to webhookUrl."
        }
      }
    }
    arguments 75 lines
  • get_all_image_classifications reads unknown 17h ago

    Retrieve classification results for multiple images in a single request. Accepts up to 100 identifiers. Useful for batch result polling.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "identifiers"
      ],
      "properties": {
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "identifiers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Array of classification identifiers (max 100)"
        }
      }
    }
    arguments 20 lines
  • get_classification_heatmap reads unknown 13h ago

    Retrieve a visual heatmap highlighting which regions of the image were detected as AI-generated. Requires the classification to have been submitted with withHeatmap enabled.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "identifier"
      ],
      "properties": {
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "identifier": {
          "type": "string",
          "description": "Classification identifier for which to fetch the heatmap"
        }
      }
    }
    arguments 17 lines
  • override_image_classification changes data unknown never probed

    Manually override the classification verdict for a previously classified image. Sets the result to either "human" or "artificial". Used for corrections and feedback.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "identifier",
        "classification"
      ],
      "properties": {
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "identifier": {
          "type": "string",
          "description": "Classification identifier to override"
        },
        "classification": {
          "enum": [
            "human",
            "artificial"
          ],
          "type": "string",
          "description": "The correct classification value to apply"
        }
      }
    }
    arguments 26 lines
  • classify_video changes data unknown never probed

    Upload a video file to detect whether it is human-made or AI-generated. Provide the video content as a base64-encoded string. The video is split into frames which are individually classified. Returns a classification identifier for async result retrieval. WARNING: base64 encoding adds ~33% overhead to the original file size. For videos larger than 10 MB, use classify_video_url instead and provide a publicly accessible URL to avoid payload size issues. Authentication: provide your Identifai API key via the apiKey parameter or configure the X-Api-Key HTTP header in your MCP client (recommended).

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "fileData"
      ],
      "properties": {
        "refId": {
          "type": "string",
          "description": "Optional caller-defined reference ID"
        },
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "frames": {
          "enum": [
            "5",
            "10",
            "30"
          ],
          "type": "string",
          "description": "Maximum number of frames to extract and classify"
        },
        "noCache": {
          "type": "boolean",
          "description": "Bypass cache and force fresh classification"
        },
        "withXai": {
          "type": "boolean",
          "description": "Enable the XAI (eXplainable AI) scope: the models also report the areas of each analyzed frame they focused on (attention map and attention graph, downloadable with get_xai_map). Must be enabled in the pricing plan."
        },
        "fileData": {
          "type": "string",
          "description": "Base64-encoded raw binary content of the video file to classify. Do not pass a file-system path; encode the file bytes directly as base64. Only suitable for files up to ~10 MB; for larger videos use classify_video_url with a publicly accessible URL."
        },
        "filename": {
          "type": "string",
          "description": "Optional file name including extension (e.g. clip.mp4). Used to hint the media type."
        },
        "withNsfw": {
          "type": "boolean",
          "description": "Enable NSFW (Not Safe For Work) content detection on video frames"
        },
        "keyFrames": {
          "type": "boolean",
          "description": "Extract key frames rather than uniform frames"
        },
        "withAudio": {
          "type": "boolean",
          "description": "[BETA] Analyze the audio track of the video in addition to the frames. Requires enablement in the pricing plan."
        },
        "webhookUrl": {
          "type": "string",
          "description": "Optional URL that receives the classification result as soon as it is ready, instead of polling. Webhook callbacks must be enabled for your account."
        },
        "withLlmXai": {
          "type": "boolean",
          "description": "Together with withXai, also produce AI-powered natural-language explanations of the regions that received the most attention. They are a deferred result: poll the classification again or use deferredWebhookUrl."
        },
        "withMorphing": {
          "type": "boolean",
          "description": "Enable face morphing analysis on video frames"
        },
        "withTampering": {
          "type": "boolean",
          "description": "Enable tampering detection on video frames"
        },
        "llmXaiLanguage": {
          "enum": [
            "english",
            "italian",
            "spanish",
            "german"
          ],
          "type": "string",
          "description": "Language of the AI-powered explanations. Applied only together with withLlmXai; defaults to the language of the pricing plan."
        },
        "audioTimestamps": {
          "type": "string",
          "description": "[Plan feature] Specific moments of the video's audio track (used only together with withAudio) to analyze: comma-separated timecodes in HH:MM:SS.mmm from the start of the file (e.g. \"00:00:05.000,00:01:12.500\")."
        },
        "keyFramesMethod": {
          "enum": [
            "iframes",
            "flow",
            "color"
          ],
          "type": "string",
          "description": "Algorithm used for key frame extraction"
        },
        "framesTimestamps": {
          "type": "string",
          "description": "[Plan feature] Specific moments of the video to analyze: comma-separated timecodes in HH:MM:SS.mmm from the start of the file (e.g. \"00:00:05.000,00:01:12.500\"). Exactly one frame is extracted at each moment."
        },
        "preventC2paForces": {
          "type": "boolean",
          "description": "If true, a C2PA signature will not force the classification to artificial"
        },
        "withSmartAnalysis": {
          "type": "boolean",
          "description": "Enable the Smart Full Analysis on each analyzed frame: the most informative areas are classified as separate crops by the most advanced Revelio model and combined into an overall verdict. Must be enabled in the pricing plan."
        },
        "deferredWebhookUrl": {
          "type": "string",
          "description": "Optional URL notified once the deferred results of the submission are complete (e.g. the textual explanations of the XAI maps and of the heatmap), after the main result sent to webhookUrl."
        },
        "ensureFacePerFrame": {
          "type": "boolean",
          "description": "Ensure at least one face is detected in each frame used for classification. Useful combined with withMorphing to detect face swaps. May increase processing time."
        }
      }
    }
    arguments 113 lines
  • classify_video_url changes data unknown never probed

    Submit a publicly accessible video URL for AI-generated content detection. Supports the same frame extraction and analysis options as file-based classification. Authentication: provide your Identifai API key via the apiKey parameter or configure the X-Api-Key HTTP header in your MCP client (recommended).

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "videoUrl"
      ],
      "properties": {
        "refId": {
          "type": "string",
          "description": "Optional caller-defined reference ID"
        },
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "frames": {
          "enum": [
            "5",
            "10",
            "30"
          ],
          "type": "string",
          "description": "Maximum frames to extract"
        },
        "noCache": {
          "type": "boolean",
          "description": "Bypass cache"
        },
        "withXai": {
          "type": "boolean",
          "description": "Enable the XAI (eXplainable AI) scope: the models also report the areas of each analyzed frame they focused on (attention map and attention graph, downloadable with get_xai_map). Must be enabled in the pricing plan."
        },
        "videoUrl": {
          "type": "string",
          "description": "Public HTTP/HTTPS URL of the video to classify"
        },
        "withNsfw": {
          "type": "boolean",
          "description": "Enable NSFW (Not Safe For Work) content detection on video frames"
        },
        "keyFrames": {
          "type": "boolean",
          "description": "Extract key frames"
        },
        "withAudio": {
          "type": "boolean",
          "description": "[BETA] Analyze the audio track of the video. Requires enablement in the pricing plan."
        },
        "webhookUrl": {
          "type": "string",
          "description": "Optional URL that receives the classification result as soon as it is ready, instead of polling. Webhook callbacks must be enabled for your account."
        },
        "withLlmXai": {
          "type": "boolean",
          "description": "Together with withXai, also produce AI-powered natural-language explanations of the regions that received the most attention. They are a deferred result: poll the classification again or use deferredWebhookUrl."
        },
        "withMorphing": {
          "type": "boolean",
          "description": "Enable face morphing analysis"
        },
        "withTampering": {
          "type": "boolean",
          "description": "Enable tampering detection"
        },
        "llmXaiLanguage": {
          "enum": [
            "english",
            "italian",
            "spanish",
            "german"
          ],
          "type": "string",
          "description": "Language of the AI-powered explanations. Applied only together with withLlmXai; defaults to the language of the pricing plan."
        },
        "audioTimestamps": {
          "type": "string",
          "description": "[Plan feature] Specific moments of the video's audio track (used only together with withAudio) to analyze: comma-separated timecodes in HH:MM:SS.mmm from the start of the file (e.g. \"00:00:05.000,00:01:12.500\")."
        },
        "keyFramesMethod": {
          "enum": [
            "iframes",
            "flow",
            "color"
          ],
          "type": "string",
          "description": "Key frame extraction algorithm"
        },
        "framesTimestamps": {
          "type": "string",
          "description": "[Plan feature] Specific moments of the video to analyze: comma-separated timecodes in HH:MM:SS.mmm from the start of the file (e.g. \"00:00:05.000,00:01:12.500\"). Exactly one frame is extracted at each moment."
        },
        "preventC2paForces": {
          "type": "boolean",
          "description": "If true, a C2PA signature will not force the classification to artificial"
        },
        "withSmartAnalysis": {
          "type": "boolean",
          "description": "Enable the Smart Full Analysis on each analyzed frame: the most informative areas are classified as separate crops by the most advanced Revelio model and combined into an overall verdict. Must be enabled in the pricing plan."
        },
        "deferredWebhookUrl": {
          "type": "string",
          "description": "Optional URL notified once the deferred results of the submission are complete (e.g. the textual explanations of the XAI maps and of the heatmap), after the main result sent to webhookUrl."
        },
        "ensureFacePerFrame": {
          "type": "boolean",
          "description": "Ensure at least one face is detected per frame. Useful with withMorphing."
        }
      }
    }
    arguments 109 lines
  • get_video_classification reads unknown 9h ago

    Retrieve the classification result for a previously submitted video. Poll until the result is ready — video classification is always asynchronous.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "identifier"
      ],
      "properties": {
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "identifier": {
          "type": "string",
          "description": "Classification identifier returned by the submission endpoint"
        }
      }
    }
    arguments 17 lines
  • get_all_video_classifications reads unknown 17h ago

    Retrieve classification results for multiple videos in a single request. Accepts up to 100 identifiers.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "identifiers"
      ],
      "properties": {
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "identifiers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Array of classification identifiers (max 100)"
        }
      }
    }
    arguments 20 lines
  • classify_audio_url changes data unknown never probed

    Submit a publicly accessible audio URL for AI-generated speech detection. Returns a classification identifier for async result retrieval. Authentication: provide your Identifai API key via the apiKey parameter or configure the X-Api-Key HTTP header in your MCP client (recommended).

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "audioUrl"
      ],
      "properties": {
        "refId": {
          "type": "string",
          "description": "Optional caller-defined reference ID"
        },
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "noCache": {
          "type": "boolean",
          "description": "Bypass cache"
        },
        "audioUrl": {
          "type": "string",
          "description": "Public HTTP/HTTPS URL of the audio to classify"
        },
        "webhookUrl": {
          "type": "string",
          "description": "Optional URL that receives the classification result as soon as it is ready, instead of polling. Webhook callbacks must be enabled for your account."
        },
        "audioTimestamps": {
          "type": "string",
          "description": "[Plan feature] Specific moments of the speech to analyze: comma-separated timecodes in HH:MM:SS.mmm from the start of the file (e.g. \"00:00:05.000,00:01:12.500\")."
        },
        "deferredWebhookUrl": {
          "type": "string",
          "description": "Optional URL notified once the deferred results of the submission are complete (e.g. the textual explanations of the XAI maps and of the heatmap), after the main result sent to webhookUrl."
        }
      }
    }
    arguments 37 lines
  • get_audio_classification reads unknown 17h ago

    Retrieve the classification result for a previously submitted audio file. Poll until the result is ready.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "identifier"
      ],
      "properties": {
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "identifier": {
          "type": "string",
          "description": "Classification identifier returned by the submission endpoint"
        }
      }
    }
    arguments 17 lines
  • get_all_audio_classifications reads unknown 13h ago

    Retrieve classification results for multiple audio files in a single request. Accepts up to 100 identifiers.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "identifiers"
      ],
      "properties": {
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "identifiers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Array of classification identifiers (max 100)"
        }
      }
    }
    arguments 20 lines
  • override_audio_classification changes data unknown never probed

    Manually override the classification verdict for a previously classified audio file. Sets the result to either "human" or "artificial".

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "identifier",
        "classification"
      ],
      "properties": {
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "identifier": {
          "type": "string",
          "description": "Classification identifier to override"
        },
        "classification": {
          "enum": [
            "human",
            "artificial"
          ],
          "type": "string",
          "description": "The correct classification value to apply"
        }
      }
    }
    arguments 26 lines
  • submit_tampering_tickets changes data unknown never probed

    Submit one or more ticket images (as base64-encoded strings) to the Identifai v2 API for batch tampering detection. Each ticket is analysed independently; results are retrieved asynchronously via get_tampering_batch_results using the returned batch_id. Supports PDF files (each page becomes a separate analysis entry). Maximum 10 tickets per batch. Authentication: provide your Identifai API key via the apiKey parameter or configure the X-Api-Key HTTP header in your MCP client (recommended).

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "tickets"
      ],
      "properties": {
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "models": {
          "type": "string",
          "description": "Comma-separated list of model names to use for detection. If omitted, all models available in the pricing plan are used."
        },
        "refIds": {
          "type": "string",
          "description": "Comma-separated list of reference IDs, one per ticket (e.g. \"TICKET-001,TICKET-002\"). Must match the number of tickets if provided."
        },
        "tickets": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Array of base64-encoded raw binary content of ticket image/PDF files to analyse. Do not pass file-system paths; encode the file bytes directly as base64. Maximum 10 items. For single files, wrap in an array: [\"<base64>\"]."
        },
        "filenames": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional array of filenames (e.g. [\"ticket1.jpg\", \"ticket2.pdf\"]). Must match the length of the tickets array if provided."
        }
      }
    }
    arguments 35 lines
  • get_tampering_batch_results reads unknown 9h ago

    Retrieve the tampering detection results for a previously submitted batch of tickets. Poll until the "done" field is true. Each result contains a verdict ("authentic" or "tampered") and per-heuristic verdicts.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "batchId"
      ],
      "properties": {
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "batchId": {
          "type": "string",
          "description": "Batch identifier returned by submit_tampering_tickets"
        }
      }
    }
    arguments 17 lines
  • validate_media unknown never probed

    Check whether an image, a video or an audio file can be analyzed, without submitting it for classification: the file is not stored, no classification is started and no credits are consumed. Send the same options (withMorphing, withTampering, withHeatmap, withNsfw, withAudio) you plan to use for the real submission, since the file is checked against the models those options select. Returns { valid, status, data }: valid=false with status 413 (file too large) or 422 (e.g. corrupted file, resolution too low) and the reasons in data. Provide the file content as a base64-encoded string. Authentication: provide your Identifai API key via the apiKey parameter or configure the X-Api-Key HTTP header in your MCP client (recommended).

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "type",
        "fileData"
      ],
      "properties": {
        "type": {
          "enum": [
            "image",
            "video",
            "audio"
          ],
          "type": "string",
          "description": "Kind of media to validate"
        },
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "fileData": {
          "type": "string",
          "description": "Base64-encoded raw binary content of the media file to validate. Do not pass a file-system path."
        },
        "filename": {
          "type": "string",
          "description": "Optional file name including extension (e.g. photo.jpg). Used to hint the media type."
        },
        "withNsfw": {
          "type": "boolean",
          "description": "Image and video only. Validate also against the NSFW detection models"
        },
        "withAudio": {
          "type": "boolean",
          "description": "[BETA] Video only. Validate also against the models of the audio track. Requires enablement in the pricing plan."
        },
        "withHeatmap": {
          "type": "boolean",
          "description": "Image only. Validate also against the AI heatmap models"
        },
        "withMorphing": {
          "type": "boolean",
          "description": "Image and video only. Validate also against the face morphing models"
        },
        "withTampering": {
          "type": "boolean",
          "description": "Image and video only. Validate also against the tampering models"
        }
      }
    }
    arguments 51 lines
  • get_submission_download_url unknown 6h ago

    Return a pre-signed URL, valid for 60 minutes, to download the file associated with a submission (API v2). For video submissions a frame or audio-track identifier can be used to download that single frame or track.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "type",
        "identifier"
      ],
      "properties": {
        "type": {
          "enum": [
            "image",
            "video",
            "audio"
          ],
          "type": "string",
          "description": "Type of the submission"
        },
        "apiKey": {
          "type": "string",
          "description": "Identifai API key used to authenticate requests to the Identifai backend. Optional when the MCP client is configured to send the X-Api-Key HTTP header (the recommended approach for remote server deployments — set it once in your MCP client config). Required only when the header is not configured. Never use a placeholder value — only pass the real key supplied by the user. Keys can be obtained from the Identifai dashboard at https://identifai.net."
        },
        "identifier": {
          "type": "string",
          "description": "Identifier of the submission (or, for videos, of a frame or audio track)"
        }
      }
    }
    arguments 27 lines
_ try it through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id db7ca3237c834529.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/db7ca3237c834529/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/db7ca3237c834529/badge.svg)](https://brick.blue/agent/db7ca3237c834529?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we know
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.