mcpField
M
MCP Salesforce Server

MCP Salesforce Server

ローカル
github.com/AiondaDotComデータ・分析174 週間前に更新

MCP Salesforce Server について

MCP Salesforce Serverは、SalesforceをMCPクライアントに接続し、CRMデータを照会・管理するチーム向けです。カスタムオブジェクトや項目に対応し、組織のスキーマ学習とバックアップも行います。

主な機能

  1. 01OAuth認証とトークン更新
  2. 02レコードの照会・CRUD操作
  3. 03オブジェクトと項目のスキーマ検出
  4. 04Salesforceのカスタマイズ学習
  5. 05データ・ファイル・スキーマのバックアップ

活用シーン

  1. 01Salesforceレコードの照会
  2. 02連絡先や他のオブジェクトの管理
  3. 03組織のカスタム項目の確認
  4. 04復旧分析に向けたデータのバックアップ

MCP 対応

MCP サーバーとして、Salesforceの照会、レコード管理、スキーマ確認、組織の学習、バックアップのツールをクライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"salesforce": {
"command": "npx",
"args": [
"-y",
"@aiondadotcom/mcp-salesforce"
],
"env": {
"SALESFORCE_CLIENT_ID": "<SALESFORCE_CLIENT_ID>",
"SALESFORCE_CLIENT_SECRET": "<SALESFORCE_CLIENT_SECRET>",
"SALESFORCE_INSTANCE_URL": "<SALESFORCE_INSTANCE_URL>"
}
}
}
}
起動コマンドnpx -y @aiondadotcom/mcp-salesforce
設定が必要な環境変数
SALESFORCE_CLIENT_ID
SALESFORCE_CLIENT_SECRETシークレット
SALESFORCE_INSTANCE_URL

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@aiondadotcom/mcp-salesforce

ツール

