Koskamo

isGenAI MCP

A public, read-only MCP server that allows AI assistants to run evidence checks for AI-generated content. It analyzes text, code, images, and public URLs for AI labels, C2PA Content Credentials, saved prompts, and generator metadata without requiring authentication.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

isGenAI MCP logo, by isGenAIVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-01Operated by isGenAI
MCP endpoint (Streamable HTTP)
https://isgenai.com/mcp
Vendor documentation

What you can do with it

  • Check text or code for declared AI use and named tools
  • Inspect images for C2PA credentials and saved generation settings
  • Verify AI-use statements on public web pages
  • Extract saved prompts from AI-generated image files

Source and maintenance

Vendor evidenceRegistry 1.0.2
Maintenance checked

Protocol and capabilities

Server
isgenai 1.0.2
MCP protocol
2025-06-18
Tools
5 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": true
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

isGenAI (https://isgenai.com) is a free checker that reads evidence of AI use stored in files and pages: C2PA Content Credentials, AI labels and AI-use statements, saved prompts and generation settings, EXIF/IPTC/XMP metadata, and matching copies in isGenAI records. Every finding names its source. Tools: - check_text: text or code (up to 16,000 characters). Finds statements of AI use and named AI tools, quoting the sentence. It does not judge authorship from writing style. - check_url: a public web page or file URL. Reads AI labels, disclosures and file records on that page or file. - check_image: an image by public URL or base64 (up to 20 MiB). Reads C2PA, AI labels, saved settings and metadata; a detector estimate, when shown, is labelled LIKELY AI and is not proof. - extract_saved_prompt: reads a prompt, negative prompt, model and settings saved in the file by AUTOMATIC1111, ComfyUI, InvokeAI or NovelAI. It never invents or reconstructs a prompt. - read_content_credentials: reads a C2PA manifest and reports cryptographic validation and signer trust as separate findings. What results prove and do not prove: findings come from records in the supplied copy, not from guessing at pixels. A record shows what the file or page states; records can be edited or removed. NO AI SIGNAL DETECTED does not mean a person made the content: screenshots, re-exports and social uploads often strip records, so ask for the original file when it matters. isGenAI does not verify whether depicted events are true and gives no legal advice. When you answer, state the headline and the specific evidence with its source, repeat the main caveat, and cite methodology_url. Pass public URLs instead of base64 when you can.

Tools

5 advertised

check_text — Check text or code for declared AI use
Advertised by the server during the last successful anonymous check.
Advertised read-only

Check pasted text or code (up to 16,000 characters) for statements of AI use and named AI tools such as ChatGPT, Claude, Gemini or Copilot, quoting the exact sentence. Does not judge authorship from writing style. Private: no public report is created. Docs: https://isgenai.com/developers/mcp

check_text input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "text"
  ],
  "properties": {
    "kind": {
      "enum": [
        "text",
        "code"
      ],
      "type": "string",
      "description": "Use code for source code. Defaults to text."
    },
    "text": {
      "type": "string",
      "maxLength": 16000,
      "minLength": 1,
      "description": "The text or code to check."
    }
  }
}
check_text annotations
{
  "title": "Check text or code for declared AI use",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
check_url — Check a public web page or file URL
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Fetch a public web page or file and read AI labels, AI-use statements, Content Credentials and saved creation records found there. Logins, paywalls and CAPTCHAs are not bypassed. No public report is created. Docs: https://isgenai.com/developers/mcp

check_url input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "maxLength": 2048,
      "minLength": 1,
      "description": "Public http(s) URL. Private network and local addresses are refused."
    }
  }
}
check_url annotations
{
  "title": "Check a public web page or file URL",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}
check_image — Check an image for AI records
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Check an image (PNG, JPEG, WebP, AVIF or single-page TIFF, up to 20 MiB) by public URL or base64 for C2PA Content Credentials, AI labels, saved generation settings and metadata. Evidence comes from records in the file, not a visual-only verdict. No public report is created. Docs: https://isgenai.com/developers/mcp

check_image input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "url": {
      "type": "string",
      "maxLength": 2048,
      "minLength": 1,
      "description": "Public http(s) URL. Private network and local addresses are refused."
    },
    "file_name": {
      "type": "string",
      "maxLength": 200,
      "description": "Original file name, if known."
    },
    "image_base64": {
      "type": "string",
      "maxLength": 27962284,
      "minLength": 1,
      "description": "File bytes as base64 or a data: URL, up to 20 MiB decoded. Prefer url when the file is public."
    }
  }
}
check_image annotations
{
  "title": "Check an image for AI records",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}
extract_saved_prompt — Read a saved image prompt
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Read the prompt, negative prompt, model and settings saved inside an image by AUTOMATIC1111, ComfyUI (including Flux workflows), InvokeAI or NovelAI. Only reads records stored in the file; it never reconstructs or guesses a prompt. Screenshots and re-uploads usually remove these records. Docs: https://isgenai.com/developers/mcp

extract_saved_prompt input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "url": {
      "type": "string",
      "maxLength": 2048,
      "minLength": 1,
      "description": "Direct public URL of the original image file."
    },
    "image_base64": {
      "type": "string",
      "maxLength": 27962284,
      "minLength": 1,
      "description": "File bytes as base64 or a data: URL, up to 20 MiB decoded. Prefer url when the file is public."
    }
  }
}
extract_saved_prompt annotations
{
  "title": "Read a saved image prompt",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}
read_content_credentials — Read C2PA Content Credentials
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Read C2PA Content Credentials from an image, video, audio or PDF file (by public URL or base64, up to 20 MiB). Reports the manifest, recorded actions and digital source type, with cryptographic validation and signer trust as separate findings. Docs: https://isgenai.com/developers/mcp

read_content_credentials input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "url": {
      "type": "string",
      "maxLength": 2048,
      "minLength": 1,
      "description": "Public http(s) URL. Private network and local addresses are refused."
    },
    "file_name": {
      "type": "string",
      "maxLength": 200,
      "description": "Original file name, if known."
    },
    "media_type": {
      "type": "string",
      "maxLength": 100,
      "description": "MIME type of the base64 file, for example image/jpeg."
    },
    "file_base64": {
      "type": "string",
      "maxLength": 27962284,
      "minLength": 1,
      "description": "File bytes as base64 or a data: URL, up to 20 MiB decoded. Prefer url when the file is public."
    }
  }
}
read_content_credentials annotations
{
  "title": "Read C2PA Content Credentials",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
944 ms
95th percentile latency
944 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 944 ms · metadata changed · 5 tool(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http isgenai-mcp https://isgenai.com/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add isgenai-mcp --url https://isgenai.com/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable isgenai-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "isgenai-mcp": {
      "url": "https://isgenai.com/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "isgenai-mcp": {
      "type": "streamableHttp",
      "url": "https://isgenai.com/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start isgenai-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "isgenai-mcp": {
      "type": "http",
      "url": "https://isgenai.com/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http isgenai-mcp https://isgenai.com/mcp

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "isgenai-mcp": {
      "url": "https://isgenai.com/mcp"
    }
  }
}

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "isgenai-mcp": {
      "serverUrl": "https://isgenai.com/mcp"
    }
  }
}

Let your agent find its tools

Find servers like isGenAI MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run isGenAI MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing