AI assistants (MCP)
Your AI assistant, such as Claude Code, Cursor or VS Code, can answer questions about your Monitors and act on them. Ask it things like:
- “Is checkout down, and since when?”
- “Add a heartbeat for my nightly backup”
- “What was our uptime last month?”
It reaches You Up? through its MCP server, at https://api.uup.dev/mcp. MCP is the way AI assistants connect to services like You Up?. The assistant’s key is an ordinary API token, so it does what the token allows, in the Projects the token reaches, and follows the same rules as the dashboard.
Which kind of token to make
Section titled “Which kind of token to make”Start with Read-only. The assistant can then read your Monitors, their results, uptime, Incidents and alerts, and change nothing.
A Full token also lets it create, change, pause and resume Monitors, acknowledge and resolve Incidents, and snooze Checks. It never deletes anything, whatever the kind.
The fast way
Section titled “The fast way”The owner and admins can connect an assistant from the dashboard:
- In the sidebar, open AI assistants.
- Press Connect an assistant, and choose your assistant, what the token reaches, its kind and when it expires.
- Press Connect, then Copy prompt, and paste the prompt into your assistant. It sets itself up from it.
The token is named after the assistant and kept on the API tokens screen, where you revoke it. It can be copied only while the dialog is open.
By hand
Section titled “By hand”Make an API token and copy it. Then paste this prompt into your assistant, with your token in place of uup_api_…:
Connect to uup, my uptime monitoring service, through its MCP server. URL: https://api.uup.dev/mcp (Streamable HTTP). Header: Authorization: Bearer uup_api_…. Add it as a server named "uup" in my user-level MCP settings, never in a file committed to a repository. Then list uup's tools and call get_status to check that it works.Or set your assistant up yourself. Put your token in place of uup_api_…, and keep the setup out of any file you commit to a repository.
Run this in a terminal.
claude mcp add --transport http --scope user uup https://api.uup.dev/mcp \ --header "Authorization: Bearer uup_api_…"Add this to ~/.cursor/mcp.json:
{ "mcpServers": { "uup": { "url": "https://api.uup.dev/mcp", "headers": { "Authorization": "Bearer uup_api_…" } } }}Run MCP: Open User Configuration, and add this to mcp.json:
{ "servers": { "uup": { "type": "http", "url": "https://api.uup.dev/mcp", "headers": { "Authorization": "Bearer uup_api_…" } } }}Add this to ~/.codeium/windsurf/mcp_config.json:
{ "mcpServers": { "uup": { "serverUrl": "https://api.uup.dev/mcp", "headers": { "Authorization": "Bearer uup_api_…" } } }}Add this to your Zed settings.json:
{ "context_servers": { "uup": { "url": "https://api.uup.dev/mcp", "headers": { "Authorization": "Bearer uup_api_…" } } }}Add this to ~/.codex/config.toml:
[mcp_servers.uup]url = "https://api.uup.dev/mcp"http_headers = { "Authorization" = "Bearer uup_api_…" }- Open Customize, then Connectors, and choose Add custom connector. On Team and Enterprise, an owner does this in Organization settings, then Connectors.
- Name it uup. For the server URL, paste
https://api.uup.dev/mcp. Under Authentication, choose No sign-in. - Under Request headers, add
Authorizationwith the valueBearer uup_api_…. - Choose Add, then turn on uup in a chat's tools menu.
Request headers shows only for some Claude organizations. Without it, claude.ai cannot send the token; set up Claude Desktop instead.
On Team and Enterprise, everyone in your Claude organization shares this token, so choose Read-only.
Needs Node.js.
Add this to claude_desktop_config.json:
{ "mcpServers": { "uup": { "command": "npx", "args": ["mcp-remote", "https://api.uup.dev/mcp", "--header", "Authorization:${AUTH_HEADER}"], "env": { "AUTH_HEADER": "Bearer uup_api_…" } } }}ChatGPT
Section titled “ChatGPT”ChatGPT cannot connect yet. It cannot use an API token, so there is no way to set it up today.
The tools
Section titled “The tools”These are the tools your assistant can call. A Read-only token is offered the ones that read; a Full token is offered them all.
| Tool | What it answers | Reads or writes |
|---|---|---|
get_status | What is not ok now | Read |
list_projects | List Projects | Read |
list_monitors | Find Monitors | Read |
get_monitor | Read a Monitor | Read |
get_uptime | Read uptime | Read |
list_incidents | List Incidents | Read |
get_incident | Read an Incident | Read |
list_runs | List runs | Read |
get_response_times | Read response times | Read |
list_alert_rules | List who is alerted | Read |
list_deliveries | Did the alert go out? | Read |
get_plan | Read the Plan | Read |
list_locations | List locations | Read |
create_monitor | Create a Monitor | Write |
update_monitor | Change a Monitor | Write |
pause_monitor | Pause a Monitor | Write |
resume_monitor | Resume a Monitor | Write |
acknowledge_incident | Acknowledge an Incident | Write |
resolve_incident | Resolve an Incident | Write |
snooze_check | Snooze a Check | Write |
end_snooze | End a snooze | Write |
When You Up? adds a tool, your assistant sees it the next time it connects. A tool is changed or removed only as API changes says.
Limits
Section titled “Limits”Every tool call counts against the API’s limits, the same as a request your own code sends. Errors and limits says how many a minute you may make.