Salesforce MCP Server
A FastAPI-based MCP (Model Context Protocol) server for Salesforce Agentforce Registry (Beta).
Features
- MCP Protocol Support: Implements initialize, tools/list, and tools/call endpoints
- Streamable HTTP: Uses standard HTTP POST requests (not SSE)
- Salesforce Integration: Provides tools for lead management and permission sets
- Production Ready: Includes proper logging, error handling, and JSON responses
Tools Available
-
createLead: Create a new Salesforce Lead
- Parameters:
first_name,last_name,email,company
- Parameters:
-
assignPermissionSet: Assign a permission set to a user
- Parameters:
username,permission_set_name
- Parameters:
-
createPermissionSet: Create a new permission set
- Parameters:
ps_name,ps_label
- Parameters:
Setup
-
Install dependencies:
pip install -r requirements.txt -
Configure environment variables in
.env:SALESFORCE_CLIENT_ID=your_client_id SALESFORCE_CLIENT_SECRET=your_client_secret SALESFORCE_USERNAME=your_username SALESFORCE_PASSWORD=your_password SALESFORCE_TOKEN_URL=https://login.salesforce.com/services/oauth2/token -
Run the server:
uvicorn main:app --host 0.0.0.0 --port 8000 --reload
API Endpoints
GET /: Health checkPOST /mcp: MCP protocol endpoint
MCP Protocol
The server strictly follows the MCP protocol with JSON responses containing:
id: Request IDtype: Response type ("result" or "error")result: Response data for successful operations
Logging
All incoming requests and operations are logged for debugging purposes.