Blog / August 18, 2025

Moveworks AI Assistant Turns Your Structured Data into Actionable Insights

Mike Caballero, Senior Data Scientist

Qiuyi Hua, Senior Software Engineer

Structured Data Analysis

You need an answer now: “What channels drove the most leads last quarter?” You can export a CSV and wait in a BI queue… or you can ask your AI AssistantThe catch: raw data makes most LLMs stumble, burn tokens, and guess. Let’s fix that with Structured Data Analysis (SDA).

Why LLMs struggle with structured data

LLMs are excellent with documents, but with structured data — numbers, IDs, timestamps — they act like they’re reading a spreadsheet as a PDF. When you feed entire tables or JSON blobs to a model, problems stack up:

  • Reasoning quality drops. Useful bits get buried under thousands of extra tokens.
  • Latency and cost spike. Token bloat forces the model to read through every row before it can think, slowing down responses.
  • Your employees stay in the dark. Even if the model produces an answer, it rarely explains how it got there. That’s risky for your business.

Retrieval augmented generation (RAG) fixes search for unstructured text. SDA does the same for your rows and columns by having your AI Assistant write and run code against the data, then show you exactly what it did.

Structured Data Analysis in action

Let’s go back to our initial use case. Here’s how you can leverage SDA to turn a complex query into an executable analysis plan:

You ask: “In our revenue marketing data, which five channels generate the most leads?”

Behind the scenes, your AI Assistant pulls the dataset with the Get_B2B_Revenue_Marketing_Data plugin, spins up a sandboxed (an isolated, safe code environment) Code Interpreter to aggregate leads by channel, and then returns a ranked list together with a plain-English explanation and a link to the exact code.

Behind the scenes: How we built it

To enable your AI agent to tackle this kind of task, we built three new components for Moveworks AI Assistant:

  1. Variable memory

  2. Code execution

  3. Agentic tuning

Together, these let your Assistant store retrieved data while analyzing it with code.

Variable memory

To use data from external systems, plugins fetch it and store it as variables. When your plugins fetch data, responses become first‑class variables that live in the agent’s memory. You can recall, transform, and pass these variables into future plugin or code calls without re-fetching data or overloading the context window — keeping tokens in check and enabling faster responses.

Code execution

Next, your agent uses those variables with Code Interpreter. Your Assistant plans out the analysis and writes the code while Code Interpreter handles the math:

  • Auto‑schema discovery. The reasoner inspects the incoming variable and programmatically selects the columns it needs (e.g., channels, leads_generated). No manual column picking.
  • On‑the‑fly aggregation. It writes Python snippets to group, filter, and rank — exactly the kind of logic you’d put in a BI query but generated in real time.
  • Sandboxed. Each run is isolated, capped on CPU/memory, and wiped after execution.

Agentic tuning

Last but not least, the Agentic Engine — which powers your AI Assistant reasoning — is trained to decide when Code Interpreter is required, outline a multi‑step plan (e.g., select → aggregate → rank → explain) and present the findings in everyday language. This tuning incorporates user-focused discovery and recoverability strategies to ensure that all your employees hit the ground running with SDA.

Verifiability baked in

Before sharing any numbers, your Assistant summarizes its approach in plain English, so any employee can understand the process it used. 

A code citation expands to display the precise code, variables, and outputs behind the answer, everything you need to audit the logic. This allows you to meet your employees where they are.

Key takeaways

For employees

  • Faster insights. Skip BI queues. Ask in plain English and get audited answers.
  • No black boxes. Data, code, and outputs are all surfaced for review.

For agentic developers

  • Composable building blocks. Variable Memory + Code Execution form an agentic loop you can extend with your plugins.
  • Lower risk. Code runs in a sandbox, and every step is open for inspection.

SDA gives your employees answers they can trust and your builders a loop they can extend — fast, safe, and cost-aware. This is how you upgrade to a real agentic analyst: retrieve → run code → verify — all in your AI Assistant.

Request a demo to discover how Moveworks’ agentic engine can deliver insights from your data. 

Already a customer? Sign up for our Limited Preview and start building with our quickstart guide.

Table of contents


The content of this blog post is for informational purposes only.

Subscribe to our Insights blog