Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>ross-language-modesNew to Visual Studio Code? Get it now.
ross-language-modes

ross-language-modes

Vamsi001

|
1 install
| (0) | Free
Auto-detect Ross XPression and DashBoard scripts, assign language modes, and query an MCP server for completions.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Ross Language Modes + MCP (VS Code Extension)

This extension auto-detects Ross Video scripting patterns and assigns language modes:

  • vbscript for Ross XPression scripting/API-style event code.
  • rossvbscript for Ross XPression scripting/API-style code with strong XPression signals.
  • ogscript for Ross DashBoard panel XML files that include ogScript code.

It also provides completion suggestions via an MCP server (plus local fallback snippets).

By default, the extension launches a bundled MCP server (out/mcpServer.js) over stdio, so users do not need a separate MCP installation.

Features

  • Detects XPression event patterns like OnOnline, OnSetText, and OnRender.
  • Detects DashBoard panel files that mix XML + ogScript APIs (ogscript.debug, ogscript.setStyle, params.setValue).
  • Auto-switches language mode for open documents.
  • Adds command: Ross: Rescan Language Modes.
  • Queries an MCP server for context-aware completions in vbscript, rossvbscript, and ogscript files.
  • Indexes local Ross docs (default: docs/) and uses them for fallback completions + MCP context.

Settings

All settings are under rossMcp.*.

Key settings:

  • rossMcp.enableDetection (default: true)
  • rossMcp.enableMcpCompletions (default: true)
  • rossMcp.mcpServer.command
  • rossMcp.mcpServer.args
  • rossMcp.mcpServer.env
  • rossMcp.mcpServer.protocolVersion (default: 2024-11-05)
  • rossMcp.mcpServer.completionMethod (default: ross/completions)
  • rossMcp.mcpServer.completionToolName (optional; if set, uses tools/call)
  • rossMcp.mcpServer.requestTimeoutMs (default: 4000)
  • rossMcp.mcpServer.includeDocumentText (default: false)
  • rossMcp.docs.enable (default: true)
  • rossMcp.docs.paths (default: ["docs"])
  • rossMcp.docs.includeInMcpRequests (default: true)
  • rossMcp.docs.maxSymbolsInRequest (default: 40)

Example VS Code Settings

If rossMcp.mcpServer.command is empty, the bundled MCP server is used automatically.

Set command/args only when you want to override with an external MCP server:

{
  "rossMcp.mcpServer.command": "node",
  "rossMcp.mcpServer.args": ["d:/mcp/ross-server/dist/index.js"],
  "rossMcp.mcpServer.completionMethod": "ross/completions",
  "rossMcp.mcpServer.includeDocumentText": true
}

If your MCP server exposes completions as a tool instead of a method:

{
  "rossMcp.mcpServer.command": "node",
  "rossMcp.mcpServer.args": [
    "d:/mcp/ross-server/dist/index.js"
  ],
  "rossMcp.mcpServer.completionToolName": "ross_code_completion"
}

MCP Completion Payload

The extension sends:

  • languageId (vbscript or ogscript; rossvbscript is normalized to vbscript for MCP compatibility)
  • editorLanguageId (actual VS Code language id, including rossvbscript)
  • uri
  • fileName
  • prefix
  • position (line, character)
  • context.lineBeforeCursor
  • context.lineAfterCursor
  • documentText (optional, capped length, only when enabled)

Accepted response shapes include:

  • { "completions": [ { "label": "...", "insertText": "..." } ] }
  • { "items": [ ... ] }
  • [ { "label": "..." } ]
  • tools/call results with structuredContent or JSON text payloads containing completions.

The extension also includes docsContext in MCP payloads (when enabled), containing:

  • Indexed symbols relevant to the current prefix.
  • Docs roots and sampled doc file paths.

Build and Run

npm install
npm run compile

Then open this folder in VS Code and press F5 to run the extension in an Extension Development Host.

Commands:

  • Ross: Rescan Language Modes
  • Ross: Reindex Docs for Completions

Next Step for Your Guides/Examples

When you provide the XPression SDK and DashBoard guide/examples, wire your MCP server to index them and return completions in one of the supported response shapes above. This extension is already prepared to consume that server output.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft