Skip to main content
Glama
INo-xious

stockbit-mcp

by INo-xious

alert_create

Read-only

Create price or indicator alerts for IDX stocks, using supported series and operators. Conditions are validated before saving so rules that cannot be evaluated are rejected.

Instructions

Create a price or indicator alert on an IDX stock, stored on this machine. The condition uses the SAME grammar as pine_script signals and is evaluated with the same indicator maths, so an alert and the Pine alertcondition for it agree. Reference a declared series (sma20, sma50, rsi14, macdLine, macdSignal, bbUpper…), a price field (close, high, low, volume, hl2…), or a number. Declare what you reference via overlays/panels — the tool refuses a condition it cannot evaluate rather than storing a rule that silently never fires. A field the SERIES does not carry is a separate matter from one you did not declare. Of the referenceable price fields, volume is the one a response can omit: where a bar is missing it the value reads as absent rather than as zero, and a condition referencing it is UNJUDGEABLE on that bar — reported as warming up, not as false. That is deliberate: a rule comparing volume against a figure the response never sent would otherwise fire, or not fire, on a zero nobody reported. Alerts fire once per bar. Nothing is delivered automatically — alert_check evaluates them; there is no background daemon yet.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
opYes
leftYesSeries id, price field, or number
nameYesWhat this alert means, e.g. 'RSI oversold'
noteNoFree text for your own reference
rightYes
panelsNoOscillators the condition references
symbolYesIDX ticker, e.g. BBRI
overlaysNoPrice series the condition references
cooldown_minutesNoMinimum minutes between fires. Default 0 (once per bar).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.2.2

TDQS

A3.7/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The prose discloses rich behavior: the same grammar as pine_script, refusal to store unevaluable conditions, volume absence semantics, once-per-bar firing, and no background delivery. However, the annotations declare readOnlyHint=true while the description says this tool creates and stores an alert, which is a direct contradiction. Per the rubric, this must be scored 1 and flagged.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but dense and purposeful: it front-loads the main action, then explains grammar/declaration rules, the volume edge case, and firing/delivery behavior. The volume paragraph is somewhat intricate, but it covers a non-obvious semantic that would otherwise cause incorrect expectations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex 9-parameter tool with no output schema, the description covers input syntax, required series declarations, failure behavior, firing frequency, and delivery model. The only notable gap is the lack of any statement about what the tool returns on success (e.g., an alert ID), but this does not block correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 78%, so the schema already documents most parameters. The description adds meaningful semantics beyond the schema: left/right can reference series, price fields, or numbers; referenced series must be declared via overlays/panels; volume omission is treated as absent and makes conditions unjudgeable; and the default cooldown is once per bar.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence states a specific verb (Create), a specific resource (price or indicator alert), a domain (IDX stock), and a storage location (this machine). This clearly distinguishes alert_create from its siblings alert_list, alert_delete, and alert_check.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the create-then-check workflow by noting that alerts are not delivered automatically and must be evaluated via alert_check, with no background daemon. It does not explicitly name alternatives to avoid, but the create vs. list/delete/check split is clear from context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.