Status for AI agents
One MCP server and JSON API that tells agents and apps what is down right now, across websites, apps, AI APIs and AI agents: official status, incidents, response time and uptime.
claude mcp add --transport http isitupordown https://isitupordown.com/mcp{
"mcpServers": {
"isitupordown": { "url": "https://isitupordown.com/mcp" }
}
}code --add-mcp '{"name":"isitupordown","type":"http","url":"https://isitupordown.com/mcp"}'Settings, then Connectors, then Add custom connector. Paste https://isitupordown.com/mcp as the URL. No sign-in is needed.
Settings, then Apps and Connectors. Turn on developer mode under Advanced, create a connector and paste https://isitupordown.com/mcp as the URL, with no authentication.
URL: https://isitupordown.com/mcp
Transport: Streamable HTTP (stateless)
Auth: noneLive demo_
Ask it like an agent would
This calls the real MCP server. Try any service: Claude Code, Groq, Discord, Higgsfield, api.openai.com.
Tools_
Five tools, all read-only
check_status
Is a service down right now? Official status, open incidents, response time and 24 hour uptime for any of the services we track.
healthy_ai_providers
Which AI providers are up right now, fastest API first, and which have problems. For picking a fallback model.
whats_down
Everything with a problem right now: outages, degraded services, maintenance and bursts of user reports.
check_website
Checks whether any website answers from our servers, with the response time. For sites we do not track.
list_services
The services we track, by group, with their ids.
REST API_
The same data as JSON
Free, no key, CORS on. Base URL https://isitupordown.com.
curl https://isitupordown.com/v1/status/openai-apiconst r = await fetch('https://isitupordown.com/v1/status/openai-api');
const s = await r.json();
if (s.status !== 'up') console.log(s.summary, s.incidents);import requests
s = requests.get('https://isitupordown.com/v1/status/openai-api').json()
if s['status'] != 'up':
print(s['summary'], s['incidents'])- GET/v1/status/<id>One service, checked live. ?history=1 adds the 24 hour series. The id can be a name or address, like api.openai.com.
- GET/v1/status?group=Many services at once. Filter with group, category or ids=a,b,c.
- GET/v1/downEverything with a problem right now.
- GET/v1/ai/healthy?category=llmAI providers that are up, fastest first. Categories: llm, inference, voice, image, search, gpu.
- GET/v1/servicesEvery service we track, with id, group, category and official status page.
- GET/badge/<id>.svgA live status badge for READMEs and docs.
Press "Run live" to call /v1/status/openai-apiBadges_
A live badge for your README
[](https://isitupordown.com/is-openai-api-down/)Fair use: free for anything, up to 60 requests a minute per IP. Answers are cached for 30 to 60 seconds, so polling faster gains nothing. If you show the data, link to the service's page here. Status comes from each company's public status page plus our own checks; it is not an SLA. Also in plain text for AI crawlers: llms.txt.