Next free-source huntWe check for new free data every weekday.
OSINTMCP serverFirst audited Nov 13, 2026

io.github.XogZ3/botoi-mcp

49 developer tools via MCP: DNS, WHOIS, IP lookup, JWT, hashing, QR, and more.The vendor's description, from its MCP Registry listing.

Passed, with 1 warningAudited Nov 13, 2026
  • Warning: 2 of 49 tools do not say whether they can change things.

Nothing failed, but there is something to know or fix. Public audit: we connect as an AI client would, list the tools and check what they say. We do not run them. How we audit

Does it work?
YesConnected in 731 ms.
Sign-up?
None neededIt answered without any account or key.
Can it change things?
Doesn't sayIts tools do not say whether they only read, so treat them as able to change things.
Endpointhttps://api.botoi.com/mcp

Source code Streamable HTTP · protocol 2025-11-25 · server version 1.0.0

What we checked, the evidence, and the tools it offers.

What we checked

Security

  • Passed: Connections are encrypted (HTTPS).

  • Passed: No hidden instructions found in tool text.

Safety labels

  • Warning: 2 of 49 tools do not say whether they can change things.

    MCP lets a server label each tool as read-only or destructive, so clients can ask the user before risky calls. Unlabelled tools are treated as able to change things.

    • security_encrypt
    • security_decrypt

Tools

  • Passed: 49 tools listed.

  • Passed: Every tool describes its inputs with a valid schema.

Protocol

  • Passed: The MCP handshake works (Streamable HTTP).

  • Passed: Protocol version 2025-11-25 (latest).

  • Passed: Unknown requests are refused.

Connection

  • Passed: The server responds.

Tools (49)

