Salesforce MCP Sample Integration について
Salesforce MCP Sample Integrationは、Salesforceの機能をMCPに接続する基本例です。メール送信やApexコードのデプロイにMCPツールを使う開発者向けです。
主な機能
- 01JWT Bearer FlowによるSalesforce接続
- 02メール送信用のMCPツール
- 03Apexコードデプロイ用のMCPツール
活用シーン
- 01MCPクライアントからSalesforceでメールを送信
- 02MCPクライアントからApexコードをデプロイ
MCP 対応
Salesforceのメール送信とApexデプロイをツールとして公開するMCPサーバーを実装します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Salesforce MCP サンプル統合
このプロジェクトでは、Model Context Protocol(MCP)を使用して Salesforce と統合する基本的な例を紹介します。MCP ツールを通じて、メールの送信や Apex コードのデプロイなど、Salesforce の機能を操作できます。
前提条件
- Node.js と npm(または yarn)がインストールされていること。
- Connected App を作成できる Salesforce 組織があること。
セットアップ
-
依存関係をインストールします:
npm install # or yarn install -
Salesforce 認証情報を設定します:
utilsフォルダー内にcredentials.jsファイル(./utils/credentials.js)を必ず作成してください。- このファイルでは、JWT Bearer Flow 認証に必要な Salesforce 接続情報を返す関数
getSalesforceCredentials()をエクスポートする必要があります。 - 重要: JWT 認証に対応する Connected App を Salesforce で設定し、適切なスコープを許可したうえで、該当するユーザープロファイルを事前承認してください。
utils/credentials.jsの例:import fs from 'fs'; import path from 'path'; // 環境変数や設定ファイルなどから読み込むことができます。 export function getSalesforceCredentials() { // --- 認証情報を安全に読み込むロジックをここに実装してください --- const loginUrl = "YOUR_SALESFORCE_LOGIN_URL"; // 例: https://login.salesforce.com または https://yourdomain.my.salesforce.com const username = "YOUR_SALESFORCE_USERNAME"; const clientId = "YOUR_CONNECTED_APP_CONSUMER_KEY"; // JWT アサーションへの署名に使用する秘密鍵を読み込みます // BEGIN/END 行を含め、鍵が正しい形式になっていることを確認してください。 const privateKey = fs.readFileSync(path.resolve(__dirname, 'path/to/your/server.key'), 'utf8'); // 例: const privateKey = process.env.SF_PRIVATE_KEY; if (!loginUrl || !username || !clientId || !privateKey) { throw new Error("utils/credentials.js に必要な Salesforce 認証情報がありません"); } return { loginUrl, username, clientId, privateKey }; } -
設定ファイル:
- リポジトリには、MCP サーバーの設定に使用できるテンプレートとして、サンプルの
claude_desktop_config.jsonファイルが含まれています。 - このファイル内のパスと認証情報を、使用環境に合わせて更新してください。
- リポジトリには、MCP サーバーの設定に使用できるテンプレートとして、サンプルの
サーバーの実行
node server.js
デモ
https://github.com/user-attachments/assets/08c8015a-bc57-4c5e-9f3d-4a9d9d310f4c
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。