Apexloop has its own MCP server. We walk through one concrete example of how an AI agent connects to your workspace, what it can read, how it proposes a change, and why writing always waits for your approval.
The article What is MCP and why it's set to become the standard for business data covered where the protocol as a whole is heading. This one is more concrete: Apexloop has its own MCP server, and this text shows what that means in practice for the workspace you already use.
What the Apexloop MCP server can do today
The server gives an AI agent access to three things: tools for reading and writing (find a job, look up a contact, update a status, create a record), resources - data from your databases, documents and views - and context about the workspace, so the agent knows what entities and relations exist in your data, not just what one particular table is called.
An agent connects with exactly the permissions of the person who connected it to Apexloop. It sees nothing extra - only what you yourself would reach through the regular interface.
What this looks like in one example
1. The agent connects over MCP. In Claude, ChatGPT or another MCP client, you enter the address of your Apexloop MCP server and sign in with the same account you use in the app.
2. You ask the agent about a job's status. For example: "How's job 482 doing?" The agent calls a read tool, the workspace returns the data - client, deadline, current status, history - and the agent summarises it in its answer.
3. You ask for a change. "Mark it as done." The agent calls a write tool, but it doesn't run right away - it creates a proposed change that waits for your confirmation.
4. You decide. In Apexloop (or right inside the conversation with the agent, if the client supports it) you see exactly what the agent is proposing to change. You approve, or you reject.
5. Only then does the write happen. The agent gets confirmation that the change went through - with the same entry in the record's history as if you'd edited the field yourself.
Free to read, writes with approval
This is the exact same principle that already applies to the AI assistant over the workspace inside Apexloop - the MCP server just opens it up to agents outside our own app too.
Why writing always waits for approval
This isn't a temporary limitation - it's deliberate default behaviour. An agent can get things wrong - misidentify which job you mean, or assume a value you never gave it. An approval step means the mistake surfaces in ten seconds while you're confirming, not a week later when you notice something's off.
Can writing be allowed without approval?
For select, well-tested actions, yes - typically repeated, simple operations where the risk of a mistake is low. But the default stays "propose, human confirms," and it's up to you which steps you choose to exempt from that rule.
What you need for it
| What | Why it's needed |
|---|---|
| MCP server turned on in the workspace | Without it, no agent can connect |
| Permissions set for the user the agent connects as | The agent sees exactly what that user sees - nothing more |
| An approval step for writing | Decides whether a proposal runs right away, or waits for you |
None of this needs custom development - it's a setting, not code.
Where the limits are
- The agent doesn't see data across the whole company, only what the connected user has access to. The same visibility rules that apply inside the app apply over MCP.
- Writing without approval isn't the default. If you want to allow it for a specific action, that's a deliberate decision, not a side effect of turning MCP on.
- The agent doesn't understand things that aren't in the data. If a job has no deadline or client filled in, the agent won't guess one - it will ask, or leave the field empty.
How Apexloop handles who on a team sees which data is covered in the guide Access rights and data visibility. What MCP is and how it works in general is explained in the definitional article on the Model Context Protocol, and you'll find the term in the glossary too.
Frequently asked questions about the MCP server in Apexloop
How do I connect an agent to Apexloop?
In the workspace settings, you turn on the MCP server and generate access credentials. You then enter those into an MCP client - Claude, or another tool that supports the protocol.
Does the agent see data I don't have access to?
No. The agent connects as a specific user and inherits exactly that user's permissions - no "bonus" access on top.
Can I disable writes over MCP entirely and allow only reading?
Yes, the MCP server can be restricted to read-only. The agent can then look up and summarise data, but can't propose any changes.
Does this work with any AI tool?
With any tool that supports MCP as a client - today mainly Claude and tools built on it, but more are being added.