Carlos Vega (ISI Condal) asked a question.

Hackathon Project - An MCP Server Implementation Natively in Progress OpenEdge

Hi everyone!

 

I’d like to share with you the project I submitted for the Progress OpenEdge AI Hackathon 2025, which took place during the Leeds Digital Festival 2025 (UK) about two months ago:

 

https://github.com/vega82bcn/Sports2020MCP

 

Last week, I attended the PUG Challenge Valencia 2025. From the presentations I saw and the conversations I had with the people I met there, I believe many others would find it interesting as well.

 

My project explores the possibility of deploying an MCP (Model Context Protocol) server directly inside PASOE, without relying on an external stack like Python, Java, JavaScript, or .NET.

 

Currently, Progress OpenEdge doesn’t have an official SDK for building an MCP server, but it seems to be on the roadmap for a future release, and many developers are looking for ways to achieve it on their own.

 

The main idea of my project was to implement the protocol communication layer from the ground up. Essentially, the MCP protocol is an API that follows JSON-RPC 2.0. If we can replicate that API with a structure that complies with the standard, then it works!

 

For educational purposes, I used the Sports2020 sample database, but you can easily adapt it to your own data model and business logic.

 

The goal of an MCP server is to expose tools that an LLM (Large Language Model) can call dynamically, depending on the context of a conversation.

 

Once you have your first working version of an MCP server, you can test it using an MCP Inspector.

 

In my demo, I used Postman like MCP Inspector:

 

Postman like MCP Inspector 

When your server behaves correctly, you can start testing it across multiple platforms (MCP Host \ MCP Client). That’s one of the great advantages of MCP. Since it’s an open standard, it’s easy to integrate with any compatible software (It's Plug&Play).

 

In my demo, I tested it using n8n (free if self-hosted):

 

N8N like MCP Host & MCP Client 

After verifying that your AI agent works, you can publish it as a webhook and create your own simple frontend (HTML/CSS/JS) that connects to it as a backend:

 

Basic HTML/CSS/JS frontend for the chatbot 

If your application is still desktop-based, you can use an Embedded Browser component inside a ABL Window that loads this frontend directly:

 

chatbot inside ABL Window 

I’ve also included the n8n workflow, the frontend source code, and a short PowerPoint presentation explaining how my MCP server works.

 

If you have any questions, feel free to drop them in the comments. You’re also very welcome to build his own project upon this project, there are still several interesting improvements to explore, such as:

 

- Implementing stdio transport

- Implement resources

- Implement prompts

- Adding SSE (Server-Sent Events) support

- Extending authorization methods