mcpField
S
Servicenow Devtools MCP

Servicenow Devtools MCP

ローカル
github.com/Xerrion開発ツール42 日前に更新

Servicenow Devtools MCP について

ServiceNow Devtools MCP は AI アプリを ServiceNow に接続し、チケット対応、インスタンスの調査、問題の診断、変更のレビューを行います。アクセス範囲は各アカウントのロール、API ポリシー、ACL に従います。

主な機能

  1. 01ITSM レコードと履歴の読み取り
  2. 02テーブル、フィールド、スクリプト、フローの調査
  3. 03エラーとトランザクションの調査
  4. 04レコードとスクリプトの変更案をレビュー

活用シーン

  1. 01インシデントとリクエスト回答の要約
  2. 02スクリプト検索や Flow Designer フローの調査
  3. 03チケットやスクリプト変更の適用前レビュー
  4. 04最近のエラーとテーブル状態の調査

MCP 対応

stdio 経由でローカル起動する MCP サーバーで、AI アプリに ServiceNow のレコード、設定、診断ツールを提供します。有効にした書き込みツールでは変更をプレビューできますが、ServiceNow の権限とローカルポリシーが適用されます。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"servicenow-devtools": {
"command": "uvx",
"args": [
"servicenow-devtools-mcp"
],
"env": {
"SERVICENOW_INSTANCE_URL": "<SERVICENOW_INSTANCE_URL>",
"SERVICENOW_USERNAME": "<SERVICENOW_USERNAME>",
"SERVICENOW_PASSWORD": "<SERVICENOW_PASSWORD>",
"MCP_TOOL_PACKAGE": "<MCP_TOOL_PACKAGE>",
"SERVICENOW_ENV": "<SERVICENOW_ENV>"
}
}
}
}
起動コマンドuvx servicenow-devtools-mcp
設定が必要な環境変数
SERVICENOW_INSTANCE_URL
SERVICENOW_USERNAME
SERVICENOW_PASSWORDシークレット
MCP_TOOL_PACKAGE
SERVICENOW_ENV

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

パッケージ
pypiservicenow-devtools-mcp

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

ServiceNow Platform MCP

AI アプリを ServiceNow に接続し、チケットの読み取り、設定の調査、レコードやスクリプトへの変更の準備ができます。このサーバーは Model Context Protocol(MCP)を使用します。

ServiceNow アカウントでサインインします。読み取りや変更が可能な内容は、ロール、API アクセスポリシー、アクセス制御ルール(ACL)によって決まります。

まずはこちら

サーバーがすでに設定されている場合は、AI アプリに次のように依頼します。

ServiceNow を使って、アクセスできるアクティブなインシデントを5件表示してください。インシデント番号、短い説明、優先度、担当者を含めてください。何も変更しないでください。

サインインが必要な場合、サーバーは実行中のコンピューターでブラウザーを開きます。

ITSM の作業

インシデント、問題、変更、リクエストのレコードを読み取ります。履歴の確認、添付ファイルの調査、ステータス更新用のレコード数の集計ができます。

たとえば、次のように依頼できます。

  • 「Service Desk グループに割り当てられたアクティブなインシデントを、優先度順に10件表示してください。」
  • 「INC0012345 を要約し、過去30日間のコメントと作業メモを含めてください。」
  • 「割り当てグループごとに未解決のインシデント数を集計してください。使用したフィルターも含めてください。」
  • 「RITM0012345 とともに送信された回答を表示してください。」

リストや履歴を取得する場合は、インスタンスで使用しているレコード番号とグループ名を指定してください。また、期間と件数の上限も指定してください。

チケットの作成、作業メモの更新、割り当ての変更には、書き込みツールと ServiceNow の権限が必要です。変更を参照してください。

インスタンスの管理と開発

設定を調査し、問題を調べ、変更の準備をします。レコード名や質問から始められます。MCP ツール名を知っておく必要はありません。

作業調査できる内容
テーブルとフィールドフィールドの種類、選択肢のラベル、参照、継承されたフィールド。
スクリプトビジネスルール、スクリプトインクルード、クライアントスクリプト、コード検索の一致結果。
Flow Designerフローとサブフローのトリガー、入力、出力、設定済みのステップ。
トラブルシューティング最近のエラー、遅いトランザクション、テーブルの健全性、監査履歴。
構成管理データベース(CMDB)構成アイテム、その関係、クラスのメタデータ。

たとえば、次のように依頼できます。

  • 「『Validate priority』という名前のビジネスルールを読み取ってください。実行タイミングとスクリプトの動作を説明してください。」
  • 「gs.eventQueue を呼び出すスクリプトを探してください。一致したレコードを表示してください。」
  • 「『New starter』フローを調査してください。トリガーと設定済みのステップを説明してください。」
  • 「過去24時間のスクリプトエラーを調査してください。各調査結果の根拠を表示してください。」

