MCP-Pick D3: Converse in Natural Language with your MultiValue Database

198 views
Skip to first unread message

FAUSTO PAREDES

unread,
May 2, 2025, 2:17:57 PMMay 2
to Pick and MultiValue Databases
Dears,
After following with interest the discussions about AI and PICK/MultiValue systems, I want to share an innovation that radically transforms the way we interact with our D3 databases: a bidirectional bridge that enables natural language conversations with our legacy systems, without the need for migration or code rewriting.
The MCP-Pick Revolution: Connecting Legacy Systems with Conversational AI
I have developed a bidirectional bridge between Rocket D3 systems and advanced AI models such as Claude and Gemini, using the Model Context Protocol (MCP). This technology allows our MultiValue systems to speak directly with AI agents through natural language, without the need for migration or rewriting.
How does my solution work?
Structured data exposure: I use standard AQL commands along with mvstoolkit to expose PICK files as HTTP endpoints that return structured JSON:
LIST INVOICE NAMEPROD NAMEBUSNIESS CODE CUSTOMER CODEPROD PRODQUANTITY PRODTOTAL DATEINVOICE
Orchestration with n8n: I implement automated workflows in n8n that invoke these endpoints and send the data to the MCP through Server-Sent Events (SSE).
Bidirectional communication: The AI agent (Claude/Gemini) processes this data and can respond to complex queries such as "What is the total billing by customer in April?" with contextualized analysis.
Tangible Results
The system I have implemented allows:
Natural language queries: Directly ask about data stored in Pick D3
Automated financial analysis: Calculations, monetary formats, and comparative analyses without additional programming
Modern interface generation: Complete dashboards in React/Tailwind automatically generated
Instant Analysis of MultiValue Data
The most revolutionary aspect of my approach is the ability to analyze Pick D3 data instantly and in any conceivable way. In my example, I work with a single billing file and a few fields (NAMEPROD, NAMEBUSNIESS, CODE, CUSTOMER, CODEPROD, PRODQUANTITY, PRODTOTAL), but this is just the tip of the iceberg.
The beauty of the system is that I don't need to predefine reports, dashboards, or specific analyses - I simply ask what I need to know in natural language. "Show me customer purchasing behavior by region," "Analyze the seasonality of our sales by product," or "Identify potential fraud patterns in the last 1000 transactions" - all of this is generated in a matter of minutes, without a single additional line of code. It just takes imagination and the AI handles the rest.
The most impactful example: with a single prompt ("Use MCP PICK to build an interactive financial dashboard in React + Tailwind CSS"), I obtained a complete website with graphs, tables, and risk analysis based directly on my MultiValue data.
Key Difference with Code Generation
Unlike asking AI to generate PICK code (with the limitations mentioned by several of you), my approach:
Leverages the best of both worlds: the stability and robustness of our legacy systems with the flexibility and capabilities of modern AIs
Does not require PICK programming knowledge to obtain modern interfaces and analyses
Allows real-time updating of dashboards and visualizations
This approach mitigates many risks, as the AI does not generate the code that executes critical operations - it only interprets, visualizes, and analyzes data already processed by proven systems.
You can see an example of the generated dashboard here:



In my opinion, this is the true potential of AI. Best regards and I hope this implementation is useful and you can apply it in your applications.
I've attached a video showing how I interact in real-time with Claude desktop and the Pick D3 MCP to generate a portal in less than 5 minutes without writing a single line of code.
Best regards,
Fausto Paredes
https://faustoparedesia.com/

mvstoolkit.jpgjsonpickd3.jpgmcppickd3.jpgiaagent.jpg

Nivethan T

unread,
May 4, 2025, 9:39:08 PMMay 4
to Pick and MultiValue Databases
This is pretty cool but I think all this stuff about asking questions to data and getting an AI to answer is a false path. I think using it to write code to answer those questions makes way more sense.

This may be my own ignorance but these models are probabilistic, meaning they are going to probably answer the same question the same way most of the time. Programming however is deterministic, every run will be the same against the same data.

If I ask for how many orders went out this month, how sure are you that the AI model didn't miss a single one? Versus a program that loops on some selection. Arguably your selection criteria could be subtly wrong but at least this is programmer error and stuff like AI tooling could help here with both writing the code and catching it.

FAUSTO PAREDES

unread,
May 4, 2025, 11:04:35 PMMay 4
to mvd...@googlegroups.com

Dear Nivethan,

Thank you for your feedback on the MCP-Pick technology. I appreciate your perspective and would like to clarify how this system actually works.

The MCP-Pick is not simply "asking AI questions about data." It's a bidirectional bridge connecting PICK/MultiValue systems with AI models through the Model Context Protocol (MCP). Here's how it works in practice:

  1. Structured data exposure: The system exposes PICK files as HTTP endpoints returning structured JSON, using standard AOL commands and mvsToolkit.
  2. n8n orchestration: Automated workflows capture this structured data and send it to the MCP through Server-Sent Events (SSE).
  3. Bidirectional communication: Claude/Gemini receives this structured information and processes it with complete context. It's not "guessing" - it's working with actual data from the PICK system.
  4. Precise translation: When you make a natural language query like "show purchases by region," the system translates this to an exact PICK command that executes on the underlying system.