14

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
clientIdstringはいSalesforce Connected App のクライアント ID(Consumer Key)。
instanceUrlstringはいSalesforce インスタンス URL(例:https://mycompany.salesforce.com)。
clientSecretstringはいSalesforce Connected App のクライアントシークレット(Consumer Secret)。

詳細

MCP Salesforce Server

CI

OAuth 認証を使用してSalesforceとシームレスに連携するModel Context Protocol(MCP)サーバーです。このサーバーを使うと、ClaudeなどのAIアシスタントが、安全で汎用的なインターフェースを通じて任意のSalesforce組織とやり取りできます。

✨ 特長

  • 🎯 シームレスな認証 - 認証が必要な場合、Claudeが自動的に検出し、透過的に処理します
  • 🚀 手動セットアップ不要 - ターミナルコマンドや手動でのOAuthフローの実行は不要です
  • 🔐 OAuthのみの認証 - トークンを自動更新する、安全なブラウザベースのセットアップ
  • 🌐 Salesforceとの汎用連携 - カスタムオブジェクトやカスタム項目を含む、あらゆるSalesforce組織で動作します
  • 🧠 インストール環境のスマート学習 - Salesforceの環境全体を分析し、的確な支援を提供します
  • 🔍 動的なスキーマ検出 - Salesforceの設定に自動的に適応します
  • 🔒 安全なトークン保存 - 本番環境に適したセキュリティを実現する、厳格なアクセス権限付きのファイルベース保存
  • 🏠 クロスプラットフォーム対応のホームディレクトリ保存 - 認証情報とキャッシュをユーザーのホームディレクトリに保存します
  • 📝 完全なCRUD操作 - Salesforceのあらゆるレコードを検索、作成、更新、削除できます
  • 📊 スキーマ検査 - オブジェクトと項目に関する詳細情報を取得します
  • 💡 コンテキストに応じた提案 - 項目名やオブジェクト名を的確に提案します
  • 💾 包括的なバックアップシステム - すべてのSalesforceファイルシステムに対応した、データとファイルの完全なバックアップ
  • ⏰ タイムマシン機能 - 特定時点のデータ復元と履歴分析
  • 📁 複数形式のファイル対応 - 適切なメタデータを含めて、ContentVersions、Attachments、Documentsをバックアップします

🚀 クイックスタート

前提条件
  • Node.js 18+
  • macOS(安全な認証情報の保存に必要)
  • OAuthを設定済みのSalesforce Connected App
インストール方法
🎯 推奨:NPXでの利用(インストール不要)

NPXを使うと、永続的なインストールなしでMCPサーバーを実行できます。

{
  "mcpServers": {
    "salesforce": {
      "command": "npx",
      "args": ["@aiondadotcom/mcp-salesforce"]
    }
  }
}

✅ NPXを使うメリット:

  • 🔄 常に最新:公開済みの最新バージョンを自動的に使用します
  • 💾 ディスク容量不要:永続的なインストールは不要です
  • 🛡️ 競合なし:グローバルパッケージとの競合がありません
  • ⚡ 簡単に更新:再起動するだけで、自動的に最新バージョンを取得します
  • 📋 シンプルな設定:コピーしてすぐ使えるMCP設定

NPXのコマンドラインでの利用方法:

# Get version
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce --version

# Get help
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce --help

# Run OAuth setup
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce setup
🔧 別の方法:開発環境のセットアップ

開発やカスタマイズを行う場合:

  1. クローンして依存関係をインストールする:

    git clone https://github.com/AiondaDotCom/mcp-salesforce.git
    cd mcp-salesforce
    npm install
    
  2. 認証情報を設定する:プロンプトが表示されたら、salesforce_setupツールを使って認証情報を設定します

  3. ローカルパスを使ってClaude Desktopに追加する:Configurationを参照してください

🎯 利用開始

これで準備完了です。初めてSalesforceツールを使うときに、Claudeがセットアップと認証を自動的に処理します。

✨ 対話型セットアッププロセス!

  • salesforce_setupツールを使って認証情報を設定します
  • ClaudeがSalesforce Connected Appの詳細を尋ねます
  • 認証情報はホームディレクトリに安全に保存されます
  • Claude Desktopから直接、シームレスなOAuthフローを実行できます

🧠 スマート学習システム

  • salesforce_learnを使ってSalesforce環境全体を分析します
  • Claudeがカスタムオブジェクト、項目、リレーションをすべて学習します
  • 個々の環境に応じた的確な提案を行います
  • 複雑なSalesforce環境にも、コンテキストを考慮した支援を提供します

📦 NPMパッケージの状況

✅ パッケージの公開に成功しました!

パッケージ@aiondadotcom/mcp-salesforceはNPMで公開済みで、利用可能です。

公開済みパッケージの利用

NPXはすべてのユーザーが利用できます。

# Test the published package
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce --version
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce --help

# Run OAuth setup
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce setup
公開詳細
  • パッケージ名: @aiondadotcom/mcp-salesforce
  • バージョン: 1.0.7(最新)
  • レジストリ: NPM Public Registry
  • 組織: @aiondadotcom
  • アクセス: パブリック

ステータス:

  • ✅ パッケージを NPM に公開済み
  • ✅ NPX との互換性を検証済み
  • ✅ バイナリーラッパーを実装済み
  • ✅ セットアップコマンドが機能
  • ✅ MCP 設定の準備完了
  • ✅ すぐに利用可能

🎉 NPX のすべての機能が、世界中のエンドユーザーにご利用いただけるようになりました!

🔧 設定

Salesforce 接続アプリのセットアップ
  1. Salesforce の設定で、新しい接続アプリを作成します。

    • アプリ名: MCP Salesforce Integration
    • API 名: mcp_salesforce_integration
    • 連絡先メールアドレス: ご自身のメールアドレス
    • OAuth 設定を有効にする: ✅ はい
    • コールバック URL: http://localhost:9876/callback

      ポート 9876 は、一般的な開発サーバー(8080、8000、3000)や広く知られたサービスとの競合を避けるため、意図的に選択されています。

    • 選択した OAuth スコープ:
      • API 経由でユーザーデータを管理(api)
      • いつでもリクエストを実行(refresh_token, offline_access)
  2. 保存後、コンシューマーキーとコンシューマーシークレットをコピーします。

認証情報の設定

アプリケーションを初めて使用するときに、salesforce_setup ツールを使って認証情報を設定します。

  1. 対話型セットアップ: Claude が Salesforce の認証情報を尋ねます。
  2. クライアント ID: Salesforce 接続アプリのコンシューマーキー
  3. クライアントシークレット: Salesforce 接続アプリのコンシューマーシークレット
  4. インスタンス URL: Salesforce 組織の URL(例: https://mycompany.salesforce.com)

ツールは入力内容を検証し、制限付き権限(600)で認証情報を ~/.mcp-salesforce.json に安全に保存します。

📁 ファイルの場所:

  • 認証情報: ~/.mcp-salesforce.json(OAuth トークンと認証情報を含みます)
  • キャッシュ: ~/.mcp-salesforce-cache/(学習済みの Salesforce スキーマとコンテキストを含みます)
  • クロスプラットフォーム: Windows、macOS、Linux で動作します

対話例:

Claude: I need to set up your Salesforce credentials first. Please use the salesforce_setup tool with your credentials.

You: Use the salesforce_setup tool with clientId: "3MVG9...", clientSecret: "1234567890...", instanceUrl: "https://mycompany.salesforce.com"

Claude: ✅ Salesforce credentials configured successfully! You can now use other Salesforce tools.
Claude Desktop との統合
🎯 NPX 設定(推奨)

以下を Claude Desktop の MCP 設定(~/Library/Application Support/Claude/claude_desktop_config.json)に追加します。

{
  "mcpServers": {
    "salesforce": {
      "command": "npx",
      "args": ["@aiondadotcom/mcp-salesforce"]
    }
  }
}
🔧 開発/ローカル設定

開発環境またはカスタマイズしたインストールの場合:

{
  "mcpServers": {
    "salesforce": {
      "command": "node",
      "args": ["/path/to/mcp-salesforce/src/index.js"]
    }
  }
}
🌐 VS Code MCP 設定

MCP 拡張機能を使う VS Code の場合:

{
  "servers": {
    "salesforce": {
      "command": "npx",
      "args": ["@aiondadotcom/mcp-salesforce"]
    }
  }
}

📸 デモのスクリーンショット

MCP Salesforce Server の動作を、実際のユースケースを使って手順ごとに紹介します。会社の住所情報を確認して更新する例です。

ステップ 1: 住所の確認依頼

住所の確認 Claude が、Salesforce の Aionda GmbH アカウントの住所が正しいかどうか、現在のウェブサイトに掲載された住所と比較して確認しています

ステップ 2: 住所の比較結果

住所の分析 Claude が Salesforce の住所が古いことを特定し、現在の Salesforce データと会社のウェブサイトに掲載された実際の住所を詳細に比較しています

ステップ 3: 住所の自動更新

住所の更新 Claude が Salesforce アカウントを正しい最新の住所に更新し、変更した項目を具体的に示しています

ステップ 4: Salesforce での確認

Salesforce での確認 更新された Salesforce のアカウントレコードに、修正後の住所情報が正確かつ最新の状態で表示されています

🛠️ 利用可能なツール

salesforce_learn

🧠 Salesforce 環境全体を学習します - すべてのオブジェクト、項目、カスタマイズを一度分析し、この情報をローカルに保存して、インテリジェントな支援に活用します。

// One-time analysis of the Salesforce installation
{}

// Force complete re-analysis
{
  "force_refresh": true,
  "detailed_relationships": true
}

重要な理由:

  • Claude は「TimeTracking__c」「Project__c」などのカスタムオブジェクトを学習します。
  • すべてのカスタム項目とそのデータ型を認識します。
  • お使いの環境固有の設定に基づいて、適切な提案を行います。
  • 一度実行すれば、以降も AI がその情報を活用できます。
salesforce_installation_info

📊 学習済みの Salesforce インストールの概要 - 利用可能なオブジェクト、カスタム項目、カスタマイズを表示します。

// Complete overview of the installation
{}

// Details about a specific object
{
  "object_name": "TimeTracking__c"
}

// Search for specific fields
{
  "field_search": "email",
  "show_custom_only": true
}
salesforce_query

任意の Salesforce オブジェクトに対して SOQL クエリを実行します。

// Example: Get recent contacts
{
  "query": "SELECT Id, FirstName, LastName, Email FROM Contact WHERE CreatedDate = THIS_MONTH ORDER BY CreatedDate DESC LIMIT 10"
}

🧠 スマートな学習連携:

  • インストールがまだ学習されていない場合に自動で警告します
  • 利用可能なオブジェクトと項目を提案します
  • 正しい API 名の使用を支援します
salesforce_create

任意の Salesforce オブジェクトに新しいレコードを作成します。

// Example: Create a new contact
{
  "sobject": "Contact",
  "data": {
    "FirstName": "John",
    "LastName": "Doe", 
    "Email": "[email protected]",
    "Phone": "555-1234"
  }
}

🧠 スマートコンテキスト: インストールの学習が完了している場合、選択したオブジェクトの必須項目を自動的に表示します。

salesforce_update

既存のレコードを更新します。

// Example: Update a contact's email
{
  "sobject": "Contact",
  "id": "003XX000008b6cYAQ",
  "data": {
    "Email": "[email protected]",
    "Phone": "555-5678"
  }
}

🧠 スマートコンテキスト: 学習済みのインストールから項目の権限とデータ型を考慮します。

salesforce_delete

レコードを削除します(⚠️ 元に戻せない操作です)。

// Example: Delete a record
{
  "sobject": "Contact", 
  "id": "003XX000008b6cYAQ"
}
salesforce_describe

オブジェクトと項目のスキーマ情報を取得します。

// Example: Get Contact object schema
{
  "sobject": "Contact"
}

// Or get list of all available objects
{} // Empty parameters
salesforce_backup

💾 Salesforce の包括的なバックアップシステム - 詳細な復旧情報とともに、すべてのデータとファイルの完全なバックアップを作成します。

// Create complete backup
{}

// Incremental backup since specific date
{
  "backup_type": "incremental",
  "since_date": "2025-01-01T00:00:00Z"
}

// Backup with specific options
{
  "options": {
    "include_files": true,
    "include_attachments": true,
    "include_documents": true,
    "parallel_downloads": 10
  }
}

バックアップ対象:

  • 📊 すべてのオブジェクトデータ - クエリ可能なすべてのオブジェクト(各オブジェクト最大 20 項目)
  • 📁 最新のファイル - 完全なメタデータを含む ContentVersions
  • 📎 従来の添付ファイル - 正しいファイル拡張子を持つ従来の添付ファイル
  • 📄 ドキュメント - 従来のシステムにあるフォルダー別ドキュメント
  • 🏗️ スキーマ情報 - オブジェクト構造と関連情報の全体
  • 📋 バックアップマニフェスト - 詳細な統計情報と復旧情報

バックアップ構成:

salesforce-backup-2025-06-04T16-16-35-660Z/
├── metadata/           # Schema and object definitions
├── data/              # JSON data of all objects
├── files/
│   ├── content-versions/  # Modern files
│   ├── attachments/       # Legacy attachments
│   └── documents/         # Legacy documents
└── backup-manifest.json   # Backup overview
salesforce_backup_list

📋 利用可能なバックアップを表示 - 統計情報とメタデータを含む、すべてのローカルバックアップの概要です。

// List all available backups
{}

// Details about a specific backup
{
  "backup_name": "salesforce-backup-2025-06-04T16-16-35-660Z"
}
salesforce_time_machine

⏰ Salesforce データを時系列で確認 - 異なるバックアップ時点間のデータ変更を分析し、対象を絞った復旧を可能にします。

// Compare current state with a backup
{
  "backup_timestamp": "2025-06-04T16:16:35.660Z",
  "object_name": "Account"
}

// Show all changes since a specific backup
{
  "backup_timestamp": "2025-06-04T16:16:35.660Z",
  "show_all_changes": true
}

// Detailed analysis for specific records
{
  "backup_timestamp": "2025-06-04T16:16:35.660Z",
  "object_name": "Contact", 
  "record_id": "003XX000008b6cYAQ"
}

タイムマシンの機能:

  • 📊 データ比較 - バックアップと現在の状態の差分を表示します
  • 🔍 変更履歴 - どの項目がいつ変更されたかを表示します
  • 🗑️ 削除されたレコード - バックアップ以降に削除されたレコードを検索します
  • 📈 増加分析 - データの推移を統計的に評価します
  • 🎯 対象を絞った復旧 - 変更を正確に特定します
salesforce_auth

Salesforce で認証します。認証が必要かどうかを自動で検出し、OAuth フローを処理します。

// Example: Standard authentication (detects if needed)
{}

// Example: Force re-authentication even if tokens appear valid
{
  "force": true
}

✨ 主な機能:

  • 自動検出:認証が必要な場合、Claude がこのツールを自動的に提案します
  • 手動セットアップ不要:npm run setup を手動で実行する必要がありません
  • スマート認証:必要な場合にのみ認証し、まず既存のトークンを確認します
  • シームレスな連携:バックグラウンドで透過的に動作します

次の場合に、このツールが自動的に提案されます:

  • 認証なしで Salesforce ツールを使用しようとした場合
  • トークンの有効期限が切れた場合
  • 認証エラーが発生した場合
  • 初回セットアップが必要な場合

🧠 スマート学習システム

学習が重要な理由

Salesforce のインストール環境はそれぞれ異なり、次のような要素があります:

  • 「TimeTracking__c」「Project__c」「CustomerCare__c」のようなカスタムオブジェクト
  • 標準オブジェクト上のカスタム項目
  • 固有のワークフローと入力規則
  • 個別のデータ構造

AI の通常の学習モデルが把握しているのは、標準の Salesforce オブジェクトだけです。特定のインストール環境に関する知識がなければ、AI は的確な支援を提供できません。

学習の仕組み
  1. 一度だけの分析:salesforce_learn がインストール環境全体を分析します
  2. ローカルドキュメント:すべてのオブジェクト、項目、関連情報をローカルに保存します
  3. インテリジェントなサポート:その後、Claude が正確な提案を行い、複雑な質問に回答できるようになります
ワークフローの例:
You: "Are there any time tracking entries for July 2025?"

Without Learning:
❌ Claude: "I don't know any object called 'TimeTracking'"

With Learning:
✅ Claude: "I'm checking the 'TimeTracking__c' object for entries from July 2025..."
   Automatically executes the correct SOQL query
学習を利用するタイミング
  • 初期セットアップ時 - インストール後に一度実行します
  • 大幅な変更後 - 新しいカスタムオブジェクトが追加されたとき
  • 問題が発生したとき - Claude がオブジェクトや項目を見つけられないとき
学習される内容
  • すべての SObject(標準およびカスタム)
  • データ型と権限を含むすべてのフィールド
  • オブジェクト間のリレーションシップ
  • 選択リストの値と入力規則
  • より適切な検証のための必須フィールド

💡 学習は一度だけ実行され、その後のすべてのやり取りがよりインテリジェントになります!

💡 使用例

🚀 インストール後の最初の手順
  1. 認証:認証が必要になると、Claude が自動的に検出します
  2. 学習の開始:
    You: "Learn my Salesforce installation"
    Claude: Automatically uses the salesforce_learn tool
    
  3. インストール内容の確認:
    You: "Show me an overview of my Salesforce installation"
    Claude: Uses salesforce_installation_info for a summary
    
🔍 学習済みのインストールを使ったインテリジェントなクエリ
You: "Show me all projects from this year"
Claude: Automatically recognizes your "Project__c" Custom Object and creates:
SELECT Id, Name, StartDate__c, Status__c FROM Project__c WHERE CALENDAR_YEAR(CreatedDate) = 2025
You: "Are there any time tracking entries for July 2025?"
Claude: Finds your "TimeTracking__c" object and queries:
SELECT Id, Name, Month__c, Hours__c FROM TimeTracking__c WHERE Month__c = 'July 2025'
クエリの例
-- Get all accounts in the technology industry
SELECT Id, Name, Industry, Website FROM Account WHERE Industry = 'Technology'

-- Find contacts created this week
SELECT Id, Name, Email, CreatedDate FROM Contact WHERE CreatedDate = THIS_WEEK

-- Get opportunities closing this quarter
SELECT Id, Name, Amount, CloseDate FROM Opportunity WHERE CloseDate = THIS_QUARTER
カスタムオブジェクトの操作

サーバーはカスタムオブジェクトを自動的に検出します。

// Describe a custom object
{
  "sobject": "CustomProject__c"
}

// Query custom object
{
  "query": "SELECT Id, Name, CustomField__c FROM CustomProject__c LIMIT 10"
}

// Create custom object record
{
  "sobject": "CustomProject__c",
  "data": {
    "Name": "New Project",
    "CustomField__c": "Custom Value"
  }
}

💾 バックアップとタイムマシン機能

🚀 Salesforce バックアップシステム

MCP Salesforce Server は、Salesforce のインストール環境全体を保護できるプロフェッショナルなバックアップシステムを提供します。

バックアップシステムの特長
  • 🎯 完全なカバー範囲:Salesforce の3つのファイルシステムすべてをバックアップします

    • モダンファイル(ContentDocument/ContentVersion)
    • レガシー添付ファイル(従来の添付ファイル)
    • ドキュメント(フォルダー形式のレガシードキュメント)
  • 📊 インテリジェントなデータ収集:

    • クエリ可能なすべてのオブジェクト(標準+カスタム)
    • 包括的なデータバックアップのため、オブジェクトごとに最大20フィールド
    • バイナリフィールドを自動的に除外
  • ⚡ 高パフォーマンス:

    • 同時実行数を設定できる並列ダウンロード
    • 指数バックオフによる再試行ロジック
    • 大量のデータを処理するためのバッチ処理
バックアップの作成
You: "Create a backup of my Salesforce data"
Claude: Automatically starts the salesforce_backup tool

バックアップ結果:

✅ Backup successfully created!
📊 Statistics:
- 7 objects backed up
- 1,247 records exported  
- 6 files downloaded
- 4.07 MB total size
- Duration: 23 seconds

📁 Location: /backups/salesforce-backup-2025-06-04T16-16-35-660Z/
バックアップの構成
salesforce-backup-2025-06-04T16-16-35-660Z/
├── backup-manifest.json     # Backup overview with statistics
├── metadata/
│   ├── objects-schema.json  # All object definitions
│   └── file-manifest.json   # File download protocol
├── data/                    # JSON data of all objects
│   ├── Account.json         # Account records
│   ├── Contact.json         # Contact records
│   ├── Opportunity.json     # Opportunity records
│   └── CustomObject__c.json # Custom Object data
└── files/                   # All Salesforce files
    ├── content-versions/    # Modern files (.pdf, .docx, etc.)
    ├── attachments/         # Legacy attachments
    └── documents/           # Legacy documents
⏰ タイムマシン機能

タイムマシンを使うと、時間をさかのぼってデータの変更を分析できます。

主な機能
  • 🔍 データ比較:現在の状態と過去のバックアップを比較します
  • 📊 変更分析:どのフィールドが変更されたかを正確に表示します
  • 🗑️ 削除されたレコード:バックアップ以降に削除されたレコードを検索します
  • 📈 傾向分析:データの推移を統計的に評価します
タイムマシンの使用
You: "Compare the current Account data with the backup from June 4th"
Claude: Uses salesforce_time_machine for detailed analysis

結果の例:

⏰ Time Machine Analysis - Account Object
📅 Backup: 2025-06-04T16:16:35.660Z vs. Current

📊 Changes found:
• Modified records: 3
• New records: 2  
• Deleted records: 1

🔍 Details:
Account "Aionda GmbH" (001XX000003DHPF):
- BillingStreet: "Alte Straße 1" → "Königstraße 10a"
- BillingCity: "München" → "Stuttgart"
- LastModifiedDate: 2025-06-04 → 2025-06-04

Account "TechCorp Ltd" (001XX000003DHPG):
- Status: Active → Inactive
- LastModifiedDate: 2025-06-03 → 2025-06-04
実用的なユースケース
  1. 📋 コンプライアンスと監査:データ変更の証拠
  2. 🔧 エラー分析:「問題が発生する前と何が違っていましたか?」
  3. 📊 データ品質:データの完全性を監視
  4. 🚨 変更管理:重要な変更を管理
  5. 💡 ビジネスインテリジェンス:経時的な傾向分析
🎯 推奨されるバックアップワークフロー
1. Initial Setup:
   You: "Learn my Salesforce installation"
   → Claude analyzes your complete org
   
2. Regular Backups:
   You: "Create a backup"
   → Claude backs up all data and files
   
3. Monitoring:
   You: "Show me all available backups"
   → Claude lists backup history
   
4. Analysis:
   You: "What has changed since the last backup?"
   → Claude uses Time Machine for comparison

💡 プロのヒント:学習+バックアップ+タイムマシンを組み合わせて、Salesforce を最大限に管理しましょう!

🔒 セキュリティ

  • トークンの保存:リフレッシュトークンは、ファイル権限が制限された cache/salesforce-tokens.json(600)に安全に保存されます
  • 平文のシークレットなし:アクセストークンはメモリ内にのみ保持されます
  • 自動更新:トークンは有効期限が切れる前に自動的に更新されます
  • 安全なクリーンアップ:使用後、トークンはメモリから削除されます
  • 入力検証:すべての入力が検証され、サニタイズされます
  • 移行:安全な認証情報管理のため、ファイルベースのトークンストレージを600の権限で使用します

🧪 テスト

# Run tests
npm test

# Test authentication
npm run setup -- --test

# Validate configuration
npm run setup -- --validate

🐛 トラブルシューティング

認証の問題

🎯 自動認証:Claude は認証の問題を自動的に検出し、salesforce_auth ツールを提案します。手動でのトラブルシューティングは不要です!

よくあるケース:

  1. 初回使用時:Salesforce ツールを初めて使おうとすると、Claude が自動的に認証を提案します
  2. トークンの有効期限切れ:トークンの有効期限が切れると、Claude が検出して再認証を促します
  3. 認証情報が無効:明確なエラーメッセージに従って設定の問題を修正できます
  4. セッションの有効期限切れ:再認証を促すわかりやすいメッセージとともに自動的に検出されます
トークンのセキュリティ

🔒 セキュアなトークンの保存:認証トークンは、厳格な権限設定のもと、ローカルファイルシステムに安全に保存されます。

セキュリティ機能:

  • ファイル権限:トークンファイルは 0600 権限(所有者のみ読み取り・書き込み可能)で作成されます
  • 保存場所:トークンは cache/salesforce-tokens.json に保存されます(git の対象外)
  • 自動セキュリティ:権限を検証し、必要に応じて自動的に修正します
  • ネットワークへの非公開:トークンがローカルマシンの外部に送信されることはありません
  • ファイルベースのセキュリティ:認証情報を保護するため、厳格なファイル権限のもとでトークンを安全に保存します

セキュリティの確認:

# Check token file security
ls -la cache/salesforce-tokens.json
# Should show: -rw------- (600 permissions)

# Run security test
node test-token-security.js

これにより、次のことが保証されます:

  • システム上の他のユーザーは、Salesforce トークンを読み取れません
  • 認証データにアクセスできるのは、あなたのユーザーアカウントだけです
  • Salesforce 組織への不正アクセスを防ぎます
  • 認証情報の保存に関するセキュリティのベストプラクティスに準拠しています
Claude Desktop ですぐに解決

認証エラーが発生した場合は、Claude に次のように伝えるだけです:

Authenticate with Salesforce

または、Claude が自動的に次のように提案します:Use the salesforce_auth tool to authenticate with Salesforce

✨ ターミナルで手動セットアップする必要はもうありません! すべて Claude Desktop を通じてシームレスに行われます。

接続の問題
  1. 「Salesforce に接続できません」:インスタンス URL を確認してください
  2. 「権限が不足しています」:Salesforce のユーザー権限を確認してください
  3. 「CORS エラー」:Connected App のコールバック URL が正しいことを確認してください
よくある SOQL エラー
  1. フィールドが見つからない:フィールドラベルではなく、API 名を使用してください
  2. オブジェクトが見つからない:オブジェクトのスペルと API 名を確認してください
  3. 構文エラー:一重引用符を使い、SOQL の構文が正しいことを確認してください

📚 ドキュメント

🤝 コントリビューション

  1. リポジトリをフォークします
  2. フィーチャーブランチを作成します:git checkout -b feature-name
  3. 変更を加え、十分にテストします
  4. 詳細な説明を添えてプルリクエストを送信します

📄 ライセンス

MIT License — 詳細は LICENSE ファイルをご覧ください。

🆘 サポート

  • 問題:GitHub Issues からバグや機能リクエストを報告してください
  • ドキュメント:詳細なガイドは docs/ フォルダーをご確認ください
  • コミュニティ:GitHub Discussions でディスカッションに参加してください

MCP エコシステムのために ❤️ を込めて作成

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。