How to integrate Borneo MCP with LlamaIndex

This guide walks you through connecting Borneo to LlamaIndex using the Composio tool router. By the end, you'll have a working Borneo agent that can start a new cloud resource scan for sensitive data, archive a discovered recipient for compliance reasons, create a new dashboard user with admin access through natural language commands. This guide will help you understand how to give your LlamaIndex agent real control over a Borneo account through Composio's Borneo MCP server. Before we dive in, let's take a quick look at the key ideas and tools involved.

Borneo logoBorneo
Api KeyOauth2

Borneo is a data security and privacy platform for sensitive data discovery and remediation. It helps organizations mitigate risk by identifying and protecting sensitive information across their infrastructure.

153 Tools

Introduction

This guide walks you through connecting Borneo to LlamaIndex using the Composio tool router. By the end, you'll have a working Borneo agent that can start a new cloud resource scan for sensitive data, archive a discovered recipient for compliance reasons, create a new dashboard user with admin access through natural language commands.

This guide will help you understand how to give your LlamaIndex agent real control over a Borneo account through Composio's Borneo MCP server.

Before we dive in, let's take a quick look at the key ideas and tools involved.

Also integrate Borneo with

TL;DR

Here's what you'll learn:
  • Set your OpenAI and Composio API keys
  • Install LlamaIndex and Composio packages
  • Create a Composio Tool Router session for Borneo
  • Connect LlamaIndex to the Borneo MCP server
  • Build a Borneo-powered agent using LlamaIndex
  • Interact with Borneo through natural language

What is LlamaIndex?

LlamaIndex is a data framework for building LLM applications. It provides tools for connecting LLMs to external data sources and services through agents and tools.

Key features include:

  • ReAct Agent: Reasoning and acting pattern for tool-using agents
  • MCP Tools: Native support for Model Context Protocol
  • Context Management: Maintain conversation context across interactions
  • Async Support: Built for async/await patterns

What is the Borneo MCP server, and what's possible with it?

The Borneo MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your Borneo account. It provides structured and secure access to your organization's data security and privacy operations, so your agent can perform actions like scheduling cloud resource scans, managing data breaches, onboarding users, and automating privacy compliance workflows on your behalf.

  • Automated sensitive data discovery and scans: Instruct your agent to create and schedule scans across cloud resources for compliance, security audits, and regular data inspection.
  • Data breach evaluation and remediation: Have your agent delete outdated or irrelevant data breach records to maintain accurate compliance documentation and ensure up-to-date risk management.
  • User and employee onboarding automation: Let your agent create dashboard users with specific roles or onboard new employees, streamlining access management and HR integration tasks.
  • Department and domain management: Direct your agent to add new departments with multilingual support or set up domains for automated system integrations and workflow triggers.
  • Privacy assessment and compliance operations: Empower your agent to initiate or update Data Protection Impact Assessments (DPIAs) for processing activities, supporting structured risk evaluation and regulatory compliance.

What is the Composio tool router, and how does it fit here?

What is Composio SDK?

Composio's Composio SDK helps agents find the right tools for a task at runtime. You can plug in multiple toolkits (like Gmail, HubSpot, and GitHub), and the agent will identify the relevant app and action to complete multi-step workflows. This can reduce token usage and improve the reliability of tool calls. Read more here: Getting started with Composio SDK

The tool router generates a secure MCP URL that your agents can access to perform actions.

How the Composio SDK works

The Composio SDK follows a three-phase workflow:

  1. Discovery: Searches for tools matching your task and returns relevant toolkits with their details.
  2. Authentication: Checks for active connections. If missing, creates an auth config and returns a connection URL via Auth Link.
  3. Execution: Executes the action using the authenticated connection.

Step-by-step Guide

Step by step10 STEPS
1

Prerequisites

Before you begin, make sure you have:
  • Python 3.8/Node 16 or higher installed
  • A Composio account with the API key
  • An OpenAI API key
  • A Borneo account and project
  • Basic familiarity with async Python/Typescript
2

