Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
15139cc
quickstart templates
klazarz Sep 25, 2025
9a80b9a
Merge remote-tracking branch 'upstream/main'
klazarz Sep 25, 2025
863a03e
quickstart templates update
klazarz Sep 25, 2025
00c94a9
Merge remote-tracking branch 'upstream/main'
klazarz Sep 25, 2025
e9dd220
cleanup
klazarz Sep 25, 2025
9598a4b
Merge remote-tracking branch 'upstream/main'
klazarz Sep 25, 2025
43f518f
Merge remote-tracking branch 'upstream/main'
klazarz Sep 29, 2025
fc6f1a0
WMS ID 11919 - missing image
klazarz Sep 29, 2025
1bd0ee7
Merge remote-tracking branch 'upstream/main'
klazarz Sep 29, 2025
489cab8
WMS ID 11919 - fix sled intro
klazarz Sep 29, 2025
c066890
Merge remote-tracking branch 'upstream/main'
klazarz Sep 30, 2025
8ea3d56
WMS ID 11919 - fix formatting in MCP lab
klazarz Sep 30, 2025
0679464
Merge remote-tracking branch 'upstream/main'
klazarz Oct 1, 2025
b107c5a
WMS ID 11919 - fixed build lab for multiople industries
klazarz Oct 1, 2025
0d09d0b
Merge remote-tracking branch 'upstream/main'
klazarz Oct 2, 2025
8b89bb1
Merge branch 'main' into main
klazarz Oct 3, 2025
03c3a0a
Merge remote-tracking branch 'upstream/main'
klazarz Oct 4, 2025
9e608ca
Merge remote-tracking branch 'upstream/main'
klazarz Oct 7, 2025
134d315
WMS 11919: added Oracle MCP
klazarz Oct 7, 2025
911409d
Merge remote-tracking branch 'upstream/main'
klazarz Oct 7, 2025
af50181
Merge remote-tracking branch 'upstream/main'
klazarz Oct 9, 2025
553ccf9
Merge remote-tracking branch 'upstream/main'
klazarz Oct 10, 2025
ba71fbd
WMS 11919: added Oracle MCP lab
klazarz Oct 10, 2025
b280407
WMS 11919: finetuned Oracle MCP lab
klazarz Oct 10, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@
"filename": "../../build/build.md"
},
{
"title": "Lab 5: Interact with Oracle Database 23ai through an MCP Server",
"title": "Lab 5: Build Agentic AI with Oracle MCP",
"description": "This is a step-by-step guide showcasing how the demo instance is navigated",
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/mcp/mcp.md"
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/oraclemcp/oraclemcp.md"
},
{
"title": "Need Help?",
Expand Down
4 changes: 2 additions & 2 deletions dev-ai-app-dev-finance/workshops/sandbox/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@
"filename": "../../build/build.md"
},
{
"title": "Lab 5: Interact with Oracle Database 23ai through an MCP Server",
"title": "Lab 5: Build Agentic AI with Oracle MCP",
"description": "This is a step-by-step guide showcasing how the demo instance is navigated",
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/mcp/mcp.md"
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/oraclemcp/oraclemcp.md"
},
{
"title": "Need Help?",
Expand Down
4 changes: 2 additions & 2 deletions dev-ai-app-dev-gaming/workshops/sandbox/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@
"filename": "../../build/build.md"
},
{
"title": "Lab 5: Interact with Oracle Database 23ai through an MCP Server",
"title": "Lab 5: Build Agentic AI with Oracle MCP",
"description": "This is a step-by-step guide showcasing how the demo instance is navigated",
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/mcp/mcp.md"
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/oraclemcp/oraclemcp.md"
},
{
"title": "Need Help?",
Expand Down
4 changes: 2 additions & 2 deletions dev-ai-app-dev-healthcare/workshops/sandbox/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@
"filename": "../../build/build.md"
},
{
"title": "Lab 5: Interact with Oracle Database 23ai through an MCP Server",
"title": "Lab 5: Build Agentic AI with Oracle MCP",
"description": "This is a step-by-step guide showcasing how the demo instance is navigated",
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/mcp/mcp.md"
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/oraclemcp/oraclemcp.md"
},
{
"title": "Need Help?",
Expand Down
4 changes: 2 additions & 2 deletions dev-ai-app-dev-hightech/workshops/sandbox/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@
"filename": "../../build/build.md"
},
{
"title": "Lab 5: Interact with Oracle Database 23ai through an MCP Server",
"title": "Lab 5: Build Agentic AI with Oracle MCP",
"description": "This is a step-by-step guide showcasing how the demo instance is navigated",
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/mcp/mcp.md"
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/oraclemcp/oraclemcp.md"
},
{
"title": "Need Help?",
Expand Down
4 changes: 2 additions & 2 deletions dev-ai-app-dev-life_sciences/workshops/sandbox/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@
"filename": "../../build/build.md"
},
{
"title": "Lab 5: Interact with Oracle Database 23ai through an MCP Server",
"title": "Lab 5: Build Agentic AI with Oracle MCP",
"description": "This is a step-by-step guide showcasing how the demo instance is navigated",
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/mcp/mcp.md"
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/oraclemcp/oraclemcp.md"
},
{
"title": "Need Help?",
Expand Down
4 changes: 2 additions & 2 deletions dev-ai-app-dev-manufacturing/workshops/sandbox/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@
"filename": "../../build/build.md"
},
{
"title": "Lab 5: Interact with Oracle Database 23ai through an MCP Server",
"title": "Lab 5: Build Agentic AI with Oracle MCP",
"description": "This is a step-by-step guide showcasing how the demo instance is navigated",
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/mcp/mcp.md"
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/oraclemcp/oraclemcp.md"
},
{
"title": "Need Help?",
Expand Down
4 changes: 4 additions & 0 deletions dev-ai-app-dev-retail/oraclemcp/images/mcp.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
62 changes: 47 additions & 15 deletions dev-ai-app-dev-retail/oraclemcp/oraclemcp.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,37 @@

## Introduction

You’re a developer at SeerHolding, supporting multiple SeerGroup divisions such SeerEquities, SeerRetail, SeerEnergy, SeerHealth, and many more.
Each business unit wants smarter, AI-driven apps that interact directly with Oracle Database 23ai.
You’re a developer at SeerHolding, supporting multiple SeerGroup divisions such as SeerEquities, SeerRetail, SeerEnergy, and SeerHealth. Each business unit wants AI-driven apps that interact directly with Oracle Database 23ai to query data and trigger workflows.

Your job: build a common agentic AI foundation that lets teams query data, trigger workflows, and build their own copilots without rewriting backend logic.
Your job: Build a common agentic AI foundation so teams can query data, trigger workflows, and build copilotswithout changing existing back-end logic.

In this lab, you’ll connect to Oracle MCP, run it through LangChain, and interact with it via a Flask web console.
This lab connects Oracle MCP to LangChain and exposes it through a Flask web console. It also exposes SQL operations and analytics as AI-discoverable tools—the building blocks for SeerHolding’s enterprise agentic systems. Division-ready examples reference SeerHolding sample schemas so you can run prompts relevant to your domain.

You’ll see how developers can expose SQL operations and analytics as AI-discoverable tools—the building blocks for enterprise agentic systems at SeerHolding.
### What is Oracle MCP (Model Context Protocol)?

Estimated Time: 60 minutes
Oracle MCP is a lightweight protocol and tool server that exposes preapproved database operations as **AI-discoverable tools**. In this lab, SQLcl runs with `-mcp` to register those tools so agents (via LangChain and Cohere Command A hosted on OCI GenAI Service) can discover, call, and trace them with guardrails.


![mcp](./images/mcp.svg)

**What business challenges it helps address**

- **Slow delivery across divisions**: Publish a shared, vetted tool catalog once; reuse it in SeerEquities, SeerRetail, SeerEnergy, and beyond.

- **Shadow SQL & ticket backlogs**: Shift from ad-hoc queries to self-serve tools that encapsulate approved operations.

- **Compliance and auditability**: Centralized logging and traceability (e.g., tool name, inputs, user, timestamp) support audits and incident reviews.

- **Risk control**: Tools execute with least-privilege access, reducing exposure from free-form SQL against production data.

- **Inconsistent integrations**: A single protocol for tool discovery and invocation cuts custom glue code and drift between teams.

- **Faster prototyping**: Copilots can be assembled quickly by composing existing tools rather than rewriting back-end logic.

>Note: MCP is not a model; it’s the contract between your agents and trusted operations. Models generate intent; MCP tools execute it—safely and consistently.


Estimated Time: 45-60 minutes

### Objectives

Expand All @@ -23,6 +44,14 @@ Estimated Time: 60 minutes

- Observe secure logging and traceability through MCP.

### Who should use this

- **Data/platform engineers**: publish vetted SQL operations as MCP tools for all divisions.

- **Dev teams**: assemble copilots without touching back-end logic; focus on prompts and UI.

- **Risk/compliance partners**: review MCP logs and tool catalogs for least-privilege and audit readiness.

### Prerequisites

- Completed Lab 2: Jupyter Environment Setup
Expand All @@ -31,7 +60,7 @@ Estimated Time: 60 minutes

## Task 1: Create a SQLcl connection for MCP

Start by creating a saved connection that Oracle MCP will reuse for all tool calls.
Create a saved connection that Oracle MCP reuses for all tool calls.

1. Open a new terminal session. Click the **blue +** in the top left corner and select **Terminal**.

Expand Down Expand Up @@ -59,11 +88,11 @@ Start by creating a saved connection that Oracle MCP will reuse for all tool cal
conn -save jupmcp -replace -savepwd ${USERNAME}/${DBPASSWORD}@"${DBCONNECTION}"
```

This creates a persistent, password-protected connection named jupmcp. Your MCP agent will discover and use it automatically in later steps.
This creates a persistent, password-protected connection named jupmcp. The MCP agent can discover and use it in later steps if SQLcl runs with -mcp and the saved connection is on the active client path.

## Task 2: Use LangChain as the Oracle MCP Runner

Next, you’ll launch LangChain as the client that connects to Oracle MCP, discovers tools, and executes your first agentic query.
Launch LangChain as the client to connect to Oracle MCP, discover tools, and run your first agentic query.

1. Run:

Expand Down Expand Up @@ -91,10 +120,7 @@ Next, you’ll launch LangChain as the client that connects to Oracle MCP, disco

## Task 3 (Optional): Use LangChain as the Oracle MCP Runner with a Reasoning Agent

In this optional task, you’ll explore how LangChain can operate with a reasoning agent — a more advanced version of the MCP client that plans, explains, and justifies each step before acting.

The reasoning agent takes longer to run, but it gives you insight into why each tool was chosen and how the decision flow unfolds inside the model.
This is especially useful for developers who want to debug, audit, or optimize multi-tool workflows in production.
Run a reasoning agent—a more advanced MCP client that plans, explains, and justifies each step before acting. The reasoning agent typically runs longer and can show why it chose each tool and how the decision flow unfolds, depending on model settings and tracing configuration. This is useful for debugging, auditing, and optimizing multi-tool workflows in production.

Why Does It Matter?

Expand Down Expand Up @@ -135,7 +161,7 @@ Why Does It Matter?

💡**Developer Insight**
For SeerHolding’s development teams, reasoning agents add more than verbosity. They provide explainability.
When you deploy AI copilots for any of SeerHolding's divisions, you can trace each database interaction step by step.
When you deploy AI copilots with Oracle MCP for any of SeerHolding's divisions, you can trace each database interaction step by step.
That visibility helps you debug complex chains, document behavior for audits, and build trust in production AI systems.


Expand Down Expand Up @@ -268,7 +294,7 @@ Logging isn’t an afterthought; it’s how agentic systems at SeerHolding stay

## Conclusion

You’ve built SeerHolding’s first agentic AI development framework.
You built SeerHolding’s first agentic AI development framework.

You learned how to:

Expand All @@ -295,6 +321,12 @@ You learned how to:

You’ve laid the foundation for SeerHolding’s agentic AI platform: turning Oracle Database 23ai into the intelligent core of SeerGroup’s future applications.

## Learn more

- [User's guide SQLcl MCP Server](https://docs.oracle.com/en/database/oracle/sql-developer-command-line/25.2/sqcug/using-oracle-sqlcl-mcp-server.html)
- [Jeff Smith's Getting Started Guide](https://docs.oracle.com/en/database/oracle/sql-developer-command-line/25.2/sqcug/using-oracle-sqlcl-mcp-server.html)
-

## Acknowledgements
* **Authors** - Kevin Lazarz
* **Last Updated By/Date** - Kevin Lazarz, October 2025
4 changes: 2 additions & 2 deletions dev-ai-app-dev-retail/workshops/sandbox/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@
"filename": "../../build/build.md"
},
{
"title": "Lab 5: Interact with Oracle Database 23ai through an MCP Server",
"title": "Lab 5: Build Agentic AI with Oracle MCP",
"description": "This is a step-by-step guide showcasing how the demo instance is navigated",
"filename": "../../mcp/mcp.md"
"filename": "../../oraclemcp/oraclemcp.md"
},
{
"title": "Need Help?",
Expand Down
4 changes: 2 additions & 2 deletions dev-ai-app-dev-state/workshops/sandbox/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@
"filename": "../../build/build.md"
},
{
"title": "Lab 5: Interact with Oracle Database 23ai through an MCP Server",
"title": "Lab 5: Build Agentic AI with Oracle MCP",
"description": "This is a step-by-step guide showcasing how the demo instance is navigated",
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/mcp/mcp.md"
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/oraclemcp/oraclemcp.md"
},
{
"title": "Need Help?",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@
"filename": "../../build/build.md"
},
{
"title": "Lab 5: Interact with Oracle Database 23ai through an MCP Server",
"title": "Lab 5: Build Agentic AI with Oracle MCP",
"description": "This is a step-by-step guide showcasing how the demo instance is navigated",
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/mcp/mcp.md"
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/oraclemcp/oraclemcp.md"
},
{
"title": "Need Help?",
Expand Down
4 changes: 2 additions & 2 deletions dev-ai-app-dev-transportation/workshops/sandbox/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@
"filename": "../../build/build.md"
},
{
"title": "Lab 5: Interact with Oracle Database 23ai through an MCP Server",
"title": "Lab 5: Build Agentic AI with Oracle MCP",
"description": "This is a step-by-step guide showcasing how the demo instance is navigated",
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/mcp/mcp.md"
"filename": "https://oracle-livelabs.github.io/developer/dev-ai-app-dev-retail/oraclemcp/oraclemcp.md"
},
{
"title": "Need Help?",
Expand Down