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.