Smolabot
Deterministic decision guardrail for AI agents and bots. Verifies pre-trade economics (long-only).
Should I use this
Quality & Safety
Findings (2)
- HIGH
- MEDIUMin trade_check
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": {
"smolabot": {
"url": "https://smolabot.arison8.com/mcp"
}
}
}Remote endpoints
https://smolabot.arison8.com/mcpstreamable-httpWhat it can do
Tool inventory
Tools (1)
🟢trade_check(symbol, side, size, entry_price, exit_price, ...)
Deterministic pre-trade economics check for a long (buy) round trip. Call it before placing a trade: given size, entry/exit reference prices, maker/taker roles, fees, spread and slippage, it returns whether the trade still clears after all costs (result.economically_clears, result.reason), the net P&L and return, a per-leg cost breakdown, the break-even and minimum profitable exit prices, and every assumption applied. No predictions, no market data, no execution. Costs 1 prepaid credit per successful check; invalid input costs nothing. Requires "Authorization: Bearer smk_..." (get a key at https://smolabot.arison8.com).
Input Schema
{
"type": "object",
"properties": {
"symbol": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "Label only; does not affect the math."
},
"side": {
"type": "string",
"enum": [
"buy"
],
"description": "Long-only: \"buy\". Shorts are rejected with SIDE_NOT_SUPPORTED."
},
"size": {
"description": "Exactly one of quantity (base units) or notional (quote currency, at the entry reference price).",
"oneOf": [
{
"type": "object",
"additionalProperties": false,
"required": [
"quantity"
],
"properties": {
"quantity": {
"type": "number",
"exclusiveMinimum": 0
}
}
},
{
"type": "object",
"additionalProperties": false,
"required": [
"notional"
],
"properties": {
"notional": {
"type": "number",
"exclusiveMinimum": 0
}
}
}
]
},
"entry_price": {
"type": "number",
"exclusiveMinimum": 0,
"description": "Entry reference (mid) price, before spread, slippage and fees."
},
"exit_price": {
"type": "number",
"exclusiveMinimum": 0,
"description": "Expected exit reference (mid) price, before spread, slippage and fees."
},
"entry_liquidity": {
"type": "string",
"enum": [
"maker",
"taker"
]
},
"exit_liquidity": {
"type": "string",
"enum": [
"maker",
"taker"
]
},
"maker_fee_bps": {
"type": "number",
"minimum": 0,
"exclusiveMaximum": 10000
},
"taker_fee_bps": {
"type": "number",
"minimum": 0,
"exclusiveMaximum": 10000
},
"spread_bps": {
"type": "number",
"minimum": 0,
"description": "FULL bid/ask spread in bps; a taker leg pays half."
},
"slippage_bps": {
"type": "number",
"minimum": 0,
"description": "Adverse slippage per taker leg, in bps."
},
"profit_buffer_bps": {
"type": "number",
"minimum": 0,
"description": "Optional required net return in bps; omitted means 0 (echoed in assumptions)."
}
},
"required": [
"symbol",
"side",
"size",
"entry_price",
"exit_price",
"entry_liquidity",
"exit_liquidity",
"maker_fee_bps",
"taker_fee_bps",
"spread_bps",
"slippage_bps"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"model_version": {
"type": "string",
"description": "Calculation model version. Same version + same input = same output."
},
"request_id": {
"type": "string"
},
"result": {
"type": "object",
"description": "Present when ok=true: the canonical /check result."
},
"error": {
"type": "object",
"description": "Present when ok=false. Stable machine-readable code; field-level `errors` for VALIDATION_FAILED.",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"errors": {
"type": "array"
}
}
},
"usage": {
"type": "object",
"required": [
"credits_used",
"credits_remaining"
],
"properties": {
"credits_used": {
"type": "number"
},
"credits_remaining": {
"type": "number"
}
}
}
},
"required": [
"ok",
"model_version",
"request_id",
"usage"
]
}Community
Evidence