What is MCP?
MCP (Model Context Protocol) is a standard protocol that lets AI systems call external tools over HTTP. Instead of encoding business rules into the AI, MCP lets the AI reach out to your systems at runtime — querying your database, calling your APIs, and executing your workflows.
oHallo uses MCP as the bridge between its AI agents and your business systems. Your pricing rules, order workflows, inventory checks, and approval chains stay in your infrastructure. oHallo’s agents call them when they need to.
Why MCP matters
Section titled “Why MCP matters”Traditional integrations require you to push data into the AI platform, map fields, and maintain synchronisation. MCP inverts this:
- Your logic stays yours. Pricing calculations, discount rules, stock checks — they live in your MCP server, running against your database. oHallo never models your business domain.
- No data replication. The agent queries your system in real time. There is no ETL pipeline, no stale cache, no sync job to maintain.
- Swap without retraining. Migrating from one ERP to another? Update your MCP server. The AI agents do not need any changes — they call the same tool names, and your new server returns the same shape of data.
- Full control over security. Your MCP server runs on your infrastructure. You decide what data to expose, what operations to allow, and what authentication to require.
How it works
Section titled “How it works”When a customer sends a message, oHallo’s agent pipeline processes it through several stages. Here is the flow when an agent needs to call your systems:
Customer message | vOrchestrator -- classifies intent, determines which specialist agents to invoke | vSpecialist Agent -- e.g. "Order Lookup Agent", assigned your MCP tools | vMCP Hub -- routes the tool call to the correct MCP server, handles auth | vYour MCP Server -- receives the call, queries your system, returns structured data | vYour Database / API -- the source of truth for orders, products, accounts, etc.- The Orchestrator reads the customer’s message and decides what information is needed. For example: “The customer is asking about their order status — I need the Order Lookup Agent.”
- The Specialist Agent has access to specific MCP tools. It decides which tool to call and with what parameters. For example:
get_order({ orderNumber: "ORD-48291" }). - MCP Hub is oHallo’s internal router. It looks up which MCP server provides the
get_ordertool, attaches authentication credentials, and forwards the request. - Your MCP Server receives the JSON-RPC call, queries your order database, and returns structured data — order status, line items, tracking information.
- The agent uses the returned data to compose a response to the customer.
What your MCP server does
Section titled “What your MCP server does”An MCP server exposes tools — functions that agents can call. Each tool has a name, a description (which agents read to decide when to call it), an input schema, and a handler function.
Typical tools include:
| Tool | Purpose |
|---|---|
get_order | Look up an order by order number |
search_products | Search product catalog by name, category, or SKU |
create_quote | Generate a price quote for a set of items |
check_inventory | Check stock levels for a product at a given warehouse |
get_customer | Retrieve customer account details |
list_invoices | List invoices for a customer account |
submit_return | Initiate a return or exchange request |
get_shipping_status | Track a shipment by tracking number |
You can expose as many or as few tools as you need. Start with one or two, and add more as you identify what your customers ask about.
Security model
Section titled “Security model”MCP is designed with security as a baseline, not an afterthought:
- Authentication is mandatory. When you register an MCP server with oHallo, you provide an API key. MCP Hub sends this key as a Bearer token on every request. Your server validates it before executing any tool call.
- Credentials are stored securely. API keys and tokens are stored in Infisical (a secrets manager), never in the oHallo application database.
- Data stays in your infrastructure. Your MCP server runs wherever you choose — your own cloud, on-premise, or a private network. oHallo sends a tool call and receives a response. No bulk data transfer, no data warehousing.
- Account isolation is enforced. Every tool call includes a
tenantIdparameter injected by MCP Hub. Your server can use this to enforce data isolation if you serve multiple oHallo accounts.
MCP server vs. REST API — when to use which
Section titled “MCP server vs. REST API — when to use which”oHallo provides two integration paths. Choose based on what you are building:
| Use case | Integration |
|---|---|
| Let AI agents query your systems during conversations | MCP server — expose tools that agents call |
| Read or write oHallo data from your own applications | REST API — call oHallo’s endpoints with an API key |
| Sync your product catalog into oHallo’s knowledge base | REST API — POST entries to the KB endpoint |
| Build a dashboard that shows conversation analytics | REST API — GET conversations, contacts, metrics |
| Let agents check stock levels in your warehouse system | MCP server — expose a check_inventory tool |
| Approve or reject knowledge base proposals | REST API — PATCH proposal status |
In many setups, you will use both: an MCP server so agents can call your systems, and the REST API to push data into oHallo or pull analytics out.
Next steps
Section titled “Next steps”- Build an MCP Server — step-by-step guide to creating your first server
- Tool Schema — how to define input schemas and return values
- Example: Shipping Tracker — a complete working example