Salesforce MCP Server: Tools, Permissions en Hoe Je Deze Veilig Verbindt
.png)
Gebouwd voor snelheid: ~10ms latentie, zelfs onder belasting
De razendsnelle manier om je modellen te bouwen, volgen en implementeren!
- Verwerkt 350+ RPS op slechts 1 vCPU — geen tuning nodig
- Productieklaar met volledige enterprise-ondersteuning
Wat de Salesforce MCP server is
De Salesforce MCP server verandert je CRM in aanroepbare tools. Model Context Protocol is de open standaard waarmee een AI-agent tools in een extern systeem kan ontdekken en aanroepen; de implementatie van Salesforce ontsluit standaard en aangepaste sObjects via deze standaard.
Wat het anders maakt dan de meeste remote MCP servers is waar het draait: Salesforce serveert zijn MCP servers vanuit je eigen organisatie, geactiveerd via het TrueFoundry Salesforce managed package — geen externe host er tussenin, geen OAuth-app om op te zetten.
Wat je activeert bepaalt wat agents kunnen bereiken:
Die twee komen overeen met de enige beslissing die er toe doet: moet deze agent records kunnen wijzigen, of alleen lezen. Het tabblad Salesforce Servers in Setup geeft aan wat jouw editie kan activeren. [VERIFY] Of er meer varianten dan deze twee verschijnen is niet gedocumenteerd.
Binnen elke server is het oppervlak je datamodel. De documentatie beschrijft tools op basis van functionaliteit en objecttype in plaats van vaste functienamen te publiceren, dus het tabblad Tools op de detailpagina van de server is de werkelijke inventaris voor jouw organisatie.
Wat agents er daadwerkelijk mee doen
Nuttige workflows combineren meerdere leesacties, en incidenteel een schrijfactie:
- Pipeline-beoordeling. Query open opportunities boven een bepaalde drempel, haal de gerelateerde accounts en contacten op, vergelijk met de datum van de laatste activiteit en markeer deals die stilgevallen zijn.
- Voorbereidend onderzoek voor een afspraak. Lees het account, de openstaande cases, de closed-won geschiedenis en alle aangepaste objecten met productgebruik, en schrijf vervolgens een briefing van één pagina.
- Case triage. Groepeer openstaande cases op productgebied en ernst, en breng degene in kaart die de responstermijnen dreigen te overschrijden.
- Datahygiëne. Vind dubbele of onvolledige records en normaliseer velden — dit is de enige workflow in dit lijstje die sobject-all nodig heeft.
Drie van die vier zijn zuivere leesacties, en dat is het vaste patroon. Het meeste van wat teams willen van een CRM MCP server is lezen. Dus lezen versus schrijven is hier geen abstract principe — het is een concrete vraag die bij activatie wordt beantwoord, en de meeste agents horen aan de alleen-lezen kant thuis.
Waarom direct verbinden misgaat op teamschaal
Eén RevOps-analist die Salesforce koppelt aan Claude Desktop is prima. Dezelfde integratie gedragen door dertig mensen in sales, support en finance is dat niet.
Een agent met schrijftoegang kan de cijfers aanpassen die het bestuur ziet. Opportunity-bedragen, sluitingsdatums en fases worden samengevoegd in de forecast; accountvelden voeden de rapportage over territoria en ARR. Een agent die een fase "opschoont" of een vermoedelijke dubbele record verwijdert heeft niets gelekt — hij heeft het basissysteem aangetast waar finance het kwartaal op afsluit, en overgeschreven geschiedenis is geen commit die je zomaar terugdraait. Prompt injection versterkt dit: een instructie die verborgen staat in een case-beschrijving bereikt een triage-agent met dezelfde schrijftools als een datahygiëne-agent.
Een agent met leestoegang kan de gehele pipeline in een modelcontext trekken. Eén brede query op Opportunity geeft elke openstaande deal, het bedrag en de eigenaar terug — en op een gedeeld serviceaccount wordt die query niet beperkt door sharing rules van een specifiek persoon. Je forecast verandert in een prompt.
Gedeelde inloggegevens wissen het eigen rechtenmodel van Salesforce uit. Profielen, permission sets, beveiliging op veldniveau, sharing rules — teams besteden jaren aan het afstellen ervan. Vervolgens authenticeert een integratie met één admin-credential, erft elk verzoek admin-rechten, en is al dat werk voor niets geweest.
Geen attributie wanneer er iets verandert. Veldgeschiedenis vertelt je dat een record is gewijzigd en welke gebruiker dat heeft gedaan — niet dat een agent dit deed op basis van een prompt in een Slack-thread.
Niets hiervan is een argument tégen het koppelen van Salesforce. Het is een argument voor een controlelaag erin zetten — en dat is waar een MCP gateway voor bedoeld is.
Voordat je begint: wat er aan de Salesforce-kant nodig is
Omdat de server in jouw organisatie draait, heeft deze integratie daadwerkelijke vereisten, in tegenstelling tot de meeste beheerde MCP's.
- Een TrueFoundry-account met rechten om MCP servers toe te voegen.
- Salesforce Administrator-toegang — je installeert een package en wijzigt instellingen in Setup.
- Een organisatie-editie met API-toegang ingeschakeld: Developer, Enterprise of Professional Edition met geactiveerde API-toegang.
Reken op ongeveer tien minuten, waarbij de meeste tijd opgaat aan het wachten op de installatie en activatie.
De Salesforce MCP server verbinden via TrueFoundry
TrueFoundry levert Salesforce als een TrueFoundry Managed MCP: het platform beheert de server-URL, uitgaande authenticatie, scopes en credentials, en houdt deze up-to-date als Salesforce iets wijzigt:

