
As applications using AI evolve, databases are no longer just data stores since they are becoming intelligent endpoints that can interact directly with large language models (LLMs) and AI agents. The Model Context Protocol (MCP) is the key standard that makes this possible: it provides a uniform way for AI agents to query, reason, and act on data sources such as relational databases.
In this post, I will walk through two practical implementations of MCP:
- Using Oracle’s built-in SQLcl MCP Server, and
- Rolling your own MCP server with Python for finer control.
Finally, we will take a look at a concise rundown of what changed from Oracle 23ai to 26ai, because 26 ai is not just a patch, it is a major long-term-support (LTS) release introducing native MCP capabilities, deeper AI integration, and agentic workflow support.
By the end of this post, you will have runnable code for Oracle AI Database 26ai, and know which path fits best for your data-driven AI applications.
What is MCP (Model Context Protocol)?
The Model Context Protocol, or MCP, is all about how an AI agent talks to external data sources or tools in a clear and organized way. Instead of making random API calls, an MCP client, such as an AI assistant, connects to an MCP Server that lists the tools it can use. This setup lets the agent easily call on those tools whenever it needs to.
Before the Model Context Protocol (MCP) was introduced, developers often built custom APIs to let applications or AI models query a database. For instance, a developer might create a custom “Run SQL” endpoint like POST /api/run-sql, where the client sends a SQL query inside a JSON payload such as {“query”: “SELECT name, email FROM customers WHERE country = ‘Canada’;”}. While functional, this approach comes with several issues. First, the AI model or client must already know that this specific endpoint exists. Second, the structure of the request and response is arbitrary, allowing each developer to define it differently, which causes inconsistency and integration challenges. Finally, such APIs lack schema awareness, as the AI has no built-in understanding of what tables or columns are available unless that metadata is hardcoded elsewhere. This fragmented approach makes scaling and securing AI-database interactions difficult, which is precisely what MCP aims to solve through standardization and schema-aware communication.
The agent can dynamically invoke these tools. In database contexts, the Model-Driven Control Platform (MCP) connects your large language model (LLM) with your database engine, enabling models to:
- Discover schemas and tables
- Generate and safely execute SQL queries
- Reason over query results
- Enforce role-based access and governance policies
Oracle AI Database 26 ai, to be deployed on Oracle Cloud Infrastructure (OCI), supports Multi-Container Processing (MCP) in two main ways:
1- Use the built-in SQLcl MCP Server
Oracle bundles an MCP Server directly inside SQLcl, its powerful command-line and scripting tool for Oracle Database. This built-in server allows developers and AI agents to securely connect to the database and execute queries using the Model Context Protocol (MCP) without any external configuration or middleware. When working on Oracle Cloud Infrastructure (OCI), the process is straightforward. First, you provision an Oracle AI Database 26 ai instance, ensuring that it is fully configured with the latest AI features. Next, you install the latest SQLcl release (the version aligned with Oracle Database 26 ai tools) on your local workstation or OCI Cloud Shell. After that, you configure SQLcl to connect to your database using standard credentials or wallet-based authentication. Once connected, you can enable the MCP server directly within SQLcl, turning your Oracle Database into a fully compliant MCP endpoint accessible to AI clients, or other LLM-based applications.
sql /nolog SQL> MCP START;
2- Develop your own MCP Server using Python
For developers who prefer full control and flexibility, the next step is to implement a custom MCP Server using Python, as demonstrated in the source code available on my GitHub repository:
https://github.com/brunorsreis/oracle-mcp-server/tree/main
This implementation delivers the FastMCP SDK and python-oracledb to expose a minimal set of secure, schema-aware tools, including ist_tables, describe_table, and query. These functions enable safe and standardized database access under the Model Context Protocol (MCP).
Unlike ad-hoc REST APIs, this approach provides dynamic tool discovery, built-in validation, and the ability to integrate with any MCP-compatible AI client (like Claude Desktop or ChatGPT). It is ideal for running in Oracle Cloud Infrastructure (OCI), ensuring data integrity and auditability through Oracle’s security model, while still being open and customizable for developers.
The full implementation is in the file oracle_mcp.py, which can be executed locally or from OCI Cloud Shell once environment variables (ORACLE_USER, ORACLE_PASSWORD, and ORACLE_DSN) are configured.
My Take: What’s New from Oracle 23 ai to 26 ai
From my perspective, the leap from Oracle 23ai to Oracle 26ai is more than a version upgrade; it is a strategic evolution. Oracle Database 23 ai introduced groundbreaking AI capabilities such as embedding vector search, Select AI, and generative integrations that bring intelligence closer to enterprise data. With Oracle Database 26 ai, those innovations have evolved into a fully AI-native architecture, where AI, agents, and data operate together within the database engine itself.
When AI works around the database, as in Oracle 23 ai, which can be described as AI-assisted since Oracle enabled SQL to “call out” to external AI models. For example, the Select AI feature allowed SQL queries to send text to a model for interpretation. In this setup, the database remained mostly passive: AI acted as an external assistant that enhanced queries or analytics.
In contrast, when AI works within the database, as with the AI-native Oracle 26 ai, Oracle has integrated AI and agentic workflows directly into the database engine itself. This includes native MCP Server support, which allows direct LLM-agent access, and AI Agents that can reason, act, and trigger database functions autonomously.
This architectural unification means AI is no longer a plugin but part of the core runtime. Oracle 26 ai treats vectors, models, and agents as first-class citizens, just like tables or indexes, by allowing the database to interpret, reason, and act contextually on data, not merely store it.
With Oracle 26ai, Oracle has clearly shifted from experimentation to long-term enterprise adoption. The most transformative addition is the built-in MCP Server, which allows AI agents to connect directly to the database using the Model Context Protocol. This change alone eliminates the need for ad-hoc connectors and bridges the gap between LLMs and secure enterprise data stores. Something that was still manual in 23ai.
Equally important is that 26ai is now an LTS (Long-Term Support) release, ensuring the stability, patch cadence, and lifecycle that enterprises require for production workloads. Oracle has also expanded its multi-modal AI capabilities, unifying relational, vector, graph, and document data types within one engine. This convergence enables AI reasoning across structured and unstructured data without external data pipelines.
Another big step forward is the introduction of AI Agents and Agentic Workflows, allowing logic and automation to run natively in-database instead of at the application layer. Combined with stronger security, governance, and AI-aware auditing, these features make Oracle 26ai a foundation for trustworthy, scalable AI systems.
In summary, Oracle 23ai laid the groundwork. However, Oracle 26ai delivers the architecture as it is a production-ready, cloud-optimized platform where AI models, agents, and data live and operate together securely.
References:
Oracle. (2025). Oracle AI Database 26 ai product page. Oracle. https://www.oracle.com/database/26ai/
Oracle. (2025, October 14). Introducing MCP Server for Oracle Database. Oracle Blogs. https://blogs.oracle.com/database/post/introducing-mcp-server-for-oracle-database
Google. (2024). Model Context Protocol SDK (FastMCP) documentation. https://googleapis.github.io/genai-toolbox/
Oracle. (2024). python-oracledb user guide. https://python-oracledb.readthedocs.io/
Oracle. (2025, October 14). Oracle AI Database 26 ai powers the AI for data revolution announcement. Oracle News. https://www.oracle.com/news/announcement/ai-world-database-26ai-powers-the-ai-for-data-revolution-2025-10-14/


*The views expressed here are my own and do not represent those of my employer.*
Hello, I’m Bruno — a dual citizen of Brazil and Sweden. I bring a global perspective shaped by experiences in both South America and Europe, with a strong focus on collaboration and innovation across cultures. I am a Computer Scientist, PhD Candidate in Information and Communication Technologies, focusing on Data Science and Artificial Intelligence, and hold dual Master’s degrees in Data Science and Cybersecurity. With over fifteen years of international experience spanning Brazil, Hungary, and Sweden, I have collaborated with global organizations such as IBM, Playtech, and Oracle, as well as contributed remotely to projects across multiple regions. My professional interests include Databases, Cybersecurity, Cloud Computing, Data Science, Data Engineering, Big Data, Artificial Intelligence, Programming, and Software Engineering, all driven by a deep passion for transforming data into strategic business value.