io.usefulapi/scalingo
REMOTE · SCALINGO.USEFULAPI.IO · SCANNED AUG 3
Manage Scalingo PaaS apps, deployments, containers, logs and env vars from your AI assistant.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →
Endpoint Security78
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation is enforced on tool calls, advertised via RFC 9728 protected-resource metadata. Discovery is public, which costs nothing: no tool can be invoked without a token. View diagnostics → Pass
- HTTPS not yet verified: we couldn't determine whether a plaintext access path exists. View diagnostics → Unverified
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
- The authorisation server offers only Dynamic Client Registration (RFC 7591), which MCP 2026-07-28 deprecated in favour of Client ID Metadata Documents. View diagnostics → Partial
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability77
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 1925 tokens (~91/item across 21 items; 21 tools + 0 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management23
- Stability observed for 7 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Capabilities60
- Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · scalingo.usefulapi.io
claude mcp add --transport http io-usefulapi-scalingo https://scalingo.usefulapi.io/mcp
[mcp_servers.io-usefulapi-scalingo] url = "https://scalingo.usefulapi.io/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"io-usefulapi-scalingo": {
"type": "remote",
"url": "https://scalingo.usefulapi.io/mcp",
"enabled": true
}
}
} openclaw mcp add io-usefulapi-scalingo --url https://scalingo.usefulapi.io/mcp --transport streamable-http
mcp_servers:
io-usefulapi-scalingo:
url: "https://scalingo.usefulapi.io/mcp" {
"mcpServers": {
"io-usefulapi-scalingo": {
"type": "http",
"url": "https://scalingo.usefulapi.io/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 2 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 1 Aug 26 +14
- Authorization: unverified → pass ▲ security
- Stability: fail → 0.17 functional
- 31 Jul 26 −11
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 −2
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 29 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.
- 28 Jul 26 +1
- Stability: unverified → 0.03 ▲ functional
- 27 Jul 26 +57
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Jul 26 12
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Probed https://scalingo.usefulapi.io/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=usefulapi.io | CN=WE1,O=Google Trust Services,C=US | 17 Jul 2026 | 15 Oct 2026 | ECDSA 256 | ECDSA-SHA256 | 6fae56e4ae7e00d80eeef7e92959a8ec |
| SANs: usefulapi.io, *.scalingo.usefulapi.io, scalingo.usefulapi.io | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
DNSSEC insecure
Validation of scalingo.usefulapi.io. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| io. | present | 57355 | 8 | Verified |
| usefulapi.io. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Enforced and verified
The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.
| Result | Enforced and verified |
|---|---|
| Enforced | On tool calls |
| HTTP status | 200 |
WWW-Authenticate challenge Bearer realm="OAuth", resource_metadata="https://scalingo.usefulapi.io/.well-known/oauth-protected-resource/mcp", error="invalid_token", error_description="Missing or invalid access token"
Bearer realm="OAuth", resource_metadata="https://scalingo.usefulapi.io/.well-known/oauth-protected-resource/mcp", error="invalid_token", error_description="Missing or invalid access token" Protected resource metadata
| Document | https://scalingo.usefulapi.io/.well-known/oauth-protected-resource/mcp |
|---|---|
| Retrieved | Yes |
| Resource | https://scalingo.usefulapi.io/mcp |
| Authorisation server | https://scalingo.usefulapi.io |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://scalingo.usefulapi.io/mcp | Verified | 200 | |
| http (plaintext) | http://scalingo.usefulapi.io/mcp | Inconclusive | 401 |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
get_account Get current account ~40
Fetch the authenticated user's account (id, email, username, fullname, company). Scalingo API: GET /v1/users/self. Returns { user }.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_app Get an app ~67
Fetch a single app's details (region, stack, status, URLs, flags). Scalingo API: GET /v1/apps/{app}. Returns { app }.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
No output schema declared.
No examples provided.
get_app_logs Get recent app logs ~131
Fetch recent application log lines. Scalingo returns an authenticated logs_url (GET /v1/apps/{app}/logs → { logs_url }); this tool then downloads the last N lines from it (dump mode) and returns them as text. Returns { logs_url, lines }. If the follow-up download fails, only logs_url is returned so you can fetch it yourself.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
| lines | integer | — | Number of recent log lines to fetch (1-1000, default 100). |
No output schema declared.
No examples provided.
get_app_stats Get container stats ~73
Real-time per-container resource stats (CPU / memory / swap usage) for an app. Scalingo API: GET /v1/apps/{app}/stats. Returns { stats: [...] }.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
No output schema declared.
No examples provided.
get_deployment Get a deployment ~88
Fetch a single deployment's details (status, git_ref, pusher, image size, timestamps). Scalingo API: GET /v1/apps/{app}/deployments/{deployment_id}. Returns { deployment }.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
| deployment_id | string | yes | The deployment id. |
No output schema declared.
No examples provided.
get_operation Get an operation ~108
Poll the status of an asynchronous operation (e.g. a scale or restart returns an operation to track). Scalingo API: GET /v1/apps/{app}/operations/{operation_id}. Returns { operation } with status pending|running|done|error.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
| operation_id | string | yes | The operation id (returned in the Location header of a scale/restart response). |
No output schema declared.
No examples provided.
list_addon_providers List addon providers ~73
List the addon providers available on Scalingo (databases, monitoring, etc.) with their plans embedded. Scalingo API: GET /v1/addon_providers. Returns { addon_providers: [{ ..., plans: [...] }] }.
| Name | Type | Req | Description |
|---|---|---|---|
| category_id | string | — | Optional category id to filter providers. |
No output schema declared.
No examples provided.
list_addons List addons ~70
List the addons (databases, services) provisioned on an app. Scalingo API: GET /v1/apps/{app}/addons. Returns { addons: [...] }.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
No output schema declared.
No examples provided.
list_app_events List app events ~136
List an app's activity events (deployments, scaling, restarts, collaborator changes, etc.), paginated. Scalingo API: GET /v1/apps/{app}/events. Returns { events: [...], meta: { pagination } }.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
| from | integer | — | Restrict to events from the last N hours (1-72). |
| page | integer | — | Page number (1-based) for paginated lists. |
| per_page | integer | — | Entries per page (1-100). |
No output schema declared.
No examples provided.
list_apps List apps ~38
List all Scalingo apps you can access in the current region. Scalingo API: GET /v1/apps. Returns { apps: [...] }.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_collaborators List collaborators ~74
List an app's collaborators (users invited to the app) and their status. Scalingo API: GET /v1/apps/{app}/collaborators. Returns { collaborators: [...] }.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
No output schema declared.
No examples provided.
list_containers List containers (formation) ~82
List an app's container formation — the running process types with their amount and size (the current scaling). Scalingo API: GET /v1/apps/{app}/containers. Returns { containers: [{ name, amount, size }] }.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
No output schema declared.
No examples provided.
list_deployments List deployments ~108
List an app's deployments (most recent first), paginated. Scalingo API: GET /v1/apps/{app}/deployments. Returns { deployments: [...], meta: { pagination } }.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
| page | integer | — | Page number (1-based) for paginated lists. |
| per_page | integer | — | Entries per page (1-100). |
No output schema declared.
No examples provided.
list_domains List domains ~67
List an app's custom domains and their TLS/canonical status. Scalingo API: GET /v1/apps/{app}/domains. Returns { domains: [...] }.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
No output schema declared.
No examples provided.
list_regions List regions ~59
List the Scalingo regions available to your account, each with its API/dashboard/database hosts. Useful to discover the right SCALINGO_REGION. Scalingo API: GET (auth host) /v1/regions. Returns { regions: [...] }.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_variables List environment variables ~82
List an app's environment variables. WARNING: this exposes secret VALUES (API keys, database URLs, etc.). Scalingo API: GET /v1/apps/{app}/variables. Returns { variables: [{ id, name, value }] }.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
No output schema declared.
No examples provided.
restart_app Restart app ~111
MUTATES Scalingo infrastructure — restarts an app's containers. Optionally restart only specific process types via scope; omit scope to restart everything. Returns 202 Accepted (track via get_operation). Scalingo API: POST /v1/apps/{app}/restart.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
| scope | array | — | Container types to restart, e.g. ["web","worker"]. Omit to restart all. |
No output schema declared.
No examples provided.
scale_app Scale app ~108
MUTATES Scalingo infrastructure — sets the container formation (number and/or size of each process type). Only the container types you include are changed. Returns 202 Accepted (track via get_operation). Scalingo API: POST /v1/apps/{app}/scale.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
| containers | array | yes | Formation entries to apply. Each entry needs a name plus amount and/or size. |
No output schema declared.
No examples provided.
scalingo_request Raw read request ~153
Power-user escape hatch: GET any Scalingo API path not wrapped by a dedicated tool. READ-ONLY — only GET is allowed. Path is taken after /v1 (e.g. "/apps/my-app/alerts"). By default hits the regional API; set on_auth_host:true for auth-host resources (regions, scm_integrations, tokens). Scalingo API: GET {path}.
| Name | Type | Req | Description |
|---|---|---|---|
| on_auth_host | boolean | — | If true, target the auth host (auth.scalingo.com) instead of the regional API. |
| path | string | yes | API path after /v1, starting with a slash, e.g. "/apps/my-app/notifiers". |
| query | object | — | Optional query params object. |
No output schema declared.
No examples provided.
set_variables Set environment variables (bulk) ~116
MUTATES Scalingo infrastructure — creates or updates environment variables in bulk (each { name, value } is created if new or updated if it exists). This usually triggers a restart to apply the new env. Names ≤64 chars, values ≤8192 chars. Scalingo API: PUT /v1/apps/{app}/variables. Returns { variables }.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
| variables | array | yes | Environment variables to create/update. |
No output schema declared.
No examples provided.
trigger_deployment Trigger a deployment ~141
MUTATES Scalingo infrastructure — triggers a new deployment from a source archive URL (a tar.gz reachable by Scalingo). To roll back, re-deploy a previous git_ref/archive — there is no separate rollback endpoint. Scalingo API: POST /v1/apps/{app}/deployments. Returns { deployment }.
| Name | Type | Req | Description |
|---|---|---|---|
| app | string | yes | The app name (e.g. my-production-app) or app id (app-…). |
| git_ref | string | — | Optional git reference label for the deployment (branch/tag/SHA). |
| source_url | string | yes | URL of the source archive (tar.gz) Scalingo should build and deploy. |
No output schema declared.
No examples provided.