As the server describes them. The labels are the server's own: it says whether each tool only reads or can change things.

  • lookup_ipLook up geolocation, ISP, and network details for an IP address. Use when you need to determine the physical location, internet provider, or AS number for a given IP.Read-only
  • lookup_dnsQuery DNS records (A, AAAA, MX, TXT, CNAME, NS) for a domain. Use when you need to check DNS configuration or troubleshoot domain resolution.Read-only
  • lookup_whoisGet WHOIS registration data for a domain. Use when you need to find domain ownership, registrar, or expiration date.Read-only
  • lookup_sslCheck SSL certificate details and expiry for a domain. Use when verifying HTTPS configuration or checking certificate validity.Read-only
  • lookup_emailValidate an email address (syntax, MX record, disposable check). Use when you need to verify if an email address is real and deliverable.Read-only
  • lookup_headersFetch HTTP response headers for a URL. Use when inspecting server configuration, security headers, or caching policies.Read-only
  • lookup_url_metadataExtract title, description, OG tags, and favicon from a URL. Use when you need to preview or summarize a webpage.Read-only
  • lookup_domain_availabilityCheck if a domain name is available for registration. Use when brainstorming project names or validating domain ideas. Returns availability status and WHOIS data if registered.Read-only
  • lookup_tech_detectDetect technologies used by a website (frameworks, CMS, analytics). Use when analyzing a competitor's tech stack.Read-only
  • lookup_vpn_detectCheck if an IP address is a VPN, proxy, or Tor exit node. Use when assessing connection trustworthiness or flagging suspicious traffic. Returns detection type and provider details.Read-only
  • lookup_phoneParse and validate a phone number, returning country, carrier, line type, and E.164 format. Use when normalizing user-submitted phone numbers or verifying contact data.Read-only
  • lookup_companyLook up company information by domain name. Returns name, industry, employee count, location, and social profiles. Use when enriching leads or researching organizations.Read-only
  • text_base64_encodeEncode a UTF-8 string to Base64. Use for embedding data in URLs or APIs that require Base64.Read-only
  • text_base64_decodeDecode a Base64 string back to UTF-8 text. Use when extracting data from Base64-encoded API responses, tokens, or email headers. Returns the original plaintext string.Read-only
  • text_json_formatFormat and pretty-print a JSON string with configurable indentation. Use when making minified or compact JSON readable for debugging or documentation.Read-only
  • text_json_validateValidate whether a string is valid JSON and report parsing errors.Read-only
  • text_markdown_to_htmlConvert Markdown text to HTML. Use when rendering Markdown content for web display or email templates. Returns sanitized HTML.Read-only
  • text_html_to_markdownConvert HTML to clean Markdown. Use when extracting readable content from web pages or migrating HTML docs to Markdown format.Read-only
  • text_csv_to_jsonParse CSV text into a JSON array of objects. Use when converting spreadsheet or tabular data into structured JSON for processing or storage.Read-only
  • text_yaml_to_jsonConvert YAML configuration or data to JSON. Use when parsing YAML config files for programmatic access or API consumption. Returns a JSON object.Read-only
  • text_json_to_yamlConvert JSON data to YAML format. Use when generating human-readable config files from JSON data structures.Read-only
  • text_xml_to_jsonConvert XML documents to JSON. Use when parsing XML API responses, feeds, or config files into a structured JSON format for easier processing.Read-only
  • dev_hashGenerate a hash (MD5, SHA-1, SHA-256, SHA-512) of input text. Use for checksums, data integrity, or fingerprinting.Read-only
  • dev_uuidGenerate one or more UUIDs (v4 or v7). Use when you need unique identifiers for database records, request tracing, or idempotency keys.Read-only
  • dev_jwt_signCreate and sign a JWT with a given payload and secret.Read-only
  • dev_jwt_verifyVerify and decode a JWT. Use when debugging authentication tokens.Read-only
  • dev_cron_describeConvert a cron expression to a human-readable description.Read-only
  • dev_password_generateGenerate a random password with configurable length and complexity.Read-only
  • dev_url_encodeURL-encode a string by escaping special characters. Use when building query parameters, form data, or safe URLs that contain reserved characters.Read-only
  • dev_url_decodeURL-decode a percent-encoded string back to readable text. Use when parsing query parameters, redirect URIs, or encoded form values.Read-only
  • dev_regex_testTest a regex pattern against a string and return matches.Read-only
  • dev_diffCompute a unified diff between two text strings. Use when comparing file versions, config changes, or code revisions. Returns added, removed, and unchanged lines.Read-only
  • dev_semver_parseParse and validate a semver string into major, minor, patch, pre-release, and build components. Use when checking version compatibility or sorting releases.Read-only
  • dev_timestamp_convertConvert between Unix timestamps and ISO 8601 dates. Use when normalizing date formats across APIs, logs, or databases. Returns both Unix and ISO representations.Read-only
  • security_encryptEncrypt text using AES-256-GCM with a passphrase.Doesn't say
  • security_decryptDecrypt AES-256-GCM encrypted text with a passphrase.Doesn't say
  • security_totp_generateGenerate a TOTP secret and provisioning URI for 2FA setup.Read-only
  • security_validate_credit_cardValidate a credit card number (Luhn check, network detection).Read-only
  • security_pii_detectDetect personally identifiable information (emails, phones, SSNs) in text.Read-only
  • transform_minify_jsMinify JavaScript code by removing whitespace, comments, and shortening variable names. Use when optimizing bundle size for production deployment.Read-only
  • transform_minify_cssMinify CSS stylesheets by removing whitespace, comments, and redundant rules. Use when reducing stylesheet size for faster page loads.Read-only
  • transform_sql_formatFormat and beautify SQL queries with proper indentation and keyword casing. Use when cleaning up inline SQL for code reviews, documentation, or debugging.Read-only
  • transform_code_formatFormat source code with language-aware indentation and style rules. Supports JS, TS, Python, Go, Rust, and more. Use when standardizing code style or preparing snippets for documentation.Read-only
  • transform_json_to_typescriptGenerate TypeScript interfaces from a JSON sample. Use when building type-safe API clients or converting API responses into TypeScript types.Read-only
  • lookup_address_validateValidate a freeform address and return structured components (street, city, state, postal code, country), GPS coordinates, and confidence score. Use when you need to verify or parse an address.Read-only
  • lookup_breach_checkCheck if a password has appeared in known data breaches using k-Anonymity. Returns breach count. Use when you need to verify password safety.Read-only
  • lookup_ssl_cert_expiryCheck SSL certificate expiry for a domain. Returns issuer, valid dates, days remaining, and expired/expiring-soon flags. Use when monitoring certificate health.Read-only
  • lookup_dns_monitorCheck DNS records for a domain and compare against the previous snapshot. Detects record changes over time. Use when monitoring DNS configuration.Read-only
  • lookup_accessibilityRun 10 basic accessibility checks on a webpage URL. Returns a score, issues list, and summary. Use when you need a quick accessibility audit.Read-only

Audit history

  1. Nov 13Warnings

What we sent

Every request in this audit, with the answer and how long it took. We never send credentials and never call a tool.

RequestAnswerTime
initializeHTTP 200731 ms
initializedHTTP 202426 ms
tools/listHTTP 20072 ms
resources/listHTTP 20051 ms
prompts/listHTTP 20036 ms
unknown-methodHTTP 20029 ms

Run this server, or disagree with the result?

Fix the issue and it shows in the next weekly audit, or email us to ask for a re-audit or to dispute a finding. Read how we audit for what each check means.