{
  "name": "Uptimeify",
  "description": "Uptimeify monitoring agent. Free anonymous website, DNS, TLS and email deliverability check tools, plus authenticated read-only access to your own Uptimeify monitors and incidents. Interact over the Model Context Protocol (MCP) at /mcp.",
  "url": "https://uptimeify.io/mcp",
  "provider": {
    "organization": "Uptimeify",
    "url": "https://uptimeify.io"
  },
  "version": "1.0.0",
  "documentationUrl": "https://docs.uptimeify.io",
  "iconUrl": "https://uptimeify.io/favicon.ico",
  "supportedInterfaces": [
    {
      "url": "https://uptimeify.io/mcp",
      "protocolBinding": "https://uptimeify.io/a2a/bindings/mcp/v1",
      "protocolVersion": "1.0"
    }
  ],
  "capabilities": {
    "streaming": true,
    "pushNotifications": false,
    "extendedAgentCard": false,
    "extensions": [
      {
        "uri": "https://uptimeify.io/a2a/bindings/mcp/v1",
        "description": "Uptimeify is reached over the Model Context Protocol (streamable HTTP) rather than an A2A protocol binding. Connect an MCP client to the interface URL; tools map to the skills below.",
        "required": false,
        "params": {
          "mcpProtocolVersion": "2025-11-25",
          "transport": "streamable-http",
          "discovery": "https://uptimeify.io/.well-known/mcp.json"
        }
      }
    ]
  },
  "securitySchemes": {
    "bearer": {
      "httpAuthSecurityScheme": {
        "scheme": "Bearer",
        "description": "Uptimeify API token (starts with wsm_), created in the dashboard under API Tokens. OAuth 2.0 with PKCE is also supported; see /.well-known/oauth-authorization-server."
      }
    }
  },
  "defaultInputModes": [
    "text/plain",
    "application/json"
  ],
  "defaultOutputModes": [
    "text/plain",
    "application/json"
  ],
  "skills": [
    {
      "id": "check_ssl",
      "name": "check_ssl",
      "description": "Check a host's TLS/SSL certificate: issuer, validity dates, expiry, chain and trust verdict.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "check_dns",
      "name": "check_dns",
      "description": "Check a domain's DNS records (A/AAAA/CNAME/TXT/NS and more).",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "dns_propagation",
      "name": "dns_propagation",
      "description": "Check DNS propagation of a domain across multiple public resolvers.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "mx_lookup",
      "name": "mx_lookup",
      "description": "MX lookup for a domain: its mail exchanger records and their addresses.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "spf_check",
      "name": "spf_check",
      "description": "Check a domain's SPF record: fetch it and evaluate the policy.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "dkim_check",
      "name": "dkim_check",
      "description": "Check a domain's DKIM public key for a given selector: fetch it and validate it.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "dmarc_check",
      "name": "dmarc_check",
      "description": "Check a domain's DMARC policy record: fetch it and evaluate the policy.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "dnsbl_check",
      "name": "dnsbl_check",
      "description": "DNSBL check: whether a public IP address is listed on common DNS blacklists.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "whois",
      "name": "whois",
      "description": "Retrieve WHOIS registration data for a domain.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "domain_expiry",
      "name": "domain_expiry",
      "description": "Check a domain's registration expiry date and the days remaining.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "http_headers",
      "name": "http_headers",
      "description": "Fetch the HTTP response headers for a URL.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "hsts_check",
      "name": "hsts_check",
      "description": "HSTS check: a domain's HTTP Strict Transport Security configuration.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "redirect_check",
      "name": "redirect_check",
      "description": "Check the HTTP redirect chain for a URL, tracing it to the final destination.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "port_check",
      "name": "port_check",
      "description": "Check whether a TCP port is open on a host.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "ping_test",
      "name": "ping_test",
      "description": "Ping test: measure TCP reachability and round-trip time to a host.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "website_status",
      "name": "website_status",
      "description": "Check whether a website is up, its HTTP status and response timing.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "response_time",
      "name": "response_time",
      "description": "Measure a website's response time (DNS, connect, TTFB, total).",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "ip_geolocation",
      "name": "ip_geolocation",
      "description": "IP geolocation for a public IP address or a domain (country, region, ASN, org).",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "asn_lookup",
      "name": "asn_lookup",
      "description": "ASN lookup for a public IP or domain: the autonomous system and its network owner.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "reverse_dns",
      "name": "reverse_dns",
      "description": "Reverse DNS: resolve a public IP address to its PTR hostname.",
      "tags": [
        "monitoring",
        "anonymous"
      ]
    },
    {
      "id": "list_monitors",
      "name": "list_monitors",
      "description": "List the website monitors the caller's API token can see (customer token: its own customer; organization token: all customers in the org). Read-only.",
      "tags": [
        "monitoring",
        "authenticated"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "bearer": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "monitor_status",
      "name": "monitor_status",
      "description": "Get a single website monitor by id, including its current up/down status and configuration.",
      "tags": [
        "monitoring",
        "authenticated"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "bearer": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "list_incidents",
      "name": "list_incidents",
      "description": "List recent incidents across all of the caller's monitors (most recent first).",
      "tags": [
        "monitoring",
        "authenticated"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "bearer": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "check_history",
      "name": "check_history",
      "description": "Get the recent check history for a website monitor. Optionally bound by an ISO date range.",
      "tags": [
        "monitoring",
        "authenticated"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "bearer": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "uptime_summary",
      "name": "uptime_summary",
      "description": "Get uptime and average response-time summary (day / month / year) for a website monitor.",
      "tags": [
        "monitoring",
        "authenticated"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "bearer": {
              "list": []
            }
          }
        }
      ]
    }
  ]
}