Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,070Paid calls: 1,528Letters: 13Defects: 1,322counted just now
teppi

Server definition

Hash
sha256:766e27845035adac5c2ac99c7e6ca51e3b7876b0cfda7cf0b4c121bc70511c87
What it is
What a remote MCP server returned when asked what it offers: 15 tools

The blob, as servednamed by its sha256

{ "instructions": null, "tools": [ { "description": "Retrieve aggregated usage statistics across the whole account, bucketed by time. Account id is resolved from the control token when ABLY_ACCOUNT_ID is unset. Control API: GET /accounts/{account_id}/stats.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "account_id": { "description": "Override the account id (defaults to the token's account).", "type": "string" }, "end": { "description": "End of range, ms since epoch (inclusive).", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "limit": { "description": "Max buckets (<=1000). Default 100.", "exclusiveMinimum": 0, "maximum": 1000, "type": "integer" }, "start": { "description": "Start of range, ms since epoch (inclusive).", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "unit": { "description": "Bucket size: minute | hour | day | month. Default minute.", "enum": [ "minute", "hour", "day", "month" ], "type": "string" } }, "type": "object" }, "name": "ably_get_account_stats", "outputSchema": null }, { "description": "Get status and occupancy metrics for a single channel (connections, publishers, subscribers, presence members). REST: GET /channels/{channel}.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "channel": { "description": "Channel name.", "type": "string" } }, "required": [ "channel" ], "type": "object" }, "name": "ably_get_channel_details", "outputSchema": null }, { "description": "Retrieve historical messages published to a channel, newest-first by default. REST: GET /channels/{channel}/messages.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "channel": { "description": "Channel name, e.g. 'chat:room1'.", "type": "string" }, "direction": { "description": "forwards (oldest-first) or backwards (newest-first, default).", "enum": [ "forwards", "backwards" ], "type": "string" }, "end": { "description": "Latest message time, ms since epoch (inclusive).", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "limit": { "description": "Max messages (<=1000). Default 100.", "exclusiveMinimum": 0, "maximum": 1000, "type": "integer" }, "start": { "description": "Earliest message time, ms since epoch (inclusive).", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" } }, "required": [ "channel" ], "type": "object" }, "name": "ably_get_channel_history", "outputSchema": null }, { "description": "List the members currently present on a channel (who is online now). REST: GET /channels/{channel}/presence.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "channel": { "description": "Channel name.", "type": "string" }, "clientId": { "description": "Filter to a specific clientId.", "type": "string" }, "connectionId": { "description": "Filter to a specific connectionId.", "type": "string" }, "limit": { "description": "Max members (<=1000). Default 100.", "exclusiveMinimum": 0, "maximum": 1000, "type": "integer" } }, "required": [ "channel" ], "type": "object" }, "name": "ably_get_presence", "outputSchema": null }, { "description": "Retrieve historical presence events (enter/leave/update) for a channel. REST: GET /channels/{channel}/presence/history.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "channel": { "description": "Channel name.", "type": "string" }, "direction": { "description": "forwards or backwards (default backwards).", "enum": [ "forwards", "backwards" ], "type": "string" }, "end": { "description": "Latest event time, ms since epoch (inclusive).", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "limit": { "description": "Max events (<=1000). Default 100.", "exclusiveMinimum": 0, "maximum": 1000, "type": "integer" }, "start": { "description": "Earliest event time, ms since epoch (inclusive).", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" } }, "required": [ "channel" ], "type": "object" }, "name": "ably_get_presence_history", "outputSchema": null }, { "description": "Return the current Ably service time in ms since epoch. Useful for aligning start/end windows to the server clock. REST: GET /time.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {}, "type": "object" }, "name": "ably_get_service_time", "outputSchema": null }, { "description": "Retrieve message/connection/channel usage statistics for the app tied to the API key, bucketed by time. REST: GET /stats.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "direction": { "description": "forwards or backwards (default backwards).", "enum": [ "forwards", "backwards" ], "type": "string" }, "end": { "description": "End of range, ms since epoch (inclusive).", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "limit": { "description": "Max buckets (<=1000). Default 100.", "exclusiveMinimum": 0, "maximum": 1000, "type": "integer" }, "start": { "description": "Start of range, ms since epoch (inclusive).", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "unit": { "description": "Bucket size: minute | hour | day | month. Default minute.", "enum": [ "minute", "hour", "day", "month" ], "type": "string" } }, "type": "object" }, "name": "ably_get_stats", "outputSchema": null }, { "description": "List all apps in the account (id, name, status, tls-only). Account id is resolved automatically from the control token when ABLY_ACCOUNT_ID is unset. Control API: GET /accounts/{account_id}/apps.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "account_id": { "description": "Override the account id (defaults to the token's account).", "type": "string" } }, "type": "object" }, "name": "ably_list_apps", "outputSchema": null }, { "description": "Enumerate channels that are currently active in the app. Requires the API key to have the 'channel-metadata' capability. REST: GET /channels.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "by": { "description": "Return channel ids only ('id', default) or full details ('value').", "enum": [ "id", "value" ], "type": "string" }, "limit": { "description": "Max channels per page (<=1000). Default 100.", "exclusiveMinimum": 0, "maximum": 1000, "type": "integer" }, "prefix": { "description": "Only return channels whose name starts with this prefix.", "type": "string" } }, "type": "object" }, "name": "ably_list_channels", "outputSchema": null }, { "description": "List the API keys for an app, including their capabilities (but not the full secret). Control API: GET /apps/{app_id}/keys.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "app_id": { "description": "App id (from ably_list_apps).", "type": "string" } }, "required": [ "app_id" ], "type": "object" }, "name": "ably_list_keys", "outputSchema": null }, { "description": "List the channel namespaces (channel-rule prefixes) configured for an app, e.g. persistence and push settings. Control API: GET /apps/{app_id}/namespaces.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "app_id": { "description": "App id (from ably_list_apps).", "type": "string" } }, "required": [ "app_id" ], "type": "object" }, "name": "ably_list_namespaces", "outputSchema": null }, { "description": "List the Ably Queues (AMQP/STOMP message queues) provisioned for an app, with their state and messaging stats. Control API: GET /apps/{app_id}/queues.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "app_id": { "description": "App id (from ably_list_apps).", "type": "string" } }, "required": [ "app_id" ], "type": "object" }, "name": "ably_list_queues", "outputSchema": null }, { "description": "List the integration rules (reactor rules: webhooks, AWS Lambda/SQS/Kinesis, Kafka, Pulsar, etc.) configured for an app. Control API: GET /apps/{app_id}/rules.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "app_id": { "description": "App id (from ably_list_apps).", "type": "string" } }, "required": [ "app_id" ], "type": "object" }, "name": "ably_list_rules", "outputSchema": null }, { "description": "WRITE: publish a message to a channel. Every connected subscriber receives it in real time. This is a real, outward-facing side effect — confirm the channel and payload before calling. REST: POST /channels/{channel}/messages.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "channel": { "description": "Channel name to publish to, e.g. 'chat:room1'.", "type": "string" }, "clientId": { "description": "Optional clientId to attribute the message to.", "type": "string" }, "data": { "description": "Message payload (string; send JSON as a stringified value).", "type": "string" }, "name": { "description": "Optional event name for the message.", "type": "string" } }, "required": [ "channel", "data" ], "type": "object" }, "name": "ably_publish_message", "outputSchema": null }, { "description": "Return details about the configured control token: the account and user it belongs to and its capabilities. Good first call to confirm control-plane access. Control API: GET /me.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {}, "type": "object" }, "name": "ably_whoami", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:766e27845035adac5c2ac99c7e6ca51e3b7876b0cfda7cf0b4c121bc70511c87 | sha256sum