Server definition
- Hash
- sha256:1f95f5899999519aa343947eed5efb3c673047a5e816bda16813a730bbdf0b97
- What it is
- What a remote MCP server returned when asked what it offers: 6 tools
The blob, as servednamed by its sha256
{
"instructions": null,
"tools": [
{
"description": "Fetch details about a specific kweenkl channel or notification by ID.",
"inputSchema": {
"properties": {
"id": {
"description": "The ID of the channel or notification to fetch",
"type": "string"
},
"type": {
"description": "Type of resource to fetch: 'channel' or 'notification'",
"enum": [
"channel",
"notification"
],
"type": "string"
}
},
"required": [
"id",
"type"
],
"type": "object"
},
"name": "fetch",
"outputSchema": null
},
{
"description": "Send a push notification using kweenkl. The verb 'kweenkl' means to send a notification. Use this to notify users about important events, updates, or information that requires immediate attention.",
"inputSchema": {
"properties": {
"glance": {
"description": "Optional structured visualization rendered as a card inside the kweenkl iOS app. Must include a 'type' field. v1 supports type='line_chart' with required fields {labels: string[], values: number[]} (same length, ≥2 points) and optional fields {subtitle, accent (#hex), comment, x_label, y_label}. Example: {type:'line_chart', subtitle:'Évolution 2015→2024', labels:['2015','2016','2017'], values:[670,720,780], accent:'#ff6b6b', comment:'tendance haussière'}",
"properties": {
"accent": {
"description": "Hex color for the line, e.g. '#ff6b6b'. Defaults to coral if omitted or invalid.",
"type": "string"
},
"comment": {
"description": "Optional annotation displayed near the delta badge.",
"type": "string"
},
"labels": {
"description": "X-axis labels (same length as values, ≥2).",
"items": {
"type": "string"
},
"type": "array"
},
"subtitle": {
"description": "Small text under the title.",
"type": "string"
},
"type": {
"description": "Glance card type. Currently only 'line_chart' is supported.",
"enum": [
"line_chart"
],
"type": "string"
},
"values": {
"description": "Y-axis numeric values (same length as labels, ≥2).",
"items": {
"type": "number"
},
"type": "array"
},
"x_label": {
"description": "Optional X-axis title.",
"type": "string"
},
"y_label": {
"description": "Optional Y-axis title.",
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
},
"message": {
"description": "The notification message content. Should be clear, concise, and actionable. Maximum recommended length: 500 characters for optimal mobile display.",
"type": "string"
},
"payload": {
"description": "Optional custom JSON payload for additional metadata. Can include any structured data that your app might process (e.g., action buttons, deep links, custom data).",
"type": "object"
},
"priority": {
"description": "Priority level for the notification. 'high' = urgent/critical alerts, 'normal' = standard updates (default), 'low' = non-urgent information.",
"enum": [
"low",
"normal",
"high"
],
"type": "string"
},
"title": {
"description": "Optional title for the notification. Should be brief (max 50 chars recommended). If omitted, only the message will be shown.",
"type": "string"
},
"webhook_token": {
"description": "The webhook token for your kweenkl channel. Format: UUID-like string. Can be found in the kweenkl iOS app by opening a channel and viewing 'Channel Info'.",
"type": "string"
}
},
"required": [
"webhook_token",
"message"
],
"type": "object"
},
"name": "kweenkl",
"outputSchema": null
},
{
"description": "Start the kweenkl login/onboarding flow. If the user provides their device_token (from the iOS app), this will immediately create their webhook. Otherwise, guides them to download the app or join the waitlist.",
"inputSchema": {
"properties": {
"device_token": {
"description": "The user's device token from the kweenkl iOS app. If provided, immediately creates a webhook for them.",
"type": "string"
},
"email": {
"description": "User's email address for waitlist subscription (only used if has_app is false)",
"type": "string"
},
"has_app": {
"description": "Whether the user already has the kweenkl iOS app installed. If true and no device_token, starts device auth flow.",
"type": "boolean"
}
},
"required": [],
"type": "object"
},
"name": "kweenkl_login",
"outputSchema": null
},
{
"description": "Check the status of a device authorization flow. Call this after kweenkl_login to see if the user has approved the connection in their iOS app.",
"inputSchema": {
"properties": {
"session_id": {
"description": "The session ID returned from kweenkl_login",
"type": "string"
}
},
"required": [
"session_id"
],
"type": "object"
},
"name": "kweenkl_login_check",
"outputSchema": null
},
{
"description": "Check kweenkl server connectivity and status. Use this to verify the connection is working before sending notifications. No authentication required.",
"inputSchema": {
"properties": {},
"required": [],
"type": "object"
},
"name": "kweenkl_status",
"outputSchema": null
},
{
"description": "Search kweenkl notification channels and messages. Use this to find channels by name or search through notification history.",
"inputSchema": {
"properties": {
"query": {
"description": "Search query to find channels or notifications",
"type": "string"
}
},
"required": [
"query"
],
"type": "object"
},
"name": "search",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:1f95f5899999519aa343947eed5efb3c673047a5e816bda16813a730bbdf0b97 | sha256sum