Getting API Keys for OpenAI, Composio, and Borneo

OpenAI API key (OPENAI_API_KEY)
  • Go to the OpenAI dashboard
  • Create an API key if you don't have one
  • Assign it to OPENAI_API_KEY in .env
Composio API key and user ID
  • Log into the Composio dashboard
  • Copy your API key from Settings
    • Use this as COMPOSIO_API_KEY
  • Pick a stable user identifier (email or ID)
    • Use this as COMPOSIO_USER_ID
3

Installing dependencies

npm install @composio/llamaindex @llamaindex/openai @llamaindex/tools @llamaindex/workflow dotenv

Create a new Typescript project and install the necessary dependencies:

  • @composio/llamaindex: Composio's LlamaIndex integration
  • @llamaindex/openai: OpenAI LLM integration
  • @llamaindex/tools: MCP client for LlamaIndex
  • @llamaindex/workflow: Workflow framework for LlamaIndex
  • dotenv: Environment variable management
4

Set environment variables

bash
OPENAI_API_KEY=your-openai-api-key
COMPOSIO_API_KEY=your-composio-api-key
COMPOSIO_USER_ID=your-user-id

Create a .env file in your project root:

These credentials will be used to:

  • Authenticate with OpenAI's GPT-5 model
  • Connect to Composio's Tool Router
  • Identify your Composio user session for Borneo access
5

Import modules

import "dotenv/config";
import readline from "node:readline/promises";
import { stdin as input, stdout as output } from "node:process";

import { Composio } from "@composio/core";

import { mcp } from "@llamaindex/tools";
import { agent as createAgent } from "@llamaindex/workflow";
import { openai } from "@llamaindex/openai";

dotenv.config();

Create a new file called borneo_llamaindex_agent.ts and import the required modules:

Key imports:

  • dotenv.config loads .env at runtime
  • readline gives us a simple CLI chat loop
  • Composio is the main Composio SDK client
  • mcp connects to an MCP endpoint
  • createAgent builds a LlamaIndex agent
  • openai configures the LLM backend
6

Load environment variables and initialize Composio

const OPENAI_API_KEY = process.env.OPENAI_API_KEY;
const COMPOSIO_API_KEY = process.env.COMPOSIO_API_KEY;
const COMPOSIO_USER_ID = process.env.COMPOSIO_USER_ID;

if (!OPENAI_API_KEY) throw new Error("OPENAI_API_KEY is not set");
if (!COMPOSIO_API_KEY) throw new Error("COMPOSIO_API_KEY is not set");
if (!COMPOSIO_USER_ID) throw new Error("COMPOSIO_USER_ID is not set");

What's happening:

This ensures missing credentials cause early, clear errors before the agent attempts to initialise.

7

Create a Tool Router session and build the agent function

async function buildAgent() {

  console.log(`Initializing Composio client...${COMPOSIO_USER_ID!}...`);
  console.log(`COMPOSIO_USER_ID: ${COMPOSIO_USER_ID!}...`);

  const composio = new Composio({
    apiKey: COMPOSIO_API_KEY,
    provider: new LlamaindexProvider(),
  });

  const session = await composio.create(
    COMPOSIO_USER_ID!,
    {
      toolkits: ["borneo"],
    },
  );

  const mcpUrl = session.mcp.url;
  console.log(`Composio Tool Router MCP URL: ${mcpUrl}`);

  const server = mcp({
    url: mcpUrl,
    clientName: "composio_tool_router_with_llamaindex",
    requestInit: {
      headers: {
        "x-api-key": COMPOSIO_API_KEY!,
      },
    },
    // verbose: true,
  });

  const tools = await server.tools();

  const llm = openai({ apiKey: OPENAI_API_KEY, model: "gpt-5" });

  const agent = createAgent({
    name: "composio_tool_router_with_llamaindex",
        description : "An agent that uses Composio Tool Router MCP tools to perform actions.",
    systemPrompt:
      "You are a helpful assistant connected to Composio Tool Router."+
"Use the available tools to answer user queries and perform Borneo actions." ,
    llm,
    tools,
  });

  return agent;
}

What's happening here:

  • We create a Composio client using your API key and configure it with the LlamaIndex provider
  • We then create a tool router MCP session for your user, specifying the toolkits we want to use (in this case, borneo)
  • The session returns an MCP HTTP endpoint URL that acts as a gateway to all your configured tools
  • LlamaIndex will connect to this endpoint to dynamically discover and use the available Borneo tools.
  • The MCP tools are mapped to LlamaIndex-compatible tools and plug them into the Agent.
8

Create an interactive chat loop

async function chatLoop(agent: ReturnType<typeof createAgent>) {
  const rl = readline.createInterface({ input, output });

  console.log("Type 'quit' or 'exit' to stop.");

  while (true) {
    let userInput: string;

    try {
      userInput = (await rl.question("\nYou: ")).trim();
    } catch {
      console.log("\nAgent: Bye!");
      break;
    }

    if (!userInput) {
      continue;
    }

    const lower = userInput.toLowerCase();
    if (lower === "quit" || lower === "exit") {
      console.log("Agent: Bye!");
      break;
    }

    try {
      process.stdout.write("Agent: ");

      const stream = agent.runStream(userInput);
      let finalResult: any = null;

      for await (const event of stream) {
        // The event.data contains the streamed content
        const data: any = event.data;

        // Check for streaming delta content
        if (data?.delta) {
          process.stdout.write(data.delta);
        }

        // Store final result for fallback
        if (data?.result || data?.message) {
          finalResult = data;
        }
      }

      // If no streaming happened, show the final result
      if (finalResult) {
        const answer =
          finalResult.result ??
          finalResult.message?.content ??
          finalResult.message ??
          "";
        if (answer && typeof answer === "string" && !answer.includes("[object")) {
          process.stdout.write(answer);
        }
      }

      console.log(); // New line after streaming completes
    } catch (err: any) {
      console.error("\nAgent error:", err?.message ?? err);
    }
  }

  rl.close();
}

What's happening:

  • We're creating a direct terminal interface to chat with Borneo
  • The LLM's responses are streamed to the CLI for faster interaction.
  • The agent uses context to maintain conversation history
  • The agent processes the request, selects appropriate Borneo tools, and returns a result
  • We extract the answer from the result data structure and display it to the user
  • You can type 'quit' or 'exit' to stop the chat loop gracefully
  • Agent responses and any errors are streamed in a clear, readable format
9

Define the main entry point

async function main() {
  try {
    const agent = await buildAgent();
    await chatLoop(agent);
  } catch (err) {
    console.error("Failed to start agent:", err);
    process.exit(1);
  }
}

main();

What's happening here:

  • We're orchestrating the entire application flow
  • The agent gets built with proper error handling
  • Then we kick off the interactive chat loop so you can start talking to Borneo
10

Run the agent

npx ts-node llamaindex-agent.ts

When prompted, authenticate and authorise your agent with Borneo, then start asking questions.

Complete Code

Here's the complete code to get you started with Borneo and LlamaIndex:

import "dotenv/config";
import readline from "node:readline/promises";
import { stdin as input, stdout as output } from "node:process";

import { Composio } from "@composio/core";
import { LlamaindexProvider } from "@composio/llamaindex";

import { mcp } from "@llamaindex/tools";
import { agent as createAgent } from "@llamaindex/workflow";
import { openai } from "@llamaindex/openai";

dotenv.config();

const OPENAI_API_KEY = process.env.OPENAI_API_KEY;
const COMPOSIO_API_KEY = process.env.COMPOSIO_API_KEY;
const COMPOSIO_USER_ID = process.env.COMPOSIO_USER_ID;

if (!OPENAI_API_KEY) {
    throw new Error("OPENAI_API_KEY is not set in the environment");
  }
if (!COMPOSIO_API_KEY) {
    throw new Error("COMPOSIO_API_KEY is not set in the environment");
  }
if (!COMPOSIO_USER_ID) {
    throw new Error("COMPOSIO_USER_ID is not set in the environment");
  }

async function buildAgent() {

  console.log(`Initializing Composio client...${COMPOSIO_USER_ID!}...`);
  console.log(`COMPOSIO_USER_ID: ${COMPOSIO_USER_ID!}...`);

  const composio = new Composio({
    apiKey: COMPOSIO_API_KEY,
    provider: new LlamaindexProvider(),
  });

  const session = await composio.create(
    COMPOSIO_USER_ID!,
    {
      toolkits: ["borneo"],
    },
  );

  const mcpUrl = session.mcp.url;
  console.log(`Composio Tool Router MCP URL: ${mcpUrl}`);

  const server = mcp({
    url: mcpUrl,
    clientName: "composio_tool_router_with_llamaindex",
    requestInit: {
      headers: {
        "x-api-key": COMPOSIO_API_KEY!,
      },
    },
    // verbose: true,
  });

  const tools = await server.tools();

  const llm = openai({ apiKey: OPENAI_API_KEY, model: "gpt-5" });

  const agent = createAgent({
    name: "composio_tool_router_with_llamaindex",
    description:
      "An agent that uses Composio Tool Router MCP tools to perform actions.",
    systemPrompt:
      "You are a helpful assistant connected to Composio Tool Router."+
"Use the available tools to answer user queries and perform Borneo actions." ,
    llm,
    tools,
  });

  return agent;
}

async function chatLoop(agent: ReturnType<typeof createAgent>) {
  const rl = readline.createInterface({ input, output });

  console.log("Type 'quit' or 'exit' to stop.");

  while (true) {
    let userInput: string;

    try {
      userInput = (await rl.question("\nYou: ")).trim();
    } catch {
      console.log("\nAgent: Bye!");
      break;
    }

    if (!userInput) {
      continue;
    }

    const lower = userInput.toLowerCase();
    if (lower === "quit" || lower === "exit") {
      console.log("Agent: Bye!");
      break;
    }

    try {
      process.stdout.write("Agent: ");

      const stream = agent.runStream(userInput);
      let finalResult: any = null;

      for await (const event of stream) {
        // The event.data contains the streamed content
        const data: any = event.data;

        // Check for streaming delta content
        if (data?.delta) {
          process.stdout.write(data.delta);
        }

        // Store final result for fallback
        if (data?.result || data?.message) {
          finalResult = data;
        }
      }

      // If no streaming happened, show the final result
      if (finalResult) {
        const answer =
          finalResult.result ??
          finalResult.message?.content ??
          finalResult.message ??
          "";
        if (answer && typeof answer === "string" && !answer.includes("[object")) {
          process.stdout.write(answer);
        }
      }

      console.log(); // New line after streaming completes
    } catch (err: any) {
      console.error("\nAgent error:", err?.message ?? err);
    }
  }

  rl.close();
}

async function main() {
  try {
    const agent = await buildAgent();
    await chatLoop(agent);
  } catch (err: any) {
    console.error("Failed to start agent:", err?.message ?? err);
    process.exit(1);
  }
}

main();

Conclusion

You've successfully connected Borneo to LlamaIndex through Composio's Tool Router MCP layer. Key takeaways:
  • Tool Router dynamically exposes Borneo tools through an MCP endpoint
  • LlamaIndex's ReActAgent handles reasoning and orchestration; Composio handles integrations
  • The agent becomes more capable without increasing prompt size
  • Async Python provides clean, efficient execution of agent workflows
You can easily extend this to other toolkits like Gmail, Notion, Stripe, GitHub, and more by adding them to the toolkits parameter.
TOOLS

Supported Tools

Every Borneo action and event your agent gets out of the box.

Access scan iteration by id

Retrieves detailed information about a specific scan iteration in the Borneo integration platform.

Add discovered recipients

Adds multiple discovered recipients to the system as confirmed recipients.

Archive discovered recipient

Archives a specific discovered recipient in the Borneo platform.

Create and schedule cloud resource scan

