Skip to content
| Marketplace
Sign in
Visual Studio Code>AI>Geneva4AINew to Visual Studio Code? Get it now.
Geneva4AI

Geneva4AI

YuhaoSong

|
9 installs
| (0) | Free
AI-powered Geneva log queries — ask Copilot to search DGrep, no browser switching needed.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Geneva4AI

AI-powered Geneva log queries — ask Copilot to search DGrep, no browser switching needed.

Features

  • Natural language log queries — Ask Copilot: "Show me SignalEscalator error logs from yesterday"
  • Zero context-switch — Stay in VS Code while Copilot fetches and analyzes production logs
  • AI-powered analysis — Copilot summarizes patterns, identifies errors, and cross-references with your code
  • Smart parameter discovery — Browse endpoints, namespaces, events, and columns before querying
  • Query history & favorites — Auto-saves every query; save common ones as named favorites
  • Persistent cache — Namespace/event/column lists cached locally for instant lookups

Prerequisites

Requirement Details
VS Code 1.99+ Required for MCP Server support
GitHub Copilot extension Provides Chat UI and AI capabilities
Microsoft Edge Used for Geneva Portal login via CDP (no need to close existing windows)

Nothing else to install. No Python, no Node.js, no extra config — the MCP server is bundled as JavaScript and runs on VS Code's built-in runtime.

Quick Start

  1. Install this extension (from VSIX or Marketplace)
  2. Click "DGrep" in the status bar → Launch Edge — a dedicated Edge window opens automatically with an isolated profile
  3. Log in to Geneva Portal in the new Edge window
  4. Open Copilot Chat → Ask: "Query DGrep logs for namespace X, event Y in the last hour"

How It Works

You (Copilot Chat)
  → "Show me errors in SignalEscalator logs from the last 2 hours"

Copilot
  → Calls query_dgrep MCP tool
  → Connects to Edge via CDP (reuses your Corp login)
  → Fetches logs from Geneva Portal API
  → Analyzes and summarizes results
  → "Found 42 error entries. 15 are IcmClient failures..."

Available MCP Tools

Tool Description
check_dgrep_connection Verify Edge CDP connection status
list_dgrep_endpoints List 13 available Geneva endpoints
list_dgrep_namespaces Search namespaces for an endpoint
list_dgrep_events List events for a namespace
list_dgrep_columns List columns/fields for an event (for building filters)
query_dgrep_tool Query DGrep logs with full parameters
list_dgrep_history View recent query history
save_dgrep_favorite Save a query as a named favorite
list_dgrep_favorites List all saved favorite queries
delete_dgrep_favorite Remove a saved favorite

query_dgrep Parameters

Parameter Required Default Description
namespace Yes — Geneva namespace (e.g., SignalEscalatorTest)
event No Log Event name (e.g., Log, CustomEvent)
endpoint No Diagnostics PROD Geneva endpoint
time_range No 1h Relative time range: 30m, 1h, 6h, 1d, 5d. Ignored when start_time/end_time are set.
start_time No — Absolute start time in ISO 8601 UTC (e.g., 2026-03-01T00:00:00.000Z). Use with end_time.
end_time No — Absolute end time in ISO 8601 UTC (e.g., 2026-03-02T00:00:00.000Z). Use with start_time.
conditions No — Filter conditions: list of [column, operator, value] triples
max_rows No 200 Max rows to return (up to 10,000)
columns No — Column projection: only include these columns in output (+ PreciseTimeStamp always included). Use with list_dgrep_columns.
timeout No 60 Query timeout in seconds. Increase for slow namespaces or large time ranges.

Natural Language Examples

You say Copilot does
"show me SignalEscalator error logs from yesterday" namespace=SignalEscalator*, time_range=1d, Level≤2
"show me timeout errors in the last 6 hours" time_range=6h, filter=timeout
"any exceptions in the last 30 minutes?" time_range=30m, filter=exception
"run that query again" checks history, re-runs last query

Extension Commands

Command Description
Geneva4AI: Launch Edge (CDP Mode) Launch Edge with remote debugging for DGrep
Geneva4AI: Check Edge Connection Check if Edge CDP is connected

Status Bar

  • $(check) Geneva4AI — Connected and ready
  • $(debug-disconnect) Geneva4AI — Edge not connected (click to check or launch)

Data Storage

File Contents
~/.geneva4ai_cache.json Cached namespaces, events, columns (~1 MB)
~/.geneva4ai_history.json Last 50 query entries

Troubleshooting

"Edge CDP not connected"

Click DGrep in the status bar → Launch Edge. The extension opens Edge with an isolated profile (--user-data-dir) so you don't need to close existing Edge windows.

Alternatively, launch manually:

msedge --remote-debugging-port=9222 --user-data-dir="%LOCALAPPDATA%\geneva4ai-edge"

"Login required"

Navigate to Geneva Portal in the CDP-enabled Edge window and log in with your Corp account.

Architecture

The MCP server is written in TypeScript, bundled into a single JavaScript file with esbuild, and runs on VS Code's built-in Node.js — zero external dependencies to install.

It connects to Edge via Chrome DevTools Protocol (CDP) using playwright-core, reusing your existing Corp/AAD login session to call the Geneva Portal API. A 2-page pool ensures query resilience, and auth headers are captured via response interception for reliable token reuse. Permission errors are detected instantly via iframe content inspection and API response interception — no more 30-second timeouts when you lack access to a namespace.

VS Code + Copilot Chat
  ↕ MCP (stdio)
Node.js MCP Server (bundled JS, 10 tools)
  ↕ Playwright CDP (2-page pool)
Edge Browser (isolated profile, Corp/AAD login)
  ↕ HTTPS
Geneva Portal API

License

MIT

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