The fundamental difference from traditional programming is that you're not relying on AI to generate code that then performs critical operations. The PICK system continues to execute all fundamental operations with the same deterministic reliability as always. MCP-Pick simply removes the entry barrier by allowing interaction with these proven systems using natural language.

Regarding your example about counting orders: when you ask "how many orders went out this month?", the system translates this to a precise PICK command (like COUNT ORDERS WITH DATE BETWEEN '01/05/25' AND '31/05/25'). This command executes on the PICK system exactly as if a programmer had written it manually. The difference is only in the interface, not in the execution.

The beauty of this approach is that it leverages the best of both worlds: the reliability of existing PICK systems with the accessibility of natural language. Users get immediate results without waiting for custom development, and programmers can focus on more complex tasks rather than generating basic reports.

As definitive proof, I invite you to watch the attached video where I demonstrate generating a complete portal in less than 5 minutes without writing code, but executing real, verifiable PICK commands at each step.

Best regards, 

Fausto



--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
---
You received this message because you are subscribed to the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mvdbms+un...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/mvdbms/60031273-a1df-4fda-bbf7-f992db87d527n%40googlegroups.com.
mcpd3claude.mp4

Jim Idle

unread,
May 6, 2025, 4:53:25 PMMay 6
to mvd...@googlegroups.com
If you are using SSE, you are going to run into scalability issues pretty quickly. There are better technologies for this. 

It’s an interesting idea but it remains to be seen if it can be used in a practical sense. You need to get someone willing to test it in anger on a real system alongside known queries/programs. 

You are relying on people being able to create useful prompts. What about:

I want to know how many orders were above average value last Wednesday around lunchtime. 

Jim

Douglas Tatelman

unread,
May 6, 2025, 6:37:33 PMMay 6
to Pick and MultiValue Databases
Yes, it's totally unauditable. And just waiting for the query from hell that will bring down the whole system.

Sorry, I'm just and AI skeptic. It's just string manipulation with a good PR agent. 

Kazuya Kosaku

unread,
May 6, 2025, 8:21:53 PMMay 6
to mvd...@googlegroups.com, 小塚幸男, d-c...@simount.com
なかなか熱い物を創ってきました。
渡邊さんのIQLの発展版な感じです。
MCPはかなり可能性を感じる技術なので期待したいです。
いったんMVDBはおいておくことにしましたが横目に注目しておきたいです。

2025年5月3日(土) 3:18 FAUSTO PAREDES <faus...@gmail.com>:
--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
---
You received this message because you are subscribed to the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mvdbms+un...@googlegroups.com.

Kazuya Kosaku

unread,
May 6, 2025, 8:24:18 PMMay 6
to mvd...@googlegroups.com
Sorry, I sent that by mistake. Please disregard.

2025年5月7日(水) 9:21 Kazuya Kosaku <kos...@simount.com>:


--
株式会社シマント
小作和也<kos...@simount.com>

Jim Idle

unread,
May 6, 2025, 8:25:29 PMMay 6
to mvd...@googlegroups.com
I won’t dismiss it completely out of hand. But it would need to be seriously put through it’s paces. I think it B is positive that people are experimenting with such things. 

As ever though, all this having to write services because most MV implementations have basically zero integration capabilities, slightly annoys me. jBASE…. Blah blah etc, you’ve heard it all before ;)

--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
---
You received this message because you are subscribed to the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mvdbms+un...@googlegroups.com.

Aquilino Edwin

unread,
May 7, 2025, 4:59:24 PMMay 7
to Pick and MultiValue Databases
  "most MV implementations have basically zero integration capabilities"  — Do you think it’s worth trying the Strangler Fig or a Facade setup? I’m diving back into this project next month and want a band-aid solution to my legacy DB.

Thanks,
AE

Aquilino Edwin

unread,
May 7, 2025, 5:06:24 PMMay 7
to Pick and MultiValue Databases
BTW:
AI:
Relationship between Strangler Fig and Facade:
The Strangler Fig pattern often uses a Facade (like an API Gateway or a carefully configured load balancer) as the "seam" to redirect traffic. The facade helps manage the transition by presenting a consistent interface while underlying components are being swapped out.
A Facade is about simplifying access to a system (which could be new or old), while Strangler Fig is specifically about replacing an old system with a new one.

In essence:
Strangler Fig: A migration strategy for replacing old infrastructure.
Facade: An architectural pattern for simplifying access to complex infrastructure (which could be part of a Strangler Fig migration or just a way to manage existing comple

Reply all
Reply to author
Forward
0 new messages