统一Salesforce文档MCP服务器
一个强大的模型上下文协议(MCP)服务器,使LLM能够抓取、消化和搜索现代和传统的Salesforce文档。它优雅地处理了深度嵌套的Shadow DOM,这是闪电网络组件(LWC)的典型特征,以及基于iframe的传统文档结构。
特性
- 深阴影DOM穿透: 绕过400KB+的SPA样板
help.salesforce.com和developer.salesforce.com仅提取纯文章Markdown。 - 机器人保护旁路: 包括一个隐形架构,该架构透明地避开Akamai Bot Manager和其他WAF,同时完美地执行Lightning Web组件,在提取之前对SPA进行水合处理。
- 分层蜘蛛: 使用以下命令自动排队并抓取从中央指南链接的所有相关页面
mass_extract_guide. - 离线RAG功能: 块和索引将Markdown抓取到本地SQLite数据库中(
docs.db)允许使用以下命令进行即时本地搜索search_local_docs.
可用工具
scrape_single_page:提供Salesforce文档URL。服务器将使用无头浏览器(Puppeteer)加载页面,等待动态内容,穿透所有阴影DOM,并返回干净的Markdown。mass_extract_guide:提供一个“目录”或中央指南URL。服务器将提取父页面,查找所有分层子链接,同时抓取它们,将其内容分块,并将其保存到本地SQLite数据库进行离线查询。search_local_docs:提供自然语言查询(例如。,LWC lifecycle hooks).服务器使用模糊SQL搜索查询SQLite数据库,以立即返回最匹配的预抓取文档块。read_local_document:快速提取已在本地索引的文档页面的完整Markdown内容,立即返回内容,而无需重新运行headless Chromium来绕过CDN。export_local_documents:安全地将存储在离线SQLite数据库中的整个指南(或多个指南)编译成直接导出到本地文件系统的大型级联Markdown文件,而不会使LLM上下文窗口饱和或编写复杂的CLI脚本。
快速入门(与AI助手一起使用)
MCP服务器充当LLM和本地工具之间的桥梁。要实际使用此服务器,您需要将其插入AI编码助手,例如 光标 或 克劳德桌面版.
最简单的方法就是使用 npx,它将自动从NPM下载并运行服务器的最新版本。
1.光标(推荐)
- 打开光标设置->功能->MCP
- 点击 +添加新的MCP服务器
- 配置设置:
- 类型: command - 名字: unified-sf-docs - 命令: npx -y unified-sf-docs-mcp
- 单击“保存”。Cursor将立即下载软件包,并将5个新工具展示给Cursor Agent。
2.克劳德桌面
- 打开Claude Desktop配置文件:
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json - 窗户: %APPDATA%\Claude\claude_desktop_config.json
- 将以下条目添加到您的
mcpServers对象:
{
"mcpServers": {
"unified-sf-docs": {
"command": "npx",
"args": [
"-y",
"unified-sf-docs-mcp"
],
"env": {
"SF_DOCS_DB_DIR": "/absolute/path/to/your/private/github/repository"
}
}
}
}- 重新启动克劳德桌面。现在,在与Claude交谈时,这些工具将可用!
3.Git支持的持久化(团队共享和矢量同步)
默认情况下,SQLite数据库完全离线安全存储在 ~/.unified-sf-docs-mcp/salesforce-docs.db.
如果你想在多台计算机上同步你抓取的人工智能知识库,或者共享一个预先抓取的 docs.db 拥有私人工程团队的矢量数据库:
- 创建一个 私人 Git仓库(例如在GitHub上)。 *注意:请将其保密,以避免公开分发Salesforce的版权材料。*
- 将其克隆到本地计算机(例如。
/Users/todd/my-private-sf-kb). - 添加
SF_DOCS_DB_DIR环境变量指向您的Cursor或Claude Desktop MCP设置,指向您的克隆文件夹。 - 跑
mass_extract_guide通过您的AI抓取文档。100MB+salesforce-docs.db将在Git存储库中安全创建,准备提交和推送!
______________________________________________________________________
本地开发和测试
如果你想自己修改源代码,你可以将你的AI助手指向本地安装,而不是使用 npx:
- 克隆存储库:
git clone https://github.com/tmtrevisan/unified-sf-docs-mcp.git
cd unified-sf-docs-mcp- 安装和构建:
npm install && npm run build*(注意:服务器从编译的 /dist 目录,因此需要构建)。*
您可以使用提供的测试脚本根据不同的Salesforce URL布局验证核心功能或抓取器:
# 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- 更新您的MCP配置:
- 类型: command - 命令: node /ABSOLUTE/PATH/TO/unified-sf-docs-mcp/dist/index.js