The createScan endpoint initiates a new scan operation in the Borneo integration platform, allowing users to configure and schedule data scans across various cloud resources.

Create dashboard user

Creates a new dashboard user in the Borneo integration platform with specified roles, organizational access, and authentication settings.

Create department with translations

Creates a new department in the Borneo integration platform.

Create domain with polling frequency

Creates a new domain within the Borneo integration platform, allowing for automatic polling and management of connected systems or applications.

Create dpia for processing activity

Creates a new Data Protection Impact Assessment (DPIA) for a specific processing activity in the Borneo application.

Create employee with json payload

Creates a new employee record in the Borneo integration platform.

Create headquarter entry

Creates a new headquarters entry in the Borneo integration platform.

Create legal document entry

Creates or uploads a new legal document in the Borneo integration platform with specified metadata.

Create new asset

Creates a new asset in the Borneo integration platform.

Create new infotype category

Creates a new infotype category in the Borneo integration platform, allowing users to organize and group related sensitive data types.

Create processing activity

Creates a new processing activity in the Borneo integration platform.

Create processing activity threshold

Creates a new threshold for a specific data processing activity in the context of LOPDP (Law on Personal Data Protection) compliance.

Create recipient with details

Creates a new recipient in the Borneo integration platform.

Create threshold for processing activity

Creates a new threshold for a specific data processing activity in the Borneo integration platform.

Delete asset by id

The DeleteAsset endpoint removes a specific asset from the Borneo integration platform.

Delete category by label

Deletes a specific category from the Borneo integration platform using its unique label.

Delete dashboard report by id

Deletes a specific dashboard report from the Borneo integration platform.

Delete data breach by id

Deletes a specific data breach evaluation record from the Borneo system.

Delete department by id

Deletes a specific department from the Borneo platform using its unique identifier.

Delete domain by id

Deletes a specific domain from the Borneo integration platform.

Delete dpia by id

Deletes a specific Data Protection Impact Assessment (DPIA) from the Borneo system.

Delete employee by id

Deletes an employee record from the Borneo system using the specified employee ID.

Delete headquarters by id

Deletes a specific headquarters record from the Borneo system.

Delete legal document by id

Deletes a specific legal document from the Borneo platform using its unique identifier.

Delete lopdp threshold by id

This endpoint deletes a specific LopdP (Local Public Data Protection) threshold from the Borneo integration platform.

Delete processing activity by id

Deletes a specific processing activity from the Borneo integration platform.

Delete recipient by id

Deletes a specific recipient from the Borneo integration platform.

Delete tag from resource

The DeleteTags endpoint removes specified tags from resources in the Borneo integration platform.

Delete threshold by id

Deletes a specific threshold from the Borneo integration platform.

Disable dashboard user by username

Disables a specified user account in the Borneo dashboard, preventing further access to the system.

Download dashboard report

The DownloadDashboardReport endpoint allows users to download specific types of dashboard reports from the Borneo integration platform.

Download dashboard report edition

Downloads a specific dashboard report edition from the Borneo integration platform.

Enable dashboard user

Enables dashboard access for a specified user in the Borneo integration platform.

Evaluate data breach impact

This endpoint allows users to evaluate and document details of a data breach incident.

Export filtered leaf resources

The listLeafResources endpoint exports a comprehensive list of leaf resources in the Borneo integration platform, allowing for extensive filtering, sorting, and detailed information retrieval.

Export insight page using scanid

The ExportPageInsight endpoint allows users to export filtered inspection results from a specific scan in the Borneo integration platform.

Export inventory resource list

Exports a filtered and sorted list of inventory resources from the Borneo integration platform.

Export processing activities list

This endpoint exports a filtered list of processing activities in specified formats and languages.

Export recipients list with filter

The ExportRecipientsList endpoint generates and exports a list of recipients based on specified criteria.

Fetch dashboard report by id

Retrieves a specific dashboard report from the Borneo integration platform.

Fetch data breach evaluation

Retrieves detailed information about a specific evaluated data breach incident.

