mcpField
S
ServiceNow

ServiceNow

ローカル
github.com/mindstoneビジネス・マーケティング13今日更新

ServiceNow について

ServiceNow は、MCP ホスト経由で ServiceNow ITSM のレコードを扱うチーム向けの MCP サーバーです。インシデント、変更、ユーザー、ナレッジ記事、カタログ項目を扱い、Basic Auth と OAuth 2.0 クライアントクレデンシャル認証に対応します。

主な機能

  1. 01インシデントの一覧・検索・管理
  2. 02変更要求の作成と取得
  3. 03ServiceNow ユーザーの検索
  4. 04ナレッジ記事の検索と取得
  5. 05サービスカタログ項目の閲覧

活用シーン

  1. 01サポートインシデントの確認と更新
  2. 02変更要求の登録や検索
  3. 03回答に使う記事の取得
  4. 04サービスカタログの項目検索

MCP 対応

MCP クライアントに、インシデント、変更要求、ユーザー、ナレッジ記事、サービスカタログを扱う 13 種類のツールを提供します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"mindstone-mcp-server-servicenow": {
"command": "npx",
"args": [
"-y",
"@mindstone/mcp-server-servicenow"
],
"env": {
"SERVICENOW_INSTANCE": "<SERVICENOW_INSTANCE>",
"SERVICENOW_USERNAME": "<SERVICENOW_USERNAME>",
"SERVICENOW_PASSWORD": "<SERVICENOW_PASSWORD>",
"SERVICENOW_CLIENT_ID": "<SERVICENOW_CLIENT_ID>",
"SERVICENOW_CLIENT_SECRET": "<SERVICENOW_CLIENT_SECRET>"
}
}
}
}
起動コマンドnpx -y @mindstone/mcp-server-servicenow
設定が必要な環境変数
SERVICENOW_INSTANCEServiceNow instance name (e.g. acme for acme.service-now.com)
SERVICENOW_USERNAMEServiceNow username
SERVICENOW_PASSWORDシークレットServiceNow password
SERVICENOW_CLIENT_IDOAuth 2.0 client ID (optional; alternative to username/password when the instance enforces MFA/SSO — requires an OAuth application registry entry with the client credentials grant enabled)
SERVICENOW_CLIENT_SECRETシークレットOAuth 2.0 client secret (optional; used with SERVICENOW_CLIENT_ID instead of username/password)

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

パッケージ
npm@mindstone/mcp-server-servicenow0.3.1

ツール

13

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

パラメーター型必須説明
instancestringはいServiceNow インスタンス名(例:"acme")、または完全な URL(例:"https://acme.service-now.com")
passwordstringはいServiceNow のパスワード
usernamestringはいServiceNow のユーザー名

詳細

@mindstone/mcp-server-servicenow

npm version License: FSL-1.1-MIT

Model Context Protocol ホスト向けの ServiceNow ITSM MCP サーバーです。標準化された MCP インターフェースを通じて、ServiceNow のインシデント、変更リクエスト、ユーザー、ナレッジベース記事を管理できます。

ステータス

  • バージョン: 0.3.1 · npm
  • 認証: Basic 認証(ユーザー名+パスワード)または OAuth 2.0 クライアント認証情報(SERVICENOW_PASSWORD)
  • ツール: 13(インシデント、変更リクエスト、ユーザー、ナレッジ、サービスカタログ)
  • サーフェス: cloud-api
  • 機械可読: STATUS.json

要件

  • Node.js 20+
  • npm

ワンクリックインストール

Cursor に追加 VS Code に追加 VS Code Insiders に追加

ボタンをクリックすると、ホストから次の項目を入力するよう求められます:SERVICENOW_INSTANCE、SERVICENOW_USERNAME、SERVICENOW_PASSWORD、SERVICENOW_CLIENT_SECRET。

Claude Desktop/Claude Code/Goose/Continue.dev(ServiceNow)の手動設定
{
  "mcpServers": {
    "ServiceNow": {
      "command": "npx",
      "args": [
        "-y",
        "@mindstone/mcp-server-servicenow"
      ],
      "env": {
        "SERVICENOW_INSTANCE": "",
        "SERVICENOW_USERNAME": "",
        "SERVICENOW_PASSWORD": "",
        "SERVICENOW_CLIENT_SECRET": ""
      }
    }
  }
}

クイックスタート

インストールとビルド
cd <path-to-repo>/connectors/servicenow
npm install
npm run build
npx(公開後に利用可能)
npx -y @mindstone/mcp-server-servicenow
ローカル
node dist/index.js

設定

