← The evidence ledger
Evidence row 301583
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint 661daed3-00c9-4b6d-becd-1866c62ea38e
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- 248a4149d6248725262e355b70e68da9aedc520a4e5f6743ffccb00073800b3a
- Leaf
- 0xcbea716342b9ece5598367bc8d8f72f0464914199ef78b3b5ad7632572c45578
What was observed
{
"count": 21,
"tools": [
{
"description": "Fetch the authenticated user's account (id, email, username, fullname, company). Scalingo API: GET /v1/users/self. Returns { user }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {},
"type": "object"
},
"name": "scalingo_get_account"
},
{
"description": "Fetch a single app's details (region, stack, status, URLs, flags). Scalingo API: GET /v1/apps/{app}. Returns { app }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
}
},
"required": [
"app"
],
"type": "object"
},
"name": "scalingo_get_app"
},
{
"description": "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.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
},
"lines": {
"description": "Number of recent log lines to fetch (1-1000, default 100).",
"maximum": 1000,
"minimum": 1,
"type": "integer"
}
},
"required": [
"app"
],
"type": "object"
},
"name": "scalingo_get_app_logs"
},
{
"description": "Real-time per-container resource stats (CPU / memory / swap usage) for an app. Scalingo API: GET /v1/apps/{app}/stats. Returns { stats: [...] }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
}
},
"required": [
"app"
],
"type": "object"
},
"name": "scalingo_get_app_stats"
},
{
"description": "Fetch a single deployment's details (status, git_ref, pusher, image size, timestamps). Scalingo API: GET /v1/apps/{app}/deployments/{deployment_id}. Returns { deployment }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
},
"deployment_id": {
"description": "The deployment id.",
"type": "string"
}
},
"required": [
"app",
"deployment_id"
],
"type": "object"
},
"name": "scalingo_get_deployment"
},
{
"description": "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.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
},
"operation_id": {
"description": "The operation id (returned in the Location header of a scale/restart response).",
"type": "string"
}
},
"required": [
"app",
"operation_id"
],
"type": "object"
},
"name": "scalingo_get_operation"
},
{
"description": "List the addon providers available on Scalingo (databases, monitoring, etc.) with their plans embedded. Scalingo API: GET /v1/addon_providers. Returns { addon_providers: [{ ..., plans: [...] }] }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"category_id": {
"description": "Optional category id to filter providers.",
"type": "string"
}
},
"type": "object"
},
"name": "scalingo_list_addon_providers"
},
{
"description": "List the addons (databases, services) provisioned on an app. Scalingo API: GET /v1/apps/{app}/addons. Returns { addons: [...] }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
}
},
"required": [
"app"
],
"type": "object"
},
"name": "scalingo_list_addons"
},
{
"description": "List an app's activity events (deployments, scaling, restarts, collaborator changes, etc.), paginated. Scalingo API: GET /v1/apps/{app}/events. Returns { events: [...], meta: { pagination } }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
},
"from": {
"description": "Restrict to events from the last N hours (1-72).",
"maximum": 72,
"minimum": 1,
"type": "integer"
},
"page": {
"description": "Page number (1-based) for paginated lists.",
"maximum": 9007199254740991,
"minimum": 1,
"type": "integer"
},
"per_page": {
"description": "Entries per page (1-100).",
"maximum": 100,
"minimum": 1,
"type": "integer"
}
},
"required": [
"app"
],
"type": "object"
},
"name": "scalingo_list_app_events"
},
{
"description": "List all Scalingo apps you can access in the current region. Scalingo API: GET /v1/apps. Returns { apps: [...] }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {},
"type": "object"
},
"name": "scalingo_list_apps"
},
{
"description": "List an app's collaborators (users invited to the app) and their status. Scalingo API: GET /v1/apps/{app}/collaborators. Returns { collaborators: [...] }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
}
},
"required": [
"app"
],
"type": "object"
},
"name": "scalingo_list_collaborators"
},
{
"description": "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 }] }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
}
},
"required": [
"app"
],
"type": "object"
},
"name": "scalingo_list_containers"
},
{
"description": "List an app's deployments (most recent first), paginated. Scalingo API: GET /v1/apps/{app}/deployments. Returns { deployments: [...], meta: { pagination } }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
},
"page": {
"description": "Page number (1-based) for paginated lists.",
"maximum": 9007199254740991,
"minimum": 1,
"type": "integer"
},
"per_page": {
"description": "Entries per page (1-100).",
"maximum": 100,
"minimum": 1,
"type": "integer"
}
},
"required": [
"app"
],
"type": "object"
},
"name": "scalingo_list_deployments"
},
{
"description": "List an app's custom domains and their TLS/canonical status. Scalingo API: GET /v1/apps/{app}/domains. Returns { domains: [...] }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
}
},
"required": [
"app"
],
"type": "object"
},
"name": "scalingo_list_domains"
},
{
"description": "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: [...] }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {},
"type": "object"
},
"name": "scalingo_list_regions"
},
{
"description": "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 }] }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
}
},
"required": [
"app"
],
"type": "object"
},
"name": "scalingo_list_variables"
},
{
"description": "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}.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"on_auth_host": {
"description": "If true, target the auth host (auth.scalingo.com) instead of the regional API.",
"type": "boolean"
},
"path": {
"description": "API path after /v1, starting with a slash, e.g. \"/apps/my-app/notifiers\".",
"type": "string"
},
"query": {
"additionalProperties": {},
"description": "Optional query params object.",
"propertyNames": {
"type": "string"
},
"type": "object"
}
},
"required": [
"path"
],
"type": "object"
},
"name": "scalingo_request"
},
{
"description": "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 scalingo_get_operation). Scalingo API: POST /v1/apps/{app}/restart.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
},
"scope": {
"description": "Container types to restart, e.g. [\"web\",\"worker\"]. Omit to restart all.",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"app"
],
"type": "object"
},
"name": "scalingo_restart_app"
},
{
"description": "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 scalingo_get_operation). Scalingo API: POST /v1/apps/{app}/scale.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
},
"containers": {
"description": "Formation entries to apply. Each entry needs a name plus amount and/or size.",
"items": {
"properties": {
"amount": {
"description": "Number of containers of this type.",
"maximum": 9007199254740991,
"minimum": 0,
"type": "integer"
},
"name": {
"description": "Process type name, e.g. \"web\" or \"worker\".",
"type": "string"
},
"size": {
"description": "Container size, e.g. \"S\", \"M\", \"L\", \"2XL\".",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"app",
"containers"
],
"type": "object"
},
"name": "scalingo_scale_app"
},
{
"description": "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 }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
},
"variables": {
"description": "Environment variables to create/update.",
"items": {
"properties": {
"name": {
"description": "Variable name (uppercase convention, ≤64 chars).",
"type": "string"
},
"value": {
"description": "Variable value (≤8192 chars).",
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"app",
"variables"
],
"type": "object"
},
"name": "scalingo_set_variables"
},
{
"description": "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 }.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"app": {
"description": "The app name (e.g. my-production-app) or app id (app-…).",
"type": "string"
},
"git_ref": {
"description": "Optional git reference label for the deployment (branch/tag/SHA).",
"type": "string"
},
"source_url": {
"description": "URL of the source archive (tar.gz) Scalingo should build and deploy.",
"type": "string"
}
},
"required": [
"app",
"source_url"
],
"type": "object"
},
"name": "scalingo_trigger_deployment"
}
]
}What the leaf hashes
{"body":"248a4149d6248725262e355b70e68da9aedc520a4e5f6743ffccb00073800b3a","id":301583,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793054153637362,"prev":null,"subject":"661daed3-00c9-4b6d-becd-1866c62ea38e","subject_kind":"endpoint"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).
- 0xcbea771dfdb295b15f1ef0052f965bc4707785373ec382c9fb1bc9627133e6e9
- 0x24107c53b70d7873f7b6e59946bfaeb9679401263d5de36fb9ad30100de0e9cf
- 0xf317d514d02c863de6e8cba17a986467d33eafb5e34fdc8ed1187e3214f2f83f
- 0x1924e37a7dcc4a68615355da88d01aea277211231cc9d41c805f91c3127ba8ee
- 0xd529413082bc18d6407a2e84b622dd37c2b235ea9b18a1873c4ddd7224f77224
- 0x44a31def08c66f91cdfbb491a05ac535dcf8a3c4e49871e645526f8ff4a14714
- 0xba08a6ae5d6a056c2074584a0d7abc6a730451eecd82a84334164d3694a2656f
- 0x50097f72f9019614fa93d776bdc340db88d44c142495ec0a6c2e661adb5593e2
- 0x726a778fce960a500e0adbf8806224f8f312af0012d5eb4d9f9c196fb4aadd2e
- 0x271656ddeb4ac114157823f5b692e3080e2fc3456a434600ab85e26da37fbbb5
- 0x351a777a477836c8c26972f993b4d53df3d67c6acea7cef50b5038df678d6a3f
- 0x85ea84dc356483b05e7ec8ed6e303988684070a1512dc756c8e64a7e3604feaf
- 0x985acd37cc044d5aa6ad959194da8e91c81045df83517891ed92f1763a9ab825
- 0x5b20d8aab05225a3497eadcce89d2e2a586a510fb31334793d3f46f88f0157c5
- 0xe94ca5b798e9899ad611e57835af42266e20f53f44977e487d81365e30972beb
- 0x703f95866af09c5e5d6ead7411e9a10f964a41a2aff64d4a55ff0053c023a023
- 0xd0651cb9bc8155eb52b5247d506e74b8a935057dc190ba52091702ac25ed3a40
- 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
- 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
- Day root
- 0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
- Chained
- 0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
- Published
- On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae