Community研究&データ分析github.com

Gharib89/crm

Microsoft Dynamics 365 CE オンプレミス 9.x Web API(OData v4、NTLM認証)向けのステートフルCLI+エージェントスキル

crm とは?

このスキルは、Microsoft Dynamics 365 CE(オンプレミス9.x)のWeb API(OData v4、NTLM認証)と対話するためのCLIおよびエージェントインターフェースです。ステートフルな設計により、セッション(コンテキスト)を維持しながら複数のAPI呼び出しを連続して実行し、エンティティの作成、読み取り、更新、削除(CRUD)操作を簡単に行えます。NTLM認証をサポートしているため、オンプレミス環境のユーザーでも安全に接続可能です。Cursor、Claude Code、またはCodexなどのエージェントプラットフォームで使用でき、設定ファイル(.env)を使って組織のURL、ユーザー名、パスワード、ドメインを簡単に構成できます。

対応~Claude Code~Codex CLI~Cursor
npx skills add Gharib89/crm

Installed? Explore more 研究&データ分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

crm は何をしますか?

Microsoft Dynamics 365 CE オンプレミス 9.x Web API(OData v4、NTLM認証)向けのステートフルCLI+エージェントスキル。

概要

このスキルは、Dynamics 365 CEのWeb APIと対話するためのステートフルなコマンドラインインターフェースを提供します。NTLM認証をサポートし、オンプレミス環境での安全な接続を実現します。

前提条件

  • Node.js 18以上
  • Dynamics 365 CE オンプレミス 9.x
  • NTLM認証が有効なドメインアカウント

インストール

npm install -g gharib89/crm

設定

.envファイルを作成し、以下の環境変数を設定します:

CRM_ORG_URL=https://your-crm-org.example.com
CRM_USERNAME=your-username
CRM_PASSWORD=your-password
CRM_DOMAIN=YOUR_DOMAIN

使用法

コマンド

コマンド説明
crm loginNTLM認証を使用してログイン
crm whoami現在のユーザー情報を表示
crm list <entity>エンティティレコードを一覧表示
crm get <entity> <id>特定のレコードを取得
crm create <entity>新しいレコードを作成
crm update <entity> <id>既存のレコードを更新
crm delete <entity> <id>レコードを削除
crm query <entity> <filter>ODataフィルターでクエリ

例

# すべての取引先企業を一覧表示
crm list accounts

# 特定の取引先企業を取得
crm get accounts 00000000-0000-0000-0000-000000000000

# 新しい取引先企業を作成
crm create accounts

# 取引先企業名を更新
crm update accounts 00000000-0000-0000-0000-000000000000

# 取引先企業を削除
crm delete accounts 00000000-0000-0000-0000-000000000000

API

このスキルはDynamics 365 CEのWeb API(OData v4)を使用します。すべてのリクエストはNTLM認証で保護されています。

サポートされるエンドポイント

  • GET /api/data/v9.x/<entity> - エンティティレコードの一覧表示
  • GET /api/data/v9.x/<entity>(<id>) - 特定のレコードの取得
  • POST /api/data/v9.x/<entity> - 新しいレコードの作成
  • PATCH /api/data/v9.x/<entity>(<id>) - 既存のレコードの更新
  • DELETE /api/data/v9.x/<entity>(<id>) - レコードの削除

エージェントモード

Cursor、Claude Code、Codexなどのエージェントで使用する場合、crmコマンドを直接呼び出してDynamics 365 CEと対話できます。エージェントは以下のようにタスクを実行できます:

  • 顧客レコードの検索と取得
  • データの一括更新
  • レコード作成の自動化
  • データ移行ジョブの実行

トラブルシューティング

  • 認証エラー: .envファイルの資格情報が正しいことを確認してください。
  • タイムアウト: 組織URLが到達可能であり、ファイアウォールがトラフィックをブロックしていないことを確認してください。
  • HTTP 403: NTLM認証が適切に設定されていることを確認してください。

ライセンス

MIT

関連スキル