例にあるルール名やフロー名は、インスタンスで使用している名前に置き換えてください。 診断結果は調査に役立ちますが、根本原因を特定したり、インスタンスを修復したりするものではありません。 flow ツールは設定を調査し、保存された V2 構造をローカルで確認し、ステータスを読み取ります。 フローを変更したり実行したりすることはできません。

書き込みツールが有効な場合は、スクリプトフィールドを含む設定レコードを作成または更新できます。 スクリプトを変更する前に、変更ワークフローに従ってください。

接続の設定

管理者が OAuth を準備します。各ユーザーは、自分の ServiceNow アカウントでアクセスを許可します。AI アプリは stdio を使用してサーバーをローカルで起動します。 Python 3.14 以降、uv、 およびローカル MCP サーバーを起動できる AI アプリが必要です。

1. ServiceNow で OAuth を準備する

OAuth を使うと、ユーザーはブラウザーで接続を認証できます。パブリッククライアント ID はアプリケーションを識別するものであり、パスワードやクライアントシークレットではありません。

System OAuth > Application Registry を開きます。New を選択し、Create an OAuth API endpoint for external clients を選択するか、既存のインバウンドアプリケーションを選択します。 次の要件を満たすようにアプリケーションを設定します。

要件値
クライアントタイプパブリック、クライアントシークレットなし
認証フローPKCE を使用した認証コード
PKCE メソッドS256
スコープuseraccount
リダイレクト URLhttp://127.0.0.1:8765/oauth/callback

アプリケーションを保存し、パブリッククライアント ID をコピーします。OAuth を設定できない場合は、管理者にクライアント ID とインスタンス URL を問い合わせてください。 ユーザーには引き続き、API アクセス権とテーブルおよびフィールドの権限が必要です。

2. AI アプリに接続を追加する

https://your-instance.service-now.com と your-public-client-id を管理者から提供された値に置き換えます。/nav_to.do のようなページパスを含めず、インスタンスの HTTPS アドレスを使用してください。

これらの例では readonly を選択し、SERVICENOW_ENV=prod で書き込みをブロックします。 環境設定は書き込み保護を制御します。インスタンスの選択や、本番インスタンスかどうかの検出は行いません。

この設定を追加するときは、既存のサーバーエントリを残してください。 パスワード、API キー、クライアントシークレット、トークンは追加しないでください。

GitHub Copilot を使用する VS Code、または Claude Code

AI アプリで開くトップレベルフォルダーに、次の設定を .mcp.json として保存します。

{
  "mcpServers": {
    "servicenow-platform": {
      "command": "uvx",
      "args": ["servicenow-platform-mcp"],
      "env": {
        "SERVICENOW_INSTANCE_URL": "https://your-instance.service-now.com",
        "SERVICENOW_OAUTH_CLIENT_ID": "your-public-client-id",
        "MCP_TOOL_PACKAGE": "readonly",
        "SERVICENOW_ENV": "prod"
      }
    }
  }
}

VS Code では、チャットを開き、ServiceNow ツールを有効にします。 Claude Code では、プロンプトが表示されたらプロジェクトの MCP サーバーを承認します。 ユーザー全体に適用する設定と接続の制御については、 VS Code ガイド または Claude Code ガイドを参照してください。

OpenCode の設定

プロジェクトの opencode.json に次の内容を追加します。

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "servicenow-platform": {
      "type": "local",
      "command": ["uvx", "servicenow-platform-mcp"],
      "enabled": true,
      "environment": {
        "SERVICENOW_INSTANCE_URL": "https://your-instance.service-now.com",
        "SERVICENOW_OAUTH_CLIENT_ID": "your-public-client-id",
        "MCP_TOOL_PACKAGE": "readonly",
        "SERVICENOW_ENV": "prod"
      }
    }
  }
}

OpenCode を再起動します。その他の設定オプションについては、MCP ガイドを参照してください。

別のローカル MCP アプリでは、同じ 4 つの環境変数を使って、コマンド uvx servicenow-platform-mcp を実行します。設定形式は異なる場合があります。 インストールガイドには、調整して使用できるサーバーエントリが記載されています。

3. サインインしてアクセスを確認する
  1. 設定を保存した後、AI アプリまたはその ServiceNow MCP サーバーを再起動します。
  2. 「利用可能な ServiceNow ツールを一覧表示して」と尋ねます。
  3. 「ServiceNow を使って、アクティブなインシデントを 1 件表示して。番号と概要を含めて」と尋ねます。
  4. プロンプトが表示されたら、使用する ServiceNow アカウントでブラウザーからサインインします。

レコードが返されれば、そのテーブルへの読み取りアクセスが確認できます。 インシデントを読み取れない場合は、アカウントがアクセスできるテーブルを使用してください。ツールの検出だけでは、接続が機能していることを確認できません。

