Datoka Hooks
Public webhook relay with signed observations, retries and verified receivers. Self-service beta.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"datoka-hooks": {
"url": "https://datoka-hooks-test.bhazarstudio.workers.dev/mcp"
}
}
}Remote endpoints
https://datoka-hooks-test.bhazarstudio.workers.dev/mcpstreamable-httpWhat it can do
Tool inventory
Tools (7)
🟡register_destination(target, recoveryKey)
Create an isolated access. Keep recoveryKey secret and reuse it only with the same target on retries.
Input Schema
{
"type": "object",
"properties": {
"target": {
"type": "string",
"maxLength": 2048,
"format": "uri"
},
"recoveryKey": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
},
"required": [
"target",
"recoveryKey"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}⚪verify_destination(hookId, managementToken)
Verify the well-known challenge file and activate your destination.
Input Schema
{
"type": "object",
"properties": {
"hookId": {
"type": "string",
"pattern": "^pub-[a-f0-9]{32}$"
},
"managementToken": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
},
"required": [
"hookId",
"managementToken"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_destination_status(hookId, managementToken)
Read verification/revocation status and challenge.
Input Schema
{
"type": "object",
"properties": {
"hookId": {
"type": "string",
"pattern": "^pub-[a-f0-9]{32}$"
},
"managementToken": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
},
"required": [
"hookId",
"managementToken"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🔴revoke_destination(hookId, managementToken)
Permanently revoke client access. Previously accepted deliveries finish.
Input Schema
{
"type": "object",
"properties": {
"hookId": {
"type": "string",
"pattern": "^pub-[a-f0-9]{32}$"
},
"managementToken": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
}
},
"required": [
"hookId",
"managementToken"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}⚪accept_hook_event(hookId, token, eventId, contentType, bodyBase64)
Enqueue an event for your verified receiver, idempotent by eventId and exact bytes.
Input Schema
{
"type": "object",
"properties": {
"hookId": {
"type": "string",
"pattern": "^pub-[a-f0-9]{32}$"
},
"token": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
"eventId": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
},
"contentType": {
"type": "string",
"enum": [
"application/json",
"text/plain",
"application/octet-stream"
]
},
"bodyBase64": {
"type": "string",
"maxLength": 87384
}
},
"required": [
"hookId",
"token",
"eventId",
"contentType",
"bodyBase64"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_hook_delivery(hookId, token, deliveryId)
Read delivery state and signed observations.
Input Schema
{
"type": "object",
"properties": {
"hookId": {
"type": "string",
"pattern": "^pub-[a-f0-9]{32}$"
},
"token": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
"deliveryId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"required": [
"hookId",
"token",
"deliveryId"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢verify_hook_receipt(hookId, token, event, receipt)
Verify a relay receipt within your authenticated hook.
Input Schema
{
"type": "object",
"properties": {
"hookId": {
"type": "string",
"pattern": "^pub-[a-f0-9]{32}$"
},
"token": {
"type": "string",
"pattern": "^[a-f0-9]{64}$"
},
"event": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"receipt": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"hookId",
"token",
"event",
"receipt"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}Community
Evidence