Salesforce MCP Server
Exposes Salesforce data and actions via tools for running SOQL queries, describing objects, creating contacts, checking org limits, and a reusable account health review prompt.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Salesforce MCP ServerShow me accounts with no open opportunities"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Salesforce MCP Server — Headless 360
A Model Context Protocol server that exposes Salesforce as tools for any MCP client (Claude Desktop, VS Code, custom agents). Ask your AI "which accounts have stale opportunities?" and it queries your org directly — no login, no tab-switching.
What this demonstrates: the N×M integration problem MCP solves (N clients × M systems → N+M), tool design with least-privilege guardrails, and prompt templates as a first-class server capability.
Tools exposed
Tool | What it does | Guardrail |
| Read-only SOQL queries | SELECT-only + forbidden-keyword guard (tested) |
| Field names/types/labels for any SObject | read-only |
| Create a Contact | deliberately narrow — no generic DML tool |
| API/storage limits snapshot | read-only |
Plus an MCP prompt: account_health_review — a reusable analysis template clients
can invoke by name.
Related MCP server: MCP Salesforce Lite
Setup
pip install -r requirements.txt
cp .env.example .env # add your credentials
mcp dev server.py # inspector UI for local testingClaude Desktop config
{
"mcpServers": {
"salesforce": {
"command": "python",
"args": ["C:/path/to/salesforce-mcp-server/server.py"],
"env": {
"SF_USERNAME": "you@example.com",
"SF_PASSWORD": "...",
"SF_SECURITY_TOKEN": "..."
}
}
}
}Security notes (the part that matters)
Least privilege: one narrow write tool instead of generic DML — an AI that can "do anything" is an incident waiting to happen.
SOQL guard: model-composed queries are validated before execution (
tests/test_guard.py).Prompt injection: treat records' field values as untrusted input — a Contact Description saying "ignore previous instructions" must never steer the agent. Keep write tools narrow and confirm destructive intents client-side.
Use a dedicated Integration User profile with minimal object permissions.
Tests
pytest -q # guard tests run offline, no org neededThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/89himanshu-dwivedi/salesforce-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server