Omdat de server van jou is, voegt Salesforce daar drie stappen aan de kant van de organisatie aan toe.
Stap 1 — Installeer het TrueFoundry Salesforce MCP package. Log in op je organisatie als Administrator en open de installatielink in dezelfde browsersessie:
https://login.salesforce.com/packaging/installPackage.apexp?p0=04ta7000001FUejAAG
Kies in het installatiescherm voor Install for All Users, klik op Install en wacht op de succesbevestiging.
Stap 2 — Schakel de MCP Service in. Zoek in Setup naar User Interface in Quick Find, zoek Enable MCP Service, schakel dit in en klik op Save.
Stap 3 — Activeer de MCP server. Zoek, nog steeds in Setup, naar MCP Servers en open het tabblad Salesforce Servers. Zoek de server die je wilt — sobject-all voor volledig lezen/schrijven, sobject-reads voor alleen-lezen — en klik op Activate; dit kan tot twee minuten duren. Lees het volgende gedeelte voordat je een keuze maakt.
Stap 4 — Verbind in TrueFoundry. Ga naar MCP Servers, zoek Salesforce MCP en klik op Connect. Je wordt omgeleid naar een inlog- en toestemmingsscherm van Salesforce: log in, controleer de gevraagde rechten en klik op Allow.

Stap 5 — Verifieer. De server moet op Connected staan en het tabblad Tools moet de bijbehorende tools vermelden. Klik op Try bij een willekeurige tool, of voer iets uit als “toon alle accounts”, om de verbinding te bevestigen.
Let op wat je niet hebt hoeven doen: geen External Client App, geen Connected App, geen Client ID of Secret, geen OAuth scopes, geen callback-URL.
Hoe authenticatie daadwerkelijk werkt
TrueFoundry scheidt inkomende authenticatie — hoe een client zich bewijst aan de gateway — van uitgaande authenticatie, hoe de gateway zich bewijst aan Salesforce.

Inkomend — clients authenticeren bij de AI Gateway met een van de volgende opties:
Één kanttekening is hier belangrijker dan bij de meeste servers: een Virtual Account token geeft elk verzoek identieke toegang, waardoor het geen CRM-zichtbaarheid per gebruiker kan ondersteunen. Gebruik inkomend een PAT of de IDE OAuth-stroom.
Uitgaand — de OAuth2 Authorization Code-stroom. Elke gebruiker autoriseert zijn eigen Salesforce-account; TrueFoundry beheert de toestemming, tokenopslag en het verversen ervan. Als beheerde MCP is de redirect-URI altijd de centraal beheerde callback van TrueFoundry:
https://auth.truefoundry.com/mcp/oauth2/callback
Dit is wat het Salesforce-verhaal zo sterk maakt. Omdat de uitgaande identiteit de individuele gebruiker is, wordt elke actie uitgevoerd als die geauthenticeerde gebruiker en worden de CRUD-rechten, beveiliging op veldniveau en sharing rules van je organisatie gerespecteerd. De vertegenwoordiger wiens profiel geen Finance-only velden kan zien? Zijn agent kan dat ook niet. De supportmedewerker die beperkt is tot één regio? Zijn agent ziet slechts één regio.
Je rechtenmodel wordt niet omzeild, gedupliceerd of benaderd bij de gateway — het is de daadwerkelijke handhavingslaag, omdat Salesforce elke aanroep evalueert als een echte gebruiker. Gebruikers authenticeren twee keer, één keer bij de gateway en één keer bij Salesforce, en dat is wat attributie per gebruiker mogelijk maakt.
Kiezen voor alleen-lezen bij de bron
De meeste MCP servers bieden één plek om functionaliteit te beperken: de gateway. Salesforce geeft je er twee, en de bovenliggende bron is sterker.
Het activeren van sobject-reads in plaats van sobject-all betekent dat de schrijf- en verwijder-tools niet bestaan op de server waar je gateway mee communiceert. Niet uitgeschakeld, niet afgeschermd — afwezig. Geen toggle die later verkeerd geconfigureerd kan worden, geen collega die het terug kan zetten, geen upstream-release die stilzwijgend een schrijftool toevoegt.
- Kies standaard voor sobject-reads. Pipeline-rapportages, accountbriefings, case triage, forecast-samenvattingen, onderzoeksagents — geen van allen hoeft te schrijven.
- Activeer sobject-all alleen wanneer een workflow expliciet schrijfacties vereist, en combineer dit met de onderstaande toggles en goedkeuringsregels.
Als je sobject-all al hebt geactiveerd, levert het uitschakelen van de schrijf- en verwijder-tools op het tabblad Tools hetzelfde gedrag op — het is alleen een instelling die je actief intact moet houden.
Tools afbakenen voordat je live gaat
Eenmaal verbonden toont het tabblad Tools alles wat de actieve server ontsluit.

Toggles per tool. Schakel een tool uit en deze wordt volledig weggelaten uit tools/list — clients zien de tool nooit en deze kan niet worden aangeroepen. Dit is geen filtering op prompt-niveau: een agent die geen verwijder-tool kan zien, kan niet worden overgehaald om er een aan te roepen, wat een kwaadaardige case-beschrijving ook beweert.
Enable new tools by default. Als dit aan staat, verschijnen nieuwe upstream-tools automatisch. Als dit uit staat, zijn alleen expliciet ingeschakelde tools beschikbaar en blijft al het nieuwe verborgen totdat je het goedkeurt. Voor een basissysteem is uit de juiste standaardwaarde.
Bulk Action. Verandert elke rij in selectievakjes met Select all, zodat je een grote set in één keer kunt aanpassen en opslaan via Save.
Klik op het potlood bij een tool om te wijzigen hoe deze aan het model wordt gepresenteerd:

De Description overschrijving (tot 20.000 tekens) stuurt de tool-selectie wanneer upstream-formuleringen onduidelijk zijn. MCP Tool Annotations markeren een tool als Read-only of Destructive, wat readOnlyHint of destructiveHint instelt — en het markeren van schrijftools als Destructive zorgt ervoor dat de onderstaande goedkeuringsregels een hele klasse operaties in één keer kunnen afschermen.
Wie mag wat doen: rollen voor medewerkers
Toegangscontrole is gekoppeld aan gebruikers, teams of virtual accounts op twee dimensies: welke servers een identiteit kan bereiken, en welke tools deze kan aanroepen.

Voor een CRM is de natuurlijke verdeling RevOps als Manager, sales en support als User, en een sales-ops lead als Approver op het schrijfpad — hetzelfde MCP access control-model als voor elke andere server in de registry.
Menselijke goedkeuring voor schrijftools
Het uitschakelen van schrijfacties is het grove middel, en voor de meeste Salesforce-agents is dat de juiste keuze. Maar sommige workflows moeten legitiem schrijven — activiteiten loggen, een fase verder helpen, een taak aanmaken — en je wilt dat dat gebeurt terwijl er een mens meekijkt.
Wanneer een afgeschermde tool wordt aangeroepen, wordt de aanroep ingehouden in plaats van uitgevoerd, er wordt een goedkeuringsverzoek aangemaakt en goedkeurders krijgen een melding. Nadat een mens dit goedkeurt, slagen aanroepen gedurende een instelbaar tijdsbestek, waarna opnieuw goedkeuring vereist is. Maak een regel aan onder AI Gateway → Policies → MCP Tool Approval (gemarkeerd als Beta in de console):

Elke regel vermeldt de servers die deze afschermt en kiest een approval scope:
Dit is waar de annotaties hun waarde bewijzen: markeer schrijfoperaties één keer als Destructive en scherm de categorie af met approval_scope: destructive. Wanneer scopes overlappen, wint de meest specifieke — named > destructive > all.
Validity is Once (één enkele uitvoering) of time-based, een duur in minuten. Wanneer regels conflicteren, wint de meest restrictieve: Once wint van 10 minuten, wat weer wint van 30 minuten. Kies voor alles wat raakt aan opportunity- of accountrecords voor Once — een goedkeuring van 30 minuten op een schrijftool is 30 minuten waarin een agent in een lus kan raken.
Goedkeurders krijgen een melding via E-mail, Slack, PagerDuty of MS Teams, en beoordelen het verzoek in de console:

