Development
Decode raw WebSocket frames (hex or base64) byte by byte per RFC 6455: FIN/RSV/opcode, MASK bit, extended lengths, masking key, unmasked payload, close codes, and protocol-violation warnings.
Call this tool from your code in three languages.
curl -X POST 'http://127.0.0.1:3003/en/api/tools/websocket-frame-decoder' \
-H 'Content-Type: application/json' \
-d '{"frames":"81 85 37 fa 21 3d 7f 9f 4d 51 58 89 00 88 05 03 e8 62 79 65","inputFormat":"auto","maxPayloadBytes":256}'Send a POST request with your inputs as JSON. File parameters require a separate upload first.
POST http://127.0.0.1:3003/en/api/tools/websocket-frame-decoder| Name | Type | Required | Description |
|---|---|---|---|
| frames | textarea | Yes | — |
| inputFormat | select | No | — |
| maxPayloadBytes | number | No | — |
HTML result
{
"result": "<div>Processed HTML content</div>",
"error": "Error message (optional)",
"message": "Notification message (optional)",
"metadata": {
"key": "value"
}
}Add this tool to your Model Context Protocol server so AI agents can list and call it.
Add this block to your MCP client configuration:
{
"mcpServers": {
"elysiatools-websocket-frame-decoder": {
"name": "websocket-frame-decoder",
"description": "Decode raw WebSocket frames (hex or base64) byte by byte per RFC 6455: FIN/RSV/opcode, MASK bit, extended lengths, masking key, unmasked payload, close codes, and protocol-violation warnings.",
"baseUrl": "http://127.0.0.1:3003/mcp/sse?toolId=websocket-frame-decoder",
"command": "",
"args": [],
"env": {},
"isActive": true,
"type": "sse"
}
}
}After connecting to the SSE endpoint, list the exposed tools:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}Invoke the tool by its id, passing arguments built from its parameters:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "websocket-frame-decoder",
"arguments": {
"frames": "81 85 37 fa 21 3d 7f 9f 4d 51 58 89 00 88 05 03 e8 62 79 65",
"inputFormat": "auto",
"maxPayloadBytes": 256
}
}
}Questions or issues? Contact [email protected]