Filter and list inspection results

The InsightListPost endpoint retrieves a list of inspection results from the Borneo integration platform.

Filter and sort assets list

The ListAssets endpoint retrieves a customized list of assets from Borneo.

Filter employee list

The FilterEmployeeList endpoint allows you to retrieve a filtered list of employees based on specified criteria.

Filter recipients list

The FilterRecipientsList endpoint allows users to retrieve a filtered list of recipients based on specified criteria.

Get category by label

Retrieves detailed information about a specific category within Borneo's data classification system using the category's unique label.

Get cloud account by id

Retrieves detailed information about a specific cloud account within the Borneo integration platform.

Get dashboard report edition by id

Retrieves a specific edition of a dashboard report from the Borneo integration platform.

Get department filter list

The FilterDepartmentList endpoint allows users to retrieve a filtered list of departments from the Borneo integration platform.

Get domain by id

Retrieves detailed information about a specific domain within the Borneo integration platform.

Get headquarters by id

Retrieves detailed information about a specific headquarters registered in the Borneo system.

Get insight by type and id

Retrieves a specific insight from the Borneo platform based on its type and unique identifier.

Get resource inventory by id

Retrieves detailed inventory information for a specific resource identified by its unique resourceId.

Get scan by scanid

Retrieves detailed information about a specific data scan performed by Borneo's data risk remediation platform.

Get threshold by id

Retrieves detailed information about a specific threshold setting in the Borneo integration platform.

Get user profile by id

Retrieves the user profile information for a specific user in the Borneo integration platform.

List dashboard report editions

Lists the editions of a specific dashboard report in the Borneo integration platform.

List dashboard reports with filters

Retrieves a list of dashboard reports from the Borneo integration platform, allowing for filtered, paginated, and sorted results.

List dashboard users with filters

Lists and filters dashboard users in the Borneo integration platform based on specified criteria.

List data breaches with filters

The ListDataBreaches endpoint retrieves a list of data breaches based on specified filter conditions, allowing for detailed searching and sorting of breach information.

List data breach filters

Retrieves a list of available filter options for data breaches in the Borneo platform.

List departments with sort and pagination

The ListDepartments endpoint retrieves a list of departments within the Borneo integration platform.

List discovered document

Retrieves a list of discovered documents in the Borneo integration platform, allowing for flexible querying, filtering, and sorting of results.

List discovered infotypes

The ListDiscoveredInfoTypes endpoint retrieves discovered info types from Borneo, supporting flexible querying, filtering, sorting, and pagination.

List discovered recipients

Lists and retrieves discovered recipients in the Borneo integration platform.

List domains with pagination and sorting

Retrieves a list of domains in the Borneo integration platform with support for pagination and custom sorting.

List employees with filters

Retrieves a list of employees based on specified filtering and sorting criteria.

List error details from filtered scan iterations

The ErrorList endpoint retrieves errors related to scan iterations in Borneo.

List events with filters

Lists and retrieves events based on specified criteria, with options for filtering, sorting, and pagination.

List filtered sorted categories

The ListCategories endpoint allows users to retrieve a list of categories from the Borneo integration platform.

List filter options for recipients

Lists the available filters for recipients in the Borneo integration platform based on the specified filter type.

List headquarters with sorting

The headquarters_list endpoint retrieves a paginated list of headquarters records from Borneo.

List insight filters

The list-filters endpoint retrieves a list of available filters for data insights, specifically focused on file extension filters.

List inventory resources with filters

Retrieves a comprehensive list of resources from Borneo's inventory.

List issues with filters

The ListIssues endpoint allows users to retrieve a filtered and sorted list of issues from the Borneo integration platform.

List leaf resources with filters

The listLeafResources endpoint retrieves and filters leaf resources from Borneo's catalog.

List legal documents with pagination

Retrieves a paginated and sortable list of legal documents based on specified filter criteria.

List or filter recipients

The ListRecipients endpoint retrieves a paginated and filtered list of recipients from the Borneo application.