Elk verzoek toont de tool, de regel, de aanvrager, de geldigheidstermijn en de daadwerkelijke tool-argumenten — zo kan een goedkeurder zien dat een agent een opportunity van $400k op Closed Lost wil zetten voordat deze wordt goedgekeurd. Die zichtbaarheid is de essentie van deze functie op een CRM.
Zolang het verzoek in behandeling is, krijgt de aanroeper een succesvol JSON-RPC-resultaat met _meta.approval_status: "pending" in plaats van een foutmelding, zodat een goed geconfigureerde agent wacht en het opnieuw probeert. Toestemmingen zijn afgebakend per aanvrager, en een weigering blokkeert niemand permanent — de volgende aanroep start een nieuw verzoek.
Testen in de Tool Playground
Test de tools eerst handmatig. Klik op de detailpagina van de server op Try naast een tool, vul de invoer in — het objecttype zoals Account of Opportunity, plus eventuele queryfilters — klik op Execute Tool en lees de JSON. Try is uitgeschakeld voor tools die je hebt uitgezet. Dit haalt eenvoudige problemen er vroegtijdig uit: een veld dat jouw profiel niet kan lezen, een object dat het package niet heeft ontsloten, of een filtervorm die je verkeerd hebt ingeschat.
Gebruik vanuit je IDE
Open het tabblad How To Use voor je tenant-specifieke Gateway-URL en kant-en-klare codefragmenten.

Dit ondersteunt Claude Code, VS Code, Claude Web, Claude Desktop, Cursor, Windsurf, Codex, en de Python en TypeScript MCP SDK's; Show API Key toont het token als je client er een nodig heeft in de header. Gebruik de URL van dit tabblad in plaats van deze zelf samen te stellen — de URL is tenant-specifiek, en een handmatig gebouwd eindpunt is de meest voorkomende oorzaak van een client die wel verbindt maar geen tools toont.
Wat je krijgt zodra het achter de gateway staat
Statistieken op tool-niveau. Het tabblad Tool Metrics volgt het aantal aanroepen, de vertraging (latency) per tool en foutpercentages. Over de gehele gateway voegt MCP Metrics daar verzoeken per seconde, latency op P50/P75/P90/P99 en het foutpercentage per fouttype aan toe.

Volledige verzoek-observabiliteit. Elke tool-aanroep wordt getraceerd met de identiteit van de aanroeper, toolnaam, invoer en latency, en geëxporteerd via OpenTelemetry naar Grafana, Datadog of Prometheus — de attributielaag die veldgeschiedenis alleen je niet kan bieden.
Guardrails. Hooks worden toegepast op mcp_pre_tool, voordat een tool wordt aangeroepen, waar een controle de aanroep direct kan blokkeren, en op mcp_post_tool, op het antwoord voordat het terugkeert naar de agent. De post-tool hook is de belangrijkste voor CRM-data — dit is waar je voorkomt dat een resultaat met meer records of gevoeligere velden het model bereikt dan toegestaan.
Lage overhead. De gateway voegt slechts ongeveer 3–4 ms aan latency toe en verwerkt 350+ RPS op een enkele vCPU.
Eén centrale registry. Zodra er meerdere servers zijn geregistreerd, kun je een geselecteerde subset van hun tools aanbieden achter één eindpunt met een Virtual MCP Server — zo krijgt een deal-desk-agent leestools uit Salesforce, een Slack-tool om de samenvatting te plaatsen, en verder niets.
Toegang intrekken
Tenant-admins kunnen alle opgeslagen credentials op de server wissen via het menu met drie puntjes naast Edit:

