Skip to main content

SearchNinjaScriptSymbols

Fuzzy-searches the NT8 type and member surface that the running NinjaScript runtime exposes. Use this when the agent doesn't know the exact symbol name but has a guess.

PropertyValue
Required scopemcp:read
RiskNone. Read-only.
Side effectsNone.

When an agent should use it

  • After a compile error referencing an unknown identifier.
  • When the user describes an indicator by behavior but not name.
  • During NinjaScript discovery before authoring.

Parameters

{ "query": "moving average", "limit": 20 }

Response shape

{
"results": [
{"name": "EMA", "kind": "indicator"},
{"name": "SMA", "kind": "indicator"},
{"name": "WMA", "kind": "indicator"}
]
}

Example user prompt

Search NinjaScript symbols for "trailing stop" and "supertrend". Tell me which
ones exist in this install. Do not write any code yet.

Common errors

SymptomLikely causeFix
Empty resultsSymbol does not exist.Try a synonym or call GetNinjaScriptHelp for adjacent topics.

Use in AI-generated NinjaScript workflows

  • When the agent should call it: when the user describes a feature by behavior rather than name (for example "trailing stop" or "session range") and the model needs to discover the right NT8 symbol.
  • Required scope: mcp:read.
  • Confirmation required: no.
  • What the agent should summarize: the top three matches and which one the agent intends to use, with reasoning.
  • Failure mode it helps catch: the model picking a fictional symbol name. Search forces it to choose from the real surface.

For the broader vibe coding workflow, see NinjaScript AI Workflow.