List processing activities

ListProcessingActivities retrieves a list of processing activities with extensive filtering, sorting, and pagination.

List processing activities filters

This endpoint retrieves a list of available filters for processing activities in the PoPS (Processing of Personal Data) Dashboard.

List scan execution results

The ListScanExecutions endpoint retrieves and filters inspection results from scan executions in the Borneo integration platform.

List scan iterations with filter

The ListScanIterations endpoint allows users to retrieve a paginated list of scan iterations with customizable filtering, sorting, and field selection options.

List scans with filters

The list_scans endpoint retrieves a filtered and sorted list of scans from the Borneo integration platform.

List toms with filter and pagination options

The ListToms endpoint retrieves a filtered, sorted, and paginated list of toms from the Borneo integration platform.

List user profile with filters and sorting

The ListUserProfiles endpoint retrieves a paginated and filterable list of user profiles from Borneo.

Mark scan false positives by id

Marks specified reports as false positives within a given scan in the Borneo platform.

Pause scan by id

The PauseScan endpoint allows users to temporarily halt an ongoing scan process in the Borneo integration platform.

Poll domain by id

This endpoint allows you to initiate a poll operation or submit data for a specific domain within the Borneo integration platform.

Post accounts with filter and sort options

The ListAccounts endpoint retrieves a filtered and sorted list of accounts from the Borneo platform.

Post classification stats

Retrieves statistical information about resource classifications based on the specified filter criteria.

Post connector with filtering options

Retrieves a filtered and sorted list of connectors from the Borneo integration platform.

Post current dashboard user

Retrieves or updates information about the currently authenticated user in the Borneo dashboard.

Post dashboard report

Creates or schedules a dashboard report in the Borneo integration platform for privacy operations and data discovery.

Post data breach information

Creates a new data breach report in the Borneo platform.

Post discovered recipient by id

Updates or processes information for a specific discovered recipient user in the Borneo integration platform.

Post filtered access logs

The ListAccessLogs endpoint retrieves and filters access logs from the Borneo integration platform.

Post log audit records with filter criteria

The RetrieveAuditLogs endpoint fetches filtered audit logs from Borneo.

Post resource lineage filter

Retrieves the lineage information for a specified resource within the Borneo integration platform.

Post resource stats with deleted resources

Retrieves statistics about resources within the Borneo integration platform.

Post scan resource status

Retrieves and filters the resource status for a specific scan iteration in the Borneo integration platform.

Post support chat query

The POST /support/chat endpoint handles chat support interactions in Borneo.

Put tom status and note

Updates a specific Technical Operating Model (TOM) in the Borneo integration platform.

Remove dashboard user by username

Removes a specified user from the dashboard in the Borneo integration platform.

Reset dashboard user password

Initiates a password reset process for a specified dashboard user in the Borneo platform.

Resume scan by id

The ResumeDataScan endpoint allows users to resume a previously paused or interrupted data scan operation within the Borneo integration platform.

Retrieve account details by id

Retrieves detailed information for a specific account within the Borneo integration platform.

Retrieve asset by id

Retrieves detailed information about a specific asset within the Borneo integration platform.

Retrieve connector by id

Retrieves detailed information about a specific connector in the Borneo integration platform.

Retrieve data breach by id

Retrieves detailed information about a specific data breach incident using its unique identifier.

Retrieve data resource statistics

Retrieves comprehensive statistical information about data resources across the Borneo integration platform.

Retrieve department information

Retrieves detailed information about a specific department within the Borneo integration platform.

Retrieve discovered document by id

Retrieves detailed information about a specific discovered document within the Borneo system.

Retrieve discovered infotype by id

Retrieves detailed information about a specific discovered infotype from the Borneo platform.

Retrieve discovered recipient by id

Retrieves detailed information about a specific discovered recipient using their unique identifier.

Retrieve dpia by id

Retrieves a specific Data Protection Impact Assessment (DPIA) using its unique identifier.

Retrieve employee details by id

Retrieves detailed information for a specific employee within the Borneo integration platform.

