Your assistant can use these tools, not just read about them.
All 49 business tools in this catalogue answer
the Model Context Protocol at POST /mcp — on your server, behind your own
API key. Point Claude, ChatGPT, a model running on your own machine, an agent in n8n or your own code at
it and ask in plain words. It is the same product underneath: the same key, the same roles, the same
rules that apply in the browser.
Three facts, and any assistant can use it
Mint a key in the app — Settings → API keys — and every client needs the same three things. There is nothing vendor-specific in the handshake.
https://your-install/mcp — your server, your domain.
Header Authorization: Bearer apk_… — read-only if that is all it needs.
MCP over streamable HTTP, stateless. One request in, one response out.
Where those three go depends on what you use:
Claude
claude mcp add --transport http invora https://your-install/mcp \
--header "Authorization: Bearer apk_xxxx"
The desktop and web apps take the same URL and header when you add it as a custom connector.
ChatGPT and the OpenAI API
{
"type": "mcp",
"server_label": "invora",
"server_url": "https://your-install/mcp",
"authorization": "apk_xxxx",
"require_approval": "never"
}
That is one entry in the Responses API's
tools array. In ChatGPT itself, the same URL and key go in as a connector.
A client that keeps servers in a config file
Own Your AI, editors like VS Code and Cursor, and most desktop clients read a list like this:
{
"mcpServers": [
{ "id": "invora", "name": "Invora", "url": "https://your-install/mcp",
"token": "apk_xxxx", "enabled": true }
]
}
A local model, n8n, or your own code
n8n's MCP Client node takes the URL
and the same Authorization: Bearer header. A model running on your own machine reaches it through
any MCP client — nothing leaves your network at all in that setup. And if you would rather write it yourself,
it is plain JSON-RPC 2.0 over one POST:
curl -X POST https://your-install/mcp \
-H "Authorization: Bearer apk_xxxx" -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Any client that speaks MCP's
streamable-HTTP transport works, including ones that do not exist yet — the endpoint implements the protocol,
not an integration with a particular vendor. The exact tool list for each product is in the
API.md inside its download.
A key that can only read
When you mint the key you choose what it may do. Pick Read only and the endpoint stops advertising the tools that change anything — an assistant asks its questions and is refused, by name, if it tries to write. Pick read and write and it behaves as it always has. Either way the key acts as one user and inherits that user's role, and you can revoke it from the same page at any moment.
Answers questions from your own data. Cannot create, edit, record or change a status — the write tools are not even listed to it.
Drafts the work as well: an invoice, a booking, a shift, a roadmap status. Everything it does lands in the audit log with the key's user beside it.
No tool in this catalogue deletes your records, and none emails your customers. Destruction and outbound mail stay human clicks, deliberately.
Or run the assistant yourself too
The recipe above works with any MCP client, hosted ones included. If you would rather not send your business data to somebody else's model, Own Your AI is our own client: it runs on your machine, connects to these same endpoints, and can talk to a model you host locally. Same three facts — id, url, token — in its own config.
Every tool in the catalogue speaks it
Since the 3.0 release, all 49 of them — every product here except Own Your AI, which is the client you connect with rather than a server you connect to. Each product page links its own tool list.