---
title: "LlamaIndex + OmniChannels.ai: messaging tools for your agents"
description: "Connect LlamaIndex agents to the OmniChannels.ai MCP server with llama-index-tools-mcp, or build REST tools, to send WhatsApp and SMS and read delivery reports."
canonical: "https://omnichannels.ai/integrations/llamaindex/"
language: "en"
updated: "2026-10-10"
publisher: "BroadNet Technologies"
brand: "OmniChannels.ai"
---

# LlamaIndex + OmniChannels.ai: messaging tools for your agents

Canonical: https://omnichannels.ai/integrations/llamaindex/
Language: en
Publisher: OmniChannels.ai by BroadNet Technologies

**In short:** LlamaIndex agents use OmniChannels.ai through our remote MCP server. With llama-index-tools-mcp, a BasicMCPClient pointed at https://mcp.broadnet.me/mcp and wrapped in McpToolSpec turns our send, template and delivery report tools into agent tools. Our server requires an Authorization: Bearer header, so check the package's documentation for how your version sets it, or call our REST API from your own tools.

Connect via MCP · Connect via API & webhooks

## What you can do

### Delivery support agent with read tools only

Keep only the read tools so the agent answers delivery questions without being able to send.

> Try asking: "Build an agent that answers delivery questions using only read tools, and refuses any request to send a message."

### Answer from your docs, act through tools

Combine a query engine over your own policies with our messaging tools, so replies follow your rules before anything is sent.

> Try asking: "Build an agent that checks our refund policy index, drafts a WhatsApp reply in Arabic and English, and asks me before sending it to 971500000000."

### Template-aware workflow

The agent lists approved WhatsApp templates and fills variables for business-initiated messages outside the 24-hour window.

> Try asking: "Write a workflow that finds the approved appointment_reminder template and sends it to 966500000000 with tomorrow's time slot, after my approval."

### Narrow REST tools

Wrap a single REST operation in a FunctionTool when you want full control over fields, validation and logging.

> Try asking: "Write a LlamaIndex FunctionTool that sends one SMS with POST /sms/sendSms and reads BROADNET_TOKEN from the environment."

### Failure analysis

The agent reads delivery reports and groups failures by reason for your operations team.

> Try asking: "Create an agent that reads yesterday's delivery reports and summarises FAILED and REJECTED messages by reason and channel."

## How it connects

llama-index-tools-mcp provides BasicMCPClient, which connects to a remote MCP server by URL, and McpToolSpec, which turns that server's tools into a tool list for a LlamaIndex agent. Point the client at https://mcp.broadnet.me/mcp, a Streamable HTTP endpoint. Every request to our server must carry an Authorization: Bearer header; how you set it, for example through a custom HTTP client, depends on the package version, so check its documentation.

Filter the tool list so each agent has only the tools it needs, and add a confirmation step before any send. If the header option in your version does not fit, write your own FunctionTool wrappers around our REST API with a Bearer token, using the OpenAPI 3.1 spec for exact fields; single SMS is JSON, bulk and most other channel sends use multipart/form-data.

- MCP: BasicMCPClient at https://mcp.broadnet.me/mcp, wrapped in McpToolSpec
- Authorization: Bearer header required on every request
- Filter tools by name and confirm before any send
- REST alternative: FunctionTool wrappers built from the OpenAPI 3.1 spec

## Set it up

1. **Request API access:** Request test access and receive an API token. Test sends go only to your own verified numbers.
2. **Get a temporary key:** In the admin portal open Integrations, then MCP Integration, choose Get temporary key and set it as BROADNET_TOKEN. (Guide: https://omnichannels.ai/developers/mcp/)
3. **Install llama-index-tools-mcp:** Install the package and check its documentation for how your version passes custom headers to a remote server.
4. **Load the tools:** Create a BasicMCPClient for our URL with the Authorization header, wrap it in McpToolSpec and get the tool list. (Guide: https://omnichannels.ai/developers/mcp/)
5. **Restrict and gate:** Pass only the tools the agent needs to it, and require confirmation before any tool that sends.
6. **Test on your own number:** Run the agent against your verified number and check the delivery report before you widen access.

## Example workflow

Your LlamaIndex agent (Agent or workflow with tools from McpToolSpec) → OmniChannels.ai MCP server (Send, template and delivery report tools) → Customer's phone (SMS, WhatsApp or RCS message delivered) → Delivery report (Read back by the agent or pushed to your webhook)

## Questions

### Is there an official OmniChannels.ai integration for LlamaIndex?

No. LlamaIndex connects through its generic MCP tools package, using our public endpoint and your API token, or through tools you write against our REST API.

### How do I pass the API token?

Our server needs an Authorization: Bearer header on every request. The way llama-index-tools-mcp sets custom headers depends on its version, so follow its current documentation. If it does not fit your setup, call the REST API from your own tools instead.

### Can the agent read my documents or CRM through this server?

No. Our server only covers messaging, templates and delivery reports. Your documents come from your own LlamaIndex indexes, and other systems through their own tools or MCP servers.

### How do I keep the agent from sending by mistake?

Give it only the tools it needs, leave out send tools for agents that only answer questions, and confirm every send with a person. Use a temporary key and your own numbers while testing.

## Developer guides

- https://omnichannels.ai/developers/mcp/
- https://omnichannels.ai/developers/openapi/
- https://omnichannels.ai/developers/authentication/
- https://omnichannels.ai/developers/webhooks/

## Vendor documentation

- [llama-index-tools-mcp on GitHub](https://github.com/run-llama/llama_index/tree/main/llama-index-integrations/tools/llama-index-tools-mcp)
- [Model Context Protocol — introduction](https://modelcontextprotocol.io/introduction)

## Related integrations

- https://omnichannels.ai/integrations/langchain/
- https://omnichannels.ai/integrations/claude-code/
- https://omnichannels.ai/integrations/vs-code/
- https://omnichannels.ai/integrations/n8n/

LlamaIndex is a trademark of its owner. OmniChannels.ai is not affiliated with or endorsed by LlamaIndex; this page describes a connection built with LlamaIndex's own MCP, HTTP or webhook features.

Updated: 2026-10-10