fabiofarath/salesforceDataDictionary
If you are the rightful owner of salesforceDataDictionary and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
A Model Context Protocol (MCP) server for managing and documenting Salesforce objects, providing tools for exploring and creating data dictionaries.
Salesforce Data Dictionary
A Model Context Protocol (MCP) server for describing and managing Salesforce objects. This MCP provides tools for listing, describing, and creating data dictionaries from Salesforce objects, making it easy to explore and document your Salesforce schema.
Features
- Describe Salesforce Objects: Get detailed field information for any Salesforce object
- List All Objects: Browse all available Salesforce objects
- Find Similar Objects: Search for objects with similar names
- CSV/Excel Export: Export field information; Excel export supports multiple objects (one sheet per object)
- Data Dictionary Creation: Convert Salesforce objects to data dictionaries
- Smart Object Detection: Automatically find similar objects if exact match not found
Prerequisites
- Salesforce CLI: Must be installed and authenticated
- Node.js: Version 16 or higher
- npm: For package management
Installing Salesforce CLI
npm install -g @salesforce/cli
sf login org
Installation
You can run this MCP either locally from the repo (build then point Cursor to dist/index.js
) or directly via npx
without cloning.
Option A: Use npx (recommended)
Add this to ~/.cursor/mcp_servers.json
:
{
"mcpServers": {
"salesforce-data-dictionary": {
"command": "npx",
"args": ["-y", "salesforce-data-dictionary"],
"env": {}
}
}
}
npx -y salesforce-data-dictionary
will fetch and run the latest published version.- No local checkout required.
Option B: Local checkout
- Clone and build:
git clone <repository-url>
cd salesforceDataDictionary
npm install
npm run build
- Configure Cursor to run the built entrypoint:
{
"mcpServers": {
"salesforce-data-dictionary": {
"command": "node",
"args": ["/Users/ffarath/Documents/projects/salesforceDataDictionary/dist/index.js"],
"env": {}
}
}
}
- Restart Cursor.
Available Tools
1. Describe Salesforce Object
Describe a Salesforce object and return its field information in CSV format.
Parameters:
objectName
(string): Name of the Salesforce object to describe (e.g., Account, Contact, CustomObject__c)outputFile
(string, optional): Filename to save the CSV output (e.g., 'account_fields.csv')
Example:
Describe the Account object and save the results to account_fields.csv
2. List Salesforce Objects
List all available Salesforce objects.
Parameters:
searchTerm
(string, optional): Search term to filter objects
Example:
List all Salesforce objects that contain "user" in the name
3. Find Similar Objects
Find Salesforce objects with similar names.
Parameters:
searchTerm
(string): Search term to find similar object names
Example:
Find objects similar to "Account"
4. Create Data Dictionary
Create an Excel data dictionary from one or more Salesforce objects (one tab per object labeled with the object label).
Parameters:
objects
(string): Comma-separated list of Salesforce objects (e.g., "Account, Contact, Opportunity"). You can also pass one of:ALL
,all objects
,whole org
,*
to include every object returned bysf sobject list --sobject all
.outputFile
(string): Excel filename (e.g., "data_dictionary.xlsx")
Example:
Create a data dictionary for Account, Contact, Opportunity and save to data_dictionary.xlsx
You can also generate a dictionary for the entire org:
Create a data dictionary for ALL and save to full_org_dictionary.xlsx
Example Usage
Describing a Salesforce Object
Describe the Account object and show me all its fields in CSV format
The MCP will:
- List all Salesforce objects using
sf sobject list --sobject all
- Check if "Account" exists
- If found, describe it using
sf sobject describe --sobject Account
- Parse the JSON response and display it as a user-friendly CSV
Creating Excel Data Dictionary
Create a data dictionary from "Account, Contact, Opportunity" and save to sales_schema.xlsx
This will generate an Excel with three sheets named from each object's label.
CSV/Excel Output Format
Columns included:
- Field Name
- Type
- Label
- Description
- Required
- Unique
- Length
- Precision
- Scale
- Default Value
- Picklist Values
- Reference To
- Relationship Name
Error Handling
- Object Not Found: If the exact object name isn't found, it suggests similar objects
- Salesforce CLI Errors: Clear error messages for authentication or connection issues
- Invalid Object Names: Helpful suggestions for common naming patterns
Salesforce CLI Integration
This MCP relies on the Salesforce CLI for all operations:
sf sobject list --sobject all
: Lists all available objectssf sobject describe --sobject <ObjectName>
: Describes a specific object
Make sure you're authenticated with the correct Salesforce org:
sf login org
sf org list
Supported Salesforce Objects
- Standard objects (Account, Contact, Lead, Opportunity, etc.)
- Custom objects (CustomObject__c)
- System objects
- External objects
License
MIT License - see LICENSE file for details.