Unified Salesforce Documentation MCP Server
Enables LLMs to scrape, index, and search modern and legacy Salesforce documentation by piercing complex Shadow DOM and iframe structures. It supports hierarchical spidering of entire guides and local RAG capabilities using a SQLite database for offline querying.
README
Unified Salesforce Documentation MCP Server
A powerful Model Context Protocol (MCP) server that empowers LLMs to scrape, digest, and search through modern and legacy Salesforce documentation. It elegantly handles deeply nested Shadow DOMs, typical of Lightning Web Components (LWC), and legacy iframe-based documentation structures.
Features
- Deep Shadow DOM Piercing: Bypasses 400KB+ of SPA boilerplate on
help.salesforce.comanddeveloper.salesforce.comto extract only the pure article Markdown. - Hierarchical Spidering: Automatically queues and scrapes all related pages linked from a central guide using
mass_extract_guide. - Offline RAG Capabilities: Chunks and indexes scraped Markdown into a local SQLite database (
docs.db) allowing for instantaneous local search usingsearch_local_docs.
Available Tools
scrape_single_page: Provide a Salesforce documentation URL. The server will use a headless browser (Puppeteer) to load the page, wait for dynamic content, pierce all shadow DOMs, and return clean Markdown.mass_extract_guide: Provide a "Table of Contents" or central guide URL. The server will extract the parent page, find all hierarchical child links, scrape them concurrently, chunk their content, and save them to a local SQLite database for offline querying.search_local_docs: Provide a natural language query (e.g.,LWC lifecycle hooks). The server queries the SQLite database using fuzzy SQL search to instantly return the best matching pre-scraped chunks of documentation.read_local_document: Rapidly extracts the full Markdown content of a documentation page that has already been indexed locally, instantly returning the content without needing to re-run headless Chromium to bypass CDNs.
Quick Start Installation
For anyone downloading this project for the first time:
- Clone the Repository:
git clone https://github.com/ttrevisan-ilmn/unified-sf-docs-mcp.git cd unified-sf-docs-mcp - Install Dependencies:
npm install - Build the Project:
(Note: The server runs from the compilednpm run build/distdirectory, so building is required). (Note: To use the tools interactively, integrate this MCP server with an MCP client like Claude Desktop or Cursor.)
Testing
You can use the provided test scripts to verify the core functionality or the scraper against different Salesforce URL layouts:
# Test the database, chunking, and search functionality
npx tsx tests/test-core.js
# Test the robust Shadow DOM scraper against 4 different URL permutations
npx tsx tests/test-all.js
Integrating with AI Assistants
MCP servers act as a bridge between an LLM and local tools. To actually use this server, you need to plug it into an AI coding assistant like Cursor or Claude Desktop.
The absolute easiest way to do this is to use npx, which will automatically download and run the latest version of the server from NPM.
1. Cursor (Recommended)
- Open Cursor Settings -> Features -> MCP
- Click + Add new MCP server
- Configure the settings:
- Type:
command - Name:
unified-sf-docs - Command:
npx -y unified-sf-docs-mcp
- Type:
- Click Save. Cursor will instantly download the package and surface the 3 new tools to the Cursor Agent.
2. Claude Desktop
- Open the Claude Desktop configuration file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
- Add the following entry to your
mcpServersobject:
{
"mcpServers": {
"unified-sf-docs": {
"command": "npx",
"args": [
"-y",
"unified-sf-docs-mcp"
]
}
}
}
- Restart Claude Desktop. The tools will now be available when talking to Claude!
Alternative: Running a Local Clone
If you want to modify the source code yourself, you can point your AI assistant to a local installation instead of using npx:
- Clone the Repository:
git clone https://github.com/ttrevisan-ilmn/unified-sf-docs-mcp.git cd unified-sf-docs-mcp - Install & Build:
npm install && npm run build - Update your MCP config:
- Type:
command - Command:
node /ABSOLUTE/PATH/TO/unified-sf-docs-mcp/dist/index.js
- Type:
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.