Salesforce MCP Server について
Salesforce MCP Server は、jsforce を用いて REST API 経由で Salesforce に接続する MCP サーバーです。AI から Salesforce のデータを照会・更新したい開発者やチーム向けで、Smithery を使って Claude Desktop にインストールできます。
主な機能
- 01SOQL クエリの実行
- 02オブジェクトメタデータの取得
- 03レコードの作成・更新・削除
- 04認証情報の安全な処理
- 05リアルタイムのデータアクセス
活用シーン
- 01AI アシスタントによる Salesforce の取引先・取引先責任者データの照会
- 02MCP クライアントからの Salesforce オブジェクト構造の参照
- 03会話中の Salesforce レコードの作成・更新
MCP 対応
本プロジェクトは MCP サーバーであり、query、describe-object、create、update、delete などのツールを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Salesforce MCP サーバー
jsforce を使用し、REST API を通じて Salesforce と連携する Model Context Protocol サーバーの実装です。
Smithery 経由でのインストール
Smithery 経由で、Claude Desktop 用 Salesforce サーバーを自動的にインストールするには:
npx -y @smithery/cli install salesforce-mcp-server --client claude
機能
- SOQL クエリを実行
- オブジェクトのメタデータを取得
- レコードを作成、更新、削除
- 認証情報を安全に処理
- リアルタイムのデータアクセス
セットアップ
- リポジトリをクローンします
.env.exampleを.envにコピーし、Salesforce の認証情報を入力します- 依存関係をインストールします:
npm install - ビルドします:
npm run build - 起動します:
npm start
使用方法
サーバーは複数の関数を公開します:
query
Salesforce インスタンスに対して SOQL クエリを実行します:
{
"name": "query",
"parameters": {
"query": "SELECT Id, Name FROM Account LIMIT 5"
}
}
describe-object
Salesforce オブジェクトのメタデータを取得します:
{
"name": "describe-object",
"parameters": {
"objectName": "Account"
}
}
create
新しいレコードを作成します:
{
"name": "create",
"parameters": {
"objectName": "Contact",
"data": {
"FirstName": "John",
"LastName": "Doe",
"Email": "[email protected]"
}
}
}
update
既存のレコードを更新します:
{
"name": "update",
"parameters": {
"objectName": "Contact",
"data": {
"Id": "003XXXXXXXXXXXXXXX",
"Email": "[email protected]"
}
}
}
delete
レコードを削除します:
{
"name": "delete",
"parameters": {
"objectName": "Contact",
"id": "003XXXXXXXXXXXXXXX"
}
}
eval の実行
eval パッケージは MCP クライアントを読み込み、その後 index.ts ファイルを実行するため、テストのたびに再ビルドする必要はありません。npx コマンドの前に環境変数を指定して読み込むことができます。詳しいドキュメントはこちらをご覧ください。
OPENAI_API_KEY=your-key npx mcp-eval src/evals/evals.ts src/tools.ts
セキュリティ
以下を徹底してください:
.envファイルを安全に保管し、決してコミットしないでください- 可能な場合は Salesforce で IP 制限を使用してください
- セキュリティトークンを定期的にローテーションしてください
- MCP サーバーに追加の認証を実装することを検討してください
コントリビューション
コントリビューションを歓迎します!改善内容を添えて PR を送信してください。
Salesforce MCP サーバー
jsforce を使用し、REST API を通じて Salesforce と連携する Model Context Protocol サーバーの実装です。
Smithery 経由でのインストール
Smithery 経由で、Claude Desktop 用 Salesforce サーバーを自動的にインストールするには:
npx -y @smithery/cli install salesforce-mcp-server --client claude
機能
- SOQL クエリを実行
- オブジェクトのメタデータを取得
- レコードを作成、更新、削除
- 認証情報を安全に処理
- リアルタイムのデータアクセス
セットアップ
- リポジトリをクローンします
.env.exampleを.envにコピーし、Salesforce の認証情報を入力します- 依存関係をインストールします:
npm install - ビルドします:
npm run build - 起動します:
npm start
使用方法
サーバーは複数の関数を公開します:
query
Salesforce インスタンスに対して SOQL クエリを実行します:
{
"name": "query",
"parameters": {
"query": "SELECT Id, Name FROM Account LIMIT 5"
}
}
describe-object
Salesforce オブジェクトのメタデータを取得します:
{
"name": "describe-object",
"parameters": {
"objectName": "Account"
}
}
create
新しいレコードを作成します:
{
"name": "create",
"parameters": {
"objectName": "Contact",
"data": {
"FirstName": "John",
"LastName": "Doe",
"Email": "[email protected]"
}
}
}
update
既存のレコードを更新します:
{
"name": "update",
"parameters": {
"objectName": "Contact",
"data": {
"Id": "003XXXXXXXXXXXXXXX",
"Email": "[email protected]"
}
}
}
delete
レコードを削除します:
{
"name": "delete",
"parameters": {
"objectName": "Contact",
"id": "003XXXXXXXXXXXXXXX"
}
}
セキュリティ
以下を徹底してください:
.envファイルを安全に保管し、決してコミットしないでください- 可能な場合は Salesforce で IP 制限を使用してください
- セキュリティトークンを定期的にローテーションしてください
- MCP サーバーに追加の認証を実装することを検討してください
コントリビューション
コントリビューションを歓迎します!改善内容を添えて PR を送信してください。
ライセンス
MIT ライセンス
MIT License
Copyright (c) 2024 Kablewy,LLC
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
