Friday, September 11, 2026

#1173 - OIC 26.10 - MCP Gateway

Introduction

The MCP Gateway is a compelling new addition to the OIC Agentic toolkit. Released with 26.10, this gateway supports not just OIC based MCP servers, but also 3rd parties.


Please check out the excellent post from my colleague, Kishore, before continuing here. Kishore and his team have created a very compelling addition to our OIC Agentic AI Toolkit; well done, guys! 
Now that you have the intel, let's begin by exposing our 3 integrations below as Agent Tools. We also enable the Project as an MCP Server - 


MCP Gateway

Now to the MCP Gateway, let's add the MCP Server we just enabled - 
Step 1 is completed - we have included our OIC project MCP server definition in the context of MCP Gateway.

Let's look at the Security Policies we can apply.


Security Policies

With this initial release we support 2 policies - 
  • PII Detection
  • Tool filter
Let's check out PII Detection - 

There's a rich OOTB list, however, you can also add your own RegEx based pattern.

Note the 3 tabs - Detection, Enforcement and Action.

Detection is doing the actual work of detecting whether the payload contains an email address etc.  This work is done by OCI Gen AI service, so one needs to select an OCI compartment where this service is available.  


Back to the policy I chose; I can now specify how I want the policy applied - where and how.


Enforcement - this is the where. So where do I want to enforce the policy?
The options available are -

The Enforcement tab offers rich selection criteria; you choose what makes business sense to you.

Finally, the Redaction - here I define how I want to handle PII. 

Choices include - 
Again, we are offered a rich set of combinations.

I choose the following - 
At this stage, my Security Policy has been successfully configured; let's review my settings, before continuing -







Time to add the MCP Gateway


Note again, the optimal flexibility we are offered here. This is one of the hallmarks of our offering.

Activate - 

Click Run to get endpoint details -

 




Over to MCPJam - check out my intro post on MCPJam, if you're hearing about it for the first time.


Let's try out GET_CUSTOMER - 

Here's the customer row in the DB -

Back in OIC Project Observability -

the integration returns the email value and the gateway masks it.

Business Policies

I add the following policy - 

I add the customer, Cathal Brugha, to the DB -

Summa Summarum

This is a compelling addition to the OIC project toolkit. This gateway is not simply for OIC MCP servers but can be used with 3rd parties as well. It provides -

  • identity and access control
  • ability to cherry pick which tools are exposed
  • ability to apply inbound/outbound policies
  • OOTB auditing and observability
Please do take into account this is the initial release, so expect more functionality appearing in upcoming releases.

Cerevisia Aestiva

Today's beer is from Starnberg, the idyllic lakeside town, beside Munich -



On draught, this is a great summer beer; an optimal refreshing mix of malt and hops. At 4.8%, it's not the strongest, but the taste is still compelling. This is a very young brewery, founded in 2015; long may they continue! 

Sláinte is táinte.


  

























 

Tuesday, September 8, 2026

#1172 - Private Agent Framework - Workflow Components

Introduction

In this post I will go through the different components you can use in your workflows. I try to provide as much demos as possible, so you can really get a feel for what PAF workflows offer you. The post follows the flow of the component menu, so let's begin with Agents

Agents

An Agent you define and run in PAF. You give it instructions, a model and tools - it does the business for you. Check out some of my previous PAF posts for Agent examples.

An External Agent is a trusted, separately deployed agent reached over the Agent2Agent (A2A) protocol. In this case, PAF delegates the work to this agent, rather than hosting its logic.

For Fusion customers, these external agents could be hosted by Fusion AI Agent Studio -

You need to create an A2A Agent connection, in order to access such agents. This UI allows you to expose 

 

I don't have access to the Fusion IAM, which is required to get client id/secret for OAuth, so I'll use the following trivial workflow for my external agent demo -


The workflow convers the input to Gaelic - 

I publish the agent - 

Click on Integration Options -

Enable A2A

You will see 2 URLS - the discovery url and the invocation endpoint.

The former ends with /agent-card, while the latter ends with /rpc

The invocation url will be discovered from the agent card.

I now add this as an Agent Factory Agent - i.e. this can now be invoked via A2A from 3rd parties.


Clicking View raw JSON, will show the card details - 


Data Components

Current Date

As the name suggests, this provides the current-datetime for the time zone you select. 



Image Input

The image input component feeds into a VLM Agent. 

I upload the following jpeg - 

The full text - This image shows a musician performing live on stage, playing a silver flute. He has long, reddish-brown hair and a beard, and is dressed in an elaborate, colorful costume featuring a shiny, iridescent jacket in shades of purple, pink, and blue with black trim, light blue tights, and tall black leather boots. One leg is raised and bent, resting on part of the stage equipment. A microphone stand is positioned in front of him, suggesting the performance is being amplified. The background is dark, with parts of a drum kit visible, indicating a concert setting. The style and attire are reminiscent of 1970s rock performances.

grok doesn't seem to know Ian Anderson from Jethro Tull.

I now try with the following image - 

Now this is useful!

Read CSV File

Here's my cities.csv - 

Here's the workflow - 

Test in Playground

File upload

Here's the demo file I am using - 

Here's the workflow - 


I test in Playground

SQL Query

The SQL query is - Select * from orders

The agent custom instructions are -output the orders sorted by order value asc

Test in Playground


URL Crawler

Use URL Crawler to collect content from a website and pass it into the rest of a workflow as Markdown.

Here I use it to answer user questions on OIC service limits.

I set the seed urls to https://docs.oracle.com/en/cloud/paas/application-integration/oracle-integration-oci/service-limits.html


I run in Playground

URL to markdown content

The URL to Markdown component fetches one specific web page and converts its readable content into Markdown.

Use it when you already know the exact page you need—for example:

https://docs.example.com/product/setup

Then connect its Markdown output to an Agent for summarization, extraction, or Q&A.

Difference from URL Crawler:

URL to Markdown: one URL → one page’s content.
URL Crawler: one or more seed URLs → follows links and returns multiple pages/a site index.

Choose URL to Markdown for a focused page; choose URL Crawler for a documentation section or website.

Wikipedia Search

Note the use of the Text Combiner

I test in Playground

To get this to work, one needs to do the following - 

Disable memory


Summa Summarum

In this post, I have covered most of the components you can use in designing your workflow. Net, net, Private Agent Factory is a comprehensive and compelling agent framework. Do try it out!