Detect AI-generated images, videos, and audio with identifAI's deepfake detection tools.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Your identifAI API key. Obtain it from the identifAI d ashboard at https://web.identifai.net.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
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).
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.
Optional caller-defined reference ID
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.
Bypass cache and force fresh classification
Optional file name including extension (e.g. voice.mp3). Used to hint the media type.
If true, a C2PA signature will not force the classification to artificial
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
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).
| Argument | Type | Description |
|---|---|---|
| refId | string | Optional caller-defined reference ID |
| apiKey | string | 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 | boolean | Bypass cache and force fresh classification |
| fileData* | string | 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 | string | Optional file name including extension (e.g. voice.mp3). Used to hint the media type. |
| preventC2paForces | boolean | If true, a C2PA signature will not force the classification to artificial |
{
"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."
},
"preventC2paForces": {
"type": "boolean",
"description": "If true, a C2PA signature will not force the classification to artificial"
}
}
}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).
| Argument | Type | Description |
|---|---|---|
| refId | string | Optional caller-defined reference ID |
| apiKey | string | 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 | boolean | Bypass cache |
| audioUrl* | string | Public HTTP/HTTPS URL of the audio to classify |
| preventC2paForces | boolean | If true, a C2PA signature will not force the classification to artificial |
{
"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"
},
"preventC2paForces": {
"type": "boolean",
"description": "If true, a C2PA signature will not force the classification to artificial"
}
}
}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).
| Argument | Type | Description |
|---|---|---|
| refId | string | Optional caller-defined reference ID attached to the result |
| apiKey | string | 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 | boolean | Bypass cache and force a fresh classification |
| fileData* | string | 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 | string | Optional file name including extension (e.g. photo.jpg). Used to hint the media type. |
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).
| Argument | Type | Description |
|---|---|---|
| refId | string | Optional caller-defined reference ID |
| apiKey | string | 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 | boolean | Bypass cache and force fresh classification |
| imageUrl* | string | Public HTTP/HTTPS URL of the image to classify |
| withNsfw | boolean | Enable NSFW (Not Safe For Work) content detection on the image |
| withHeatmap | boolean | Generate an AI content heatmap |
| withMorphing | boolean | Enable face morphing analysis |
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).
| Argument | Type | Description |
|---|---|---|
| refId | string | Optional caller-defined reference ID |
| apiKey | string | 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 | string | Maximum number of frames to extract and classify |
| noCache | boolean | Bypass cache and force fresh classification |
| fileData* | string | 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. |
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).
| Argument | Type | Description |
|---|---|---|
| refId | string | Optional caller-defined reference ID |
| apiKey | string | 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 | string | Maximum frames to extract |
| noCache | boolean | Bypass cache |
| videoUrl* | string | Public HTTP/HTTPS URL of the video to classify |
| withNsfw | boolean | Enable NSFW (Not Safe For Work) content detection on video frames |
| keyFrames | boolean | Extract key frames |
| withAudio |
Retrieve classification results for multiple audio files in a single request. Accepts up to 100 identifiers.
| Argument | Type | Description |
|---|---|---|
| apiKey | string | 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* | array | Array of classification identifiers (max 100) |
{
"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)"
}
}
}Retrieve classification results for multiple images in a single request. Accepts up to 100 identifiers. Useful for batch result polling.
| Argument | Type | Description |
|---|---|---|
| apiKey | string | 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* | array | Array of classification identifiers (max 100) |
{
"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)"
}
}
}Retrieve classification results for multiple videos in a single request. Accepts up to 100 identifiers.
| Argument | Type | Description |
|---|---|---|
| apiKey | string | 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* | array | Array of classification identifiers (max 100) |
{
"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)"
}
}
}Retrieve the classification result for a previously submitted audio file. Poll until the result is ready.
| Argument | Type | Description |
|---|---|---|
| apiKey | string | 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* | string | Classification identifier returned by the submission endpoint |
{
"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"
}
}
}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.
| Argument | Type | Description |
|---|---|---|
| apiKey | string | 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* | string | Classification identifier for which to fetch the heatmap |
{
"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"
}
}
}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.
| Argument | Type | Description |
|---|---|---|
| apiKey | string | 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* | string | Classification identifier returned by the submission endpoint |
{
"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"
}
}
}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.
| Argument | Type | Description |
|---|---|---|
| apiKey | string | 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* | string | Batch identifier returned by submit_tampering_tickets |
{
"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"
}
}
}Retrieve the current available and used classification credits for the authenticated Identifai account. Use this to check quota status before submitting large batches.
| Argument | Type | Description |
|---|---|---|
| apiKey | string | 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. |
{
"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."
}
}
}Retrieve the classification result for a previously submitted video. Poll until the result is ready — video classification is always asynchronous.
| Argument | Type | Description |
|---|---|---|
| apiKey | string | 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* | string | Classification identifier returned by the submission endpoint |
{
"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"
}
}
}Manually override the classification verdict for a previously classified audio file. Sets the result to either "human" or "artificial".
| Argument | Type | Description |
|---|---|---|
| apiKey | string | 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* | string | Classification identifier to override |
| classification* | string | The correct classification value to apply |
{
"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"
}
}
}Manually override the classification verdict for a previously classified image. Sets the result to either "human" or "artificial". Used for corrections and feedback.
| Argument | Type | Description |
|---|---|---|
| apiKey | string | 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* | string | Classification identifier to override |
| classification* | string | The correct classification value to apply |
{
"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"
}
}
}Manually override the classification verdict for a previously classified video. Sets the result to either "human" or "artificial".
| Argument | Type | Description |
|---|---|---|
| apiKey | string | 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* | string | Classification identifier to override |
| classification* | string | The correct classification value to apply |
{
"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"
}
}
}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).
| Argument | Type | Description |
|---|---|---|
| apiKey | string | 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 | string | Comma-separated list of model names to use for detection. If omitted, all models available in the pricing plan are used. |
| refIds | string | Comma-separated list of reference IDs, one per ticket (e.g. "TICKET-001,TICKET-002"). Must match the number of tickets if provided. |
| tickets* | array | 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 | array |
| withNsfw | boolean | Enable NSFW (Not Safe For Work) content detection on the image |
| withHeatmap | boolean | Generate an AI content heatmap alongside the classification |
| withMorphing | boolean | Enable face morphing analysis on the image |
| withTampering | boolean | Enable tampering/splicing detection on the image |
| preventC2paForces | boolean | If true, a C2PA signature will not force the classification to artificial |
{
"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"
},
"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"
},
"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"
},
"preventC2paForces": {
"type": "boolean",
"description": "If true, a C2PA signature will not force the classification to artificial"
}
}
}| withTampering | boolean | Enable tampering/splicing detection |
| preventC2paForces | boolean | If true, a C2PA signature will not force the classification to artificial |
{
"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"
},
"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"
},
"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"
},
"preventC2paForces": {
"type": "boolean",
"description": "If true, a C2PA signature will not force the classification to artificial"
}
}
}| filename | string | Optional file name including extension (e.g. clip.mp4). Used to hint the media type. |
| withNsfw | boolean | Enable NSFW (Not Safe For Work) content detection on video frames |
| keyFrames | boolean | Extract key frames rather than uniform frames |
| withAudio | boolean | [BETA] Analyze the audio track of the video in addition to the frames. Requires enablement in the pricing plan. |
| withMorphing | boolean | Enable face morphing analysis on video frames |
| withTampering | boolean | Enable tampering detection on video frames |
| keyFramesMethod | string | Algorithm used for key frame extraction |
| preventC2paForces | boolean | If true, a C2PA signature will not force the classification to artificial |
| ensureFacePerFrame | boolean | 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. |
{
"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"
},
"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."
},
"withMorphing": {
"type": "boolean",
"description": "Enable face morphing analysis on video frames"
},
"withTampering": {
"type": "boolean",
"description": "Enable tampering detection on video frames"
},
"keyFramesMethod": {
"enum": [
"iframes",
"flow",
"color"
],
"type": "string",
"description": "Algorithm used for key frame extraction"
},
"preventC2paForces": {
"type": "boolean",
"description": "If true, a C2PA signature will not force the classification to artificial"
},
"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."
}
}
}| boolean |
| [BETA] Analyze the audio track of the video. Requires enablement in the pricing plan. |
| withMorphing | boolean | Enable face morphing analysis |
| withTampering | boolean | Enable tampering detection |
| keyFramesMethod | string | Key frame extraction algorithm |
| preventC2paForces | boolean | If true, a C2PA signature will not force the classification to artificial |
| ensureFacePerFrame | boolean | Ensure at least one face is detected per frame. Useful with withMorphing. |
{
"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"
},
"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."
},
"withMorphing": {
"type": "boolean",
"description": "Enable face morphing analysis"
},
"withTampering": {
"type": "boolean",
"description": "Enable tampering detection"
},
"keyFramesMethod": {
"enum": [
"iframes",
"flow",
"color"
],
"type": "string",
"description": "Key frame extraction algorithm"
},
"preventC2paForces": {
"type": "boolean",
"description": "If true, a C2PA signature will not force the classification to artificial"
},
"ensureFacePerFrame": {
"type": "boolean",
"description": "Ensure at least one face is detected per frame. Useful with withMorphing."
}
}
}| Optional array of filenames (e.g. ["ticket1.jpg", "ticket2.pdf"]). Must match the length of the tickets array if provided. |
{
"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."
}
}
}