Skip to content

Welcome to the

0

Labs experiment

CRM tool server: a Model Context Protocol server that gives Claude safe tools for a CRM

A Model Context Protocol server that gives Claude a small set of safe tools for a CRM: search contacts, open tickets, move deals and summarise accounts. Every call passes a permission check and writes an entry to an audit log.

Where this pattern fits

  • Teams that want Claude to work inside their CRM instead of copying data into a chat
  • Companies that need AI tool use with access control
  • Internal systems that AI agents should reach through one standard protocol
  • MCP
  • TypeScript
  • Claude
  • OAuth
  • PostgreSQL

How it works

ClaudeMCP serversearch_contactscreate_ticketupdate_dealsummarise_accountCRM APIAudit logPermissions

Select any node to see what it does.

Simulated run
  1. 00.00claudetools/list returned 4 tools
  2. 00.12claudecall search_contacts(company=Nordlys)
  3. 00.40serverpermission check passed, 3 contacts
  4. 00.55serveraudit log entry written

The architecture, step by step

Each part of the diagram, in the order a run moves through it.

  1. ClaudeWhere every run starts.
  2. MCP serverExposes safe, permissioned tools to Claude over the Model Context Protocol.
  3. search_contactsLooks up contacts in the CRM.
  4. create_ticketOpens a support ticket.
  5. update_dealMoves a deal forward in the pipeline.
  6. summarise_accountSums up an account in a few lines.
  7. ToolsThe agents act through the CRM API, audit log and permissions.

How it is built

The design choices that make the pattern hold up with real users.

visitor@azan-portfolio: ~

_ ___ ___ _____

/_\ ____ __ _ _ _ / __| _ \_ _|

/ _ \ |_ / / _` || ' \ | (_ | _/ | |

/_/ \_\/__| \__,_||_||_| \___|_| |_|

Hi, I am AzanGPT. Ask me about Azan's work, stack, services or how to reach him.

Type 'help' for commands, or ask a question. Tab completes, the arrow keys walk your history.

AzanGPT runs on an AI model that knows this site. It can get things wrong, so check anything important with Azan.