article
README
🚀 Salesforce MCP 服务器
Salesforce MCP 服务器是一款借助自然语言处理(NLP)技术,实现与 Salesforce 数据交互的工具。它提供了智能对象搜索、架构信息检索、数据查询等一系列实用功能,能有效提升与 Salesforce 数据交互的效率。
🚀 快速开始
要使用 Salesforce MCP 服务器,需先满足以下先决条件,再根据自身需求选择合适的安装与配置方式。
先决条件
- 安装 Python 3.6 或更高版本。
- 安装并配置 Docker(用于运行容器化环境)。
- 获取 Salesforce 开发者沙盒或生产环境的访问权限。
- 熟悉 Salesforce 的 API 和 SOQL 查询语法。
安装与配置
使用 Docker 运行
- 下载并安装 Docker:https://www.docker.com/get-started
- 克隆项目仓库:
git clone https://github.com/your-username/salesforce-mcp-server.git - 进入项目目录:
cd salesforce-mcp-server - 启动 Docker 容器:
docker-compose up --build - 访问 MCP 服务器控制台,默认端口为 5000。
在 VS Code 中配置
- 打开 VS Code 并安装以下扩展:
- Python
- Docker
- 将项目文件夹添加到 VS Code 的工作区中。
- 安装依赖项:
pip install -r requirements.txt - 启动服务器:
python server.py
✨ 主要特性
- 智能对象搜索:查找与特定主题相关的 Salesforce 对象。
- 架构信息检索:获取 Salesforce 对象的字段、关系及约束。
- 数据查询:执行 SOQL 查询以检索符合条件的数据记录。
- 字段类型筛选:按数据类型筛选 Salesforce 对象中的字段。
- 下拉列表值获取:提取 Salesforce 下拉字段的所有可能值。
- 调试日志管理:启用、禁用或检索特定用户的调试日志。
- 验证规则查看:了解 Salesforce 对象上的所有验证规则。
💻 使用示例
基础用法
搜索对象
# 搜索与 Account 相关的对象
search_objects("Account")
# 显示处理客户关系的对象
search_objects("Customer Service")
# 列出订单管理可用的对象
search_objects("Order Management")
获取架构信息
# 获取 Account 对象的字段
describe_object("Account")
# 展示 Case 状态的下拉值
describe_picklist_values("Case", "Status")
# 查看 Opportunity 的关系字段
describe_relationship_fields("Opportunity")
查询记录
# 检索本月创建的所有 Account 记录
query_records("Account", ["Id", "Name", "Industry"],
where="createdDate >= LAST_N_DAYS:30",
limit=10)
# 显示高优先级的 Case 及其相关 Contact
query_records("Case", ["Id", "Subject", "Priority", "ContactId"],
where="Priority = 'High'",
fields=["Account.Name"])
按类型筛选字段
# 列出 Lead 对象上的所有下拉字段
get_fields_by_type("Lead", "Picklist")
# 获取 Opportunity 上的所有引用字段
get_fields_by_type("Opportunity", "Lookup")
# 查找 Account 对象上所有必填字段
get_fields_by_type("Account", "Required")
管理调试日志
# 启用特定用户的调试日志
manage_debug_logs(action="enable", user_id="user@example.com")
# 检索管理员用户的最近日志
manage_debug_logs(action="retrieve", user_id="admin@company.com")
# 禁用指定用户的所有日志记录
manage_debug_logs(action="disable", user_id="developer@organization.com")
获取验证规则
# 展示 Opportunity 对象上的所有验证规则
get_validation_rules("Opportunity")
# 了解 Account 对象的约束条件
get_validation_rules("Account")
# 列出自定义对象的所有验证规则
get_validation_rules("Custom_Object__c")
📚 详细文档
开发指南
项目结构
salesforce-mcp-server/
├── server.py # 主服务器文件
├── config.py # 配置管理模块
├── routes/ # 路由定义和处理函数
│ ├── objects.py # 对象相关路由
│ └── queries.py # 查询相关路由
└── utils/ # 工具函数库
├── decorators.py # 请求处理装饰器
├── auth.py # 认证模块
└── db_connection.py # 数据库连接池管理
开发步骤
- 安装依赖:
pip install -r requirements.txt - 配置环境变量:
在
.env文件中添加以下内容:SALESFORCE_USERNAME=your_username@example.com SALESFORCE_PASSWORD=your_password SALESFORCE_SECURITY_TOKEN=your_token - 启动开发服务器:
python server.py --mode debug - 编写自定义路由:
在
routes/目录下添加新的 Python 文件,继承自BaseRoute类。 - 调试与测试:
使用 VS Code 的调试功能或在终端中运行单元测试:
pytest tests/
贡献指南
欢迎社区贡献!请遵循以下步骤:
- ** Fork 项目仓库**
- ** 创建新的分支**:
git checkout -b feature/your-feature-name - ** 提交更改**:
git add . && git commit -m '你的提交信息' - ** 推送到远程仓库**:
git push origin feature/your-feature-name - ** 提交 Pull Request**
📄 许可证
本项目遵循 MIT 许可证。查看 LICENSE 文件获取详细信息。
📞 联系方式
如有任何问题,请通过以下方式联系:
- 邮箱:support@salesforce.com
- GitHub 仓库:https://github.com/your-username/salesforce-mcp-server
Scan to join WeChat group