Revoke all tokens verwijdert elke auth-overschrijving en elk opgeslagen OAuth-token voor alle gebruikers en virtual accounts op die server. Dit treedt in werking bij het volgende verzoek en wordt vastgelegd in de Activity Logs. Het is onomkeerbaar en alleen tenant-admins zien deze actie.
Een belangrijke beperking: het wist tokens alleen bij de gateway en trekt de verleende toegang binnen Salesforce niet in. Schakel bij een incident de server ook uit op het tabblad Salesforce Servers — dat is de knop die de functionaliteit verwijdert in plaats van alleen de credential.
Belangrijke aandachtspunten
Alleen-lezen is een keuze bij activatie, niet alleen een toggle. De sterkste alleen-lezen Salesforce-agent is sobject-reads geactiveerd in je organisatie, waar schrijftools simpelweg niet bestaan. Gateway-toggles op sobject-all zijn een goede tweede verdedigingslinie, maar configuraties kunnen na verloop van tijd afwijken.
Beveiliging op veldniveau doet meer werk dan je denkt. Omdat elke aanroep wordt uitgevoerd als de geauthenticeerde gebruiker, is een tool die voor de één "niet werkt" en voor de ander wel, meestal niet kapot — het is FLS of een sharing rule die correct functioneert.
API-limieten worden gedeeld. Tool-aanroepen van agents maken gebruik van dezelfde API-capaciteit van de organisatie als je nachtelijke batches.
Gerelateerde artikelen
- Wat is een MCP Gateway: Architectuur en Use Cases — de architectonische basis achter dit artikel
- MCP Access Control: Securing AI Agents with an MCP Gateway — hoe tool- en server-level permissies in de praktijk werken
- MCP Authentication Explained — het inkomende en uitgaande auth-model in detail
- Virtual MCP Server Explained — het bundelen van tools uit meerdere servers in één eindpunt
- Enterprise MCP Access Control — rolontwerp voor grote teams
Conclusion
De Salesforce MCP server is buitengewoon goed geschikt om op de juiste manier te worden beheerd, en buitengewoon kostbaar om verkeerd in te stellen. Goed geschikt, omdat het in je eigen org draait en per gebruiker autoriseert, waardoor het permissiemodel dat je beheerders al onderhouden het model van de agent wordt. Kostbaar, omdat de objecten aan de andere kant de objecten zijn waarop je voorspelling en je kwartaalafsluiting zijn gebouwd.
De controles zijn geordend, en de eerste is de goedkoopste: activeer sobject-reads tenzij een workflow echt moet schrijven. Schakel vervolgens de tools uit die je niet gebruikt, plaats het schrijfpad achter een mens met Once-validiteit en bewaar het traced call log.
TrueFoundry AI Gateway levert een latentie van ~3–4 ms, verwerkt 350+ RPS op 1 vCPU, schaalt moeiteloos horizontaal en is klaar voor productie, terwijl LiteLLM last heeft van hoge latentie, moeite heeft boven een gemiddeld aantal RPS, geen ingebouwde schaling heeft en het meest geschikt is voor lichte workloads of prototypes.



Eén gateway voor elk LLM, elke agent en elke MCP-server
Recente blogs
Veelgestelde vragen
What is the Salesforce MCP server?
It’s a Model Context Protocol server that exposes Salesforce CRM data — accounts, contacts, opportunities, cases, and custom objects — as tools an AI agent can call. Salesforce serves it from inside your own org: install the TrueFoundry Salesforce managed package, enable the MCP Service in Setup, and activate sobject-reads for read-only access or sobject-all for full read/write.
What tools does the Salesforce MCP server expose?
It depends which server you activate. sobject-reads exposes read tools over your sObjects; sobject-all adds create, update, and delete. Tools are parameterized by object type and query filters rather than published as a fixed list, so the Tools tab is the authoritative inventory for your org — and each tool there can be enabled, disabled, re-described, or annotated.
Is the Salesforce MCP server safe to use in an enterprise?
It’s one of the easier integrations to govern: per-user OAuth means every action runs as the authenticated user under that user’s CRUD permissions, field-level security, and sharing rules. The residual risk is the write path — activate sobject-reads where writes aren’t needed, disable write tools where they are, and gate the rest behind human approval with Once validity.
Can I deploy TrueFoundry in my own VPC or on-prem?
Yes. TrueFoundry runs in your VPC, on-prem, air-gapped, or hybrid, so prompts and responses never leave your domain even as you route across many providers.
Ondersteunt TrueFoundry MCP en AI-agents in het algemeen?
Ja. Het omvat een MCP Gateway, een Agent Gateway, en een MCP & Agents Register met toegangscontrole op toolniveau. Agents op LangGraph, CrewAI, AutoGen, of een aangepast framework kunnen allemaal centraal worden gereguleerd.
Integreert het met mijn bestaande observability-stack?
Ja. De gateway is OpenTelemetry-compliant en sluit aan op Grafana, Datadog, Prometheus, of uw gewenste stack. Het traceert elk verzoek van prompt tot tool- en modeluitvoering, zodat u uniforme logging krijgt zonder wat u al draait te hoeven vervangen.












.png)

.webp)



.webp)








.webp)





