Skip to content

Planning Train Journeys in Belgium Using Natural Language

What if you could plan your train journeys in Belgium using natural language?

You're going on a customer visit tomorrow and you need to check the trains, look up the location, send them an e-mail... That's multiple tools you need to interact with, copy or remember information, etc.

What if you could just do this all from one location?

Let's take ourselves into the imaginary story of account manager Ms. Henrard who has planned a customer visit tomorrow at Flemish Textiles Group. Before we start, we connected the following tools to our AI client:

  • Server for getting realtime Belgian rail times
  • Our CRM with client and order information
  • The world wide web (standard tool)

This list could be much longer, but for the sake of simplicity we constrained ourselves to these. For this we use MCP-Servers (Model Context Protocol).

The Conversation

Finding trains and customer details

We start with a simple question: we're going to visit our client and need to find some trains. The AI is rather conservative in timing, but that's not a big issue as we can ask follow-up questions.

You can also see the AI thinking ahead and already fetching the details of this specific customer from the CRM. Although it's called "Flemish Textiles Group", it correctly finds the one closest.

Initial query showing train search and CRM lookup

Getting later options

As the initial suggestions were a bit early, we ask a follow-up question to get some later trains.

Follow-up for later trains

Drafting a personal email

You could stop here as you've found your train, but let's use this information to take us further. Since it also knows the customer details from the CRM, we can create a very personal e-mail. You could follow-up and ask for edits if you'd like.

If we had connected an email-tool we would be able to actually send the e-mail directly. For demonstration purposes we didn't.

Email draft

Finding nearby customers

As with every client visit, it could be interesting to visit some clients in the neighborhood. Let's check on that. Here we use the combined knowledge of the AI, enriched with information from the CRM.

Unfortunately there are no other customer locations in Ghent, so that search stops here. You could ask the LLM to check on next trains, taking it further if you'd like.

Nearby customers search

Researching the customer

And lastly, let's check in on some news about Flemish Textiles Group as it's important to arrive prepared. Here we use the web-tool functionality to search for interesting articles.

As expected, not much to find about our company as it is imaginary, but that doesn't stop the AI from finding some general industry news to open our conversation. You could click on the links to get more info or ask the AI to fetch and summarize them.

News search results

The Possibilities

As you can see the possibilities are endless, and the greatest thing of all is that you are not bound to one system or AI like many other AI's in the wild (CoPilot, ...). The tools act as the glue between your existing systems and the outside world.

Technical Overview

Below you can find a high-level diagram explaining what happens in the background. From our local MCP-client we call tools, which can (or cannot) call external APIs, etc.

For the demo above we use the Claude Desktop Client, but you can also use open-source models, your own API-key, etc. with for example jan.ai.

High-level overview of the tool-calling flow

CRM Data

A database-extract of our CRM showing what gets sent back to the AI. You can choose what information to expose with a specific tool, having clear control over what people can see and use.

CRM database extract

Try It Yourself

You can set up the same tooling using:

Security Note

You can also opt to use a local model so that no customer data leaves your network/computer ever.

Beware of using online MCP-servers and always check them before installing/using. Although the technology is very promising, the security landscape is still maturing.

More Information

SFLOW BV - Polderstraat 37, 2491 Balen-Olmen