トークンはデフォルトでサーバーのメモリ内に保持されます。可能な場合、サーバーは有効期限が切れたアクセストークンを更新します。 オプションの SERVICENOW_OAUTH_CACHE=os を設定すると、リフレッシュトークンのみが OS のネイティブ認証情報ストアに保存されるため、新しいローカルプロセスで以前のログインを再利用できます。OAuth キャッシュの設定を参照してください。

変更を行う

開発用またはテスト用のインスタンスから始めてください。管理者に、必要な書き込みツールのみを有効にし、対応する ServiceNow 権限を付与するよう依頼してください。

たとえば、MCP_TOOL_PACKAGE=query,describe,record_read,record_write を設定すると、レコードの確認と変更が可能になります。本番以外のインスタンスでは SERVICENOW_ENV=dev を設定してください。設定を変更した後は、サーバーを再起動してください。

レコード、添付ファイル、カタログの変更では、apply_change の前にプレビューが必要です。 サーバーは人による承認を強制しません。適用する前に、変更内容を確認してください。

  1. アプリに現在のレコードを読み取るよう依頼します。
  2. 変更案のプレビューを依頼します。
  3. 対象インスタンス、レコード、フィールド値、スクリプトの差分を確認します。
  4. 承認した場合に限り、そのプレビューを適用するようアプリに指示します。
  5. ServiceNow で結果を確認します。変更した動作は、インスタンス上でテストしてください。

チケットを更新する場合:

INC0012345 に次の作業メモを追加するプレビューを表示してください:「修正を確認してもらうため、発信者からの返答を待っています。」変更案を表示し、私の承認を待ってください。

スクリプトを更新する場合:

「Validate priority」という名前の Business Rule を読み取ってください。修正案を提案し、説明してください。置き換え後のスクリプト全体を含むプレビューを表示してください。適用する前に、私の承認を待ってください。

プレビューツールは使い捨てのトークンを返します。apply_change はポリシー、権限、検出可能な状態変更を確認します。トークンは 300 秒後に期限切れとなり、再起動すると消失します。結果が UNKNOWN_OUTCOME の場合は、次のプレビューを行う前に対象の状態を読み取ってください。この操作を自動的に再実行しないでください。

readonly パッケージにはカタログの参照機能が含まれています。カタログの変更には、service_catalog_write グループが必要です。プレビューでは、フルフィルメントのシミュレーションや価格の保証は行われません。

スクリプトの更新では、フィールド値全体が置き換えられます。サーバーは JavaScript の構文を確認しません。スクリプトに依存する前に、内容を確認してテストしてください。

このサーバー経由の書き込みをブロックするには、SERVICENOW_ENV=prod または production を設定してください。レコードへのアクセスは、引き続き ServiceNow の権限によって制御されます。ツールの選択と環境設定により、ローカルでの制御が追加されます。

利用可能なツールを選択する

MCP_TOOL_PACKAGE は、AI アプリから呼び出せるツールを制御します。

パッケージ用途
readonlyITSM の読み取り、メタデータ、添付ファイル、調査、監査、フロー、コード検索、CMDB の確認。
core_readonlyクエリ、テーブルの説明、添付ファイルの読み取りのみ。
full確認済みのレコード、添付ファイル、カタログの変更を含むすべてのツール。
noneサーバーの起動確認用の list_tool_packages のみ。

パッケージのデフォルトは readonly、環境のデフォルトは prod です。 パッケージによってツールが有効になりますが、ServiceNow の権限が付与されるわけではありません。 list_tool_packages は利用可能なパッケージとグループを一覧表示します。現在有効なパッケージは表示しません。 すべてのツールと入力の一覧については、ツールリファレンスを参照してください。

うまく動作しない場合

問題次の対応
AI アプリがサーバーを起動できないPython、uv、サーバーコマンド、および必須の ServiceNow 設定 2 つを確認してください。
ブラウザーが開かない、または認証がタイムアウトするサーバーが動作しているコンピューターでブラウザーを使用してください。登録済みのリダイレクト URL が正確か確認してください。
ServiceNow が OAuth を拒否する管理者に、パブリッククライアントモード、PKCE S256、クライアント ID、スコープ、リダイレクト URL を確認してもらってください。
サインインは成功するが、レコードのリクエストが 401 または 403 を返す管理者に、API ポリシー、ロール、レコードまたはフィールドのアクセスルールを確認してもらってください。
ツールが見つからない、または設定が反映されないMCP_TOOL_PACKAGE を確認し、MCP サーバーを再起動してください。

リクエストが失敗した場合は、操作、レコードまたはテーブル、およびサニタイズしたエラーを 報告に含めてください。パスワード、トークン、生のヘッダー、ブラウザーのコールバック URL は 含めないでください。詳しい確認方法については、インストール時のトラブルシューティング を参照してください。

ツールが返した ServiceNow データは、AI アプリで利用できるようになります。 取り扱うデータに対して承認されたアプリを使用してください。

詳細情報

問題を報告 · PyPI パッケージ · MIT ライセンス

コメント

MCP は初めてですか?

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

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