Retrieve error details by id

The GetErrorDetails endpoint retrieves detailed information about a specific error in the Borneo integration platform using its unique identifier.

Retrieve issue by id

Retrieves detailed information about a specific issue in the Borneo system.

Retrieve legal document by id

Retrieves a specific legal document from the Borneo system using its unique identifier.

Retrieve lopdp threshold by id

Retrieves detailed information about a specific LOPDP (Logical Object Data Point) threshold configuration within the Borneo integration platform.

Retrieve processing activity by id

Retrieves detailed information about a specific processing activity within the Borneo platform.

Retrieve recipient details

Retrieves detailed information about a specific recipient identified by their unique recipientId within the Borneo integration platform.

Retrieve recipient processing activities

Retrieves a paginated list of processing activities associated with a specific recipient in the Borneo integration platform.

Retrieve resource catalog by id

Retrieves detailed information about a specific resource from the Borneo catalog using its unique identifier.

Retrieve resource columns

Retrieves column information for resources in the Borneo integration platform.

Retrieve tom by id

Retrieves detailed information about a specific Tom resource using its unique identifier.

Scan legal document byid

Initiates a scanning process for a specified legal document within the Borneo integration platform.

Stop scan via scanid

Stops an ongoing scan operation in the Borneo integration platform.

Submit chat feedback

The SubmitChatFeedback endpoint allows users to provide feedback on a chat support interaction within the Borneo integration platform.

Submit detailed scan results

Retrieves detailed insights for a specific scan iteration of a particular resource in the Borneo integration platform.

Trigger dashboard report by report id

Triggers the generation or retrieval of a specific dashboard report in the Borneo integration platform.

Update asset information by id

The UpdateAsset endpoint allows you to modify the details of an existing asset in the Borneo integration platform.

Update category infotypes

Updates the infotypes associated with a specific category in the Borneo integration platform.

Update dashboard report frequency and recipients

Updates the settings of an existing dashboard report in the Borneo integration platform.

Update dashboard user details

Updates the information of an existing dashboard user in the Borneo integration platform.

Update dashboard user roles

Updates the roles and department associations for a specified user across multiple organizations in the Borneo dashboard.

Update data breach entry

The UpdateDataBreach endpoint allows users to create or update detailed information about a specific data breach incident in the Borneo integration platform.

Update department name

This endpoint updates the information of an existing department within the Borneo integration platform.

Update discovered document status

This endpoint updates the status of a specific discovered document in the Borneo integration platform.

Update discovered infotype status

Updates the status of a specific discovered infotype in the Borneo integration platform.

Update domain details

Updates the properties of an existing domain within the Borneo integration platform.

Update dpia by id

Updates an existing Data Protection Impact Assessment (DPIA) in the Borneo system.

Update employee by id

Updates the information of an existing employee in the Borneo integration platform.

Update headquarter details by id

Updates the information for an existing headquarter in the Borneo integration platform.

Update lopdp threshold by id

Updates the LOPDP (Likely Operational Privacy Data Protection) threshold settings for a specific threshold identified by the lopdpThresholdId.

Update processing activity details

This endpoint updates an existing processing activity in a data privacy management system.

Update recipient details by id

Updates the information of an existing recipient in the Borneo integration platform.

Update recipient status via id

Updates the status and automation status of a specific recipient in the Borneo integration platform.

Update threshold by id

Updates an existing threshold in the Borneo integration platform with new settings and information related to data processing and compliance.

Verify email with id and token

Completes the email verification process for a user account in the Borneo integration platform.

FAQ

Frequently asked questions

With a standalone Borneo MCP server, the agents and LLMs can only access a fixed set of Borneo tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from Borneo and many other apps based on the task at hand, all through a single MCP endpoint.

Yes, you can. LlamaIndex fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right Borneo tools.

Yes, absolutely. You can configure which Borneo scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your Borneo data and credentials are handled as safely as possible.

Start with Borneo.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Borneo tool your agent needs.Free to start.

Start building