環境変数
  • SERVICENOW_INSTANCE — ServiceNow インスタンス名(例:acme.service-now.com の場合は acme)
  • SERVICENOW_USERNAME — ServiceNow のユーザー名
  • SERVICENOW_PASSWORD — ServiceNow のパスワード
  • SERVICENOW_CLIENT_ID — 任意の OAuth 2.0 クライアント ID(ユーザー名/パスワードの代替。詳細は以下を参照)
  • SERVICENOW_CLIENT_SECRET — 任意の OAuth 2.0 クライアントシークレット
  • MCP_HOST_BRIDGE_STATE — 認証情報の管理に使用するホストブリッジ状態ファイルの任意のパス
  • MINDSTONE_REBEL_BRIDGE_STATE — MCP_HOST_BRIDGE_STATE と後方互換性のある別名
OAuth 2.0(クライアントクレデンシャル)

MFA/SSO を適用しているインスタンスでは、基本認証が無効になっていることがよくあります。代替手段として、このコネクターは OAuth 2.0 クライアントクレデンシャルグラントに対応しています。

  1. インスタンスで、インバウンドのクライアントクレデンシャルグラントを有効にします(システムプロパティ glide.oauth.inbound.client.credential.grant_type.enabled = true)。
  2. System OAuth → Application Registry → New → Create an OAuth API endpoint for external clients からエントリーを作成し、クライアント ID とシークレットを控えます。
  3. SERVICENOW_INSTANCE、SERVICENOW_CLIENT_ID、SERVICENOW_CLIENT_SECRET を設定します(ユーザー名とパスワードは未設定のままにします)。

トークンはインスタンスの oauth_token.do エンドポイントから取得され、有効期限が切れる少し前までキャッシュされます。両方の認証方式が設定されている場合は、基本認証が優先されます。

ホストの設定例

Claude Desktop / Cursor
{
  "mcpServers": {
    "ServiceNow": {
      "command": "npx",
      "args": ["-y", "@mindstone/mcp-server-servicenow"],
      "env": {
        "SERVICENOW_INSTANCE": "your-instance",
        "SERVICENOW_USERNAME": "your-username",
        "SERVICENOW_PASSWORD": "your-password"
      }
    }
  }
}
ローカル開発(npm 公開は不要)
{
  "mcpServers": {
    "ServiceNow": {
      "command": "node",
      "args": ["<path-to-repo>/connectors/servicenow/dist/index.js"],
      "env": {
        "SERVICENOW_INSTANCE": "your-instance",
        "SERVICENOW_USERNAME": "your-username",
        "SERVICENOW_PASSWORD": "your-password"
      }
    }
  }
}

ツール(13)

設定
  • configure_servicenow — ServiceNow インスタンスの認証情報を設定します
インシデント
  • list_servicenow_incidents — インシデントを一覧表示または検索します
  • get_servicenow_incident — 番号または sys_id を指定して、単一のインシデントを取得します
  • create_servicenow_incident — 新しいインシデントを作成します
  • update_servicenow_incident — 既存のインシデントを更新します(work_notes / comments のジャーナルエントリーの追記を含みます)
変更リクエスト
  • list_servicenow_change_requests — 変更リクエストを一覧表示または検索します
  • get_servicenow_change_request — 番号または sys_id を指定して、単一の変更リクエストを取得します
  • create_servicenow_change_request — 新しい変更リクエストを作成します
ユーザー
  • list_servicenow_users — ユーザーを一覧表示または検索します
ナレッジベース
  • search_servicenow_knowledge — ナレッジベースの記事を検索します
  • get_servicenow_knowledge_article — ナレッジベースの記事全体を取得します
サービスカタログ
  • list_servicenow_catalog_items — サービスカタログのアイテムを一覧表示または検索します
  • get_servicenow_catalog_item — sys_id を指定して、単一のカタログアイテムを取得します

セキュリティ

ServiceNow から返されるすべての外部テキスト(レコードの説明、作業メモ、ユーザー名、記事本文、カスタムフィールドなど)は、モデルに渡される前に、閉じタグのエスケープ処理を行ったうえで <untrusted-content source="servicenow:...">...</untrusted-content> の囲みでラップされます。これにより、サードパーティのコンテンツは指示ではなくデータとして扱われます。識別子(sys_id、number)、タイムスタンプ、選択肢リストの表示値は、そのままコピーして後続のツール呼び出しで使用できるよう、文字列のまま保持されます。

ライセンス

FSL-1.1-MIT — Functional Source License, Version 1.1。将来的に MIT ライセンスへ移行します。ソフトウェアは 2030-04-08 に MIT ライセンスへ移行します。

コメント

MCP は初めてですか?

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

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