AgileWorks MCP Server
AgileWorksの公式ローカルMCPサーバーです。
目次
前提条件
- Node.js v24.13.0 以上
- AgileWorksのライセンスにWebAPIオプションが含まれていること
互換性
本MCPサーバーのバージョンと、対応するAgileWorks Web APIのバージョンは以下の通りです。
| AgileWorks MCP Server タグ | 対応AgileWorksバージョン | 備考 | | :--- | :--- | :--- | | v0.1.0 | R3.2.0 | 初版 | | v0.1.1 | R3.2.0~R3.3.0 | 第2版 | | v0.1.2 | R3.2.0~R3.3.0 | 第3版 |
インストール
ローカルMCPサーバー
- 依存モジュールをインストールします。
cd aw-app
npm install
- MCPクライアント(例: Claude Desktop など)の設定ファイルに、以下の内容を追記してください。
Claude Desktop の場合は claude_desktop_config.json に追記します。
{
"mcpServers": {
"AgileWorks": {
"command": "{nodejsのインストールディレクトリの絶対パス}",
"args": [
"{aw-app/dist/custom/admin/server.js の絶対パス}"
],
"env": {
"SYSTEM_URL": "{AgileWorksのシステムURL}",
"ACCESS_TOKEN": "{AgileWorks WebAPIで使用するOAuth2のアクセストークン}"
}
}
}
}
設定例:
{
"mcpServers": {
"AgileWorks": {
"command": "c:\\nvm4w\\nodejs\\node",
"args": [
"C:\\temp\\agileworks-mcp-server\\aw-app\\dist\\custom\\admin\\server.js"
],
"env": {
"SYSTEM_URL": "https://sample.co.jp/AgileWorks",
"ACCESS_TOKEN": "abcdefghijklmnopqrstuvwxyz"
}
}
}
}
リモートMCPサーバー
Dockerを使用することで、リモートMCPサーバーとして公開できます。
前提条件
- MCPサーバー用のポート番号を許可してください (デフォルトは8002)
[!NOTE]
.env.exampleをリネームして.envを作成し、MCP_PORTでポート番号を変更できます。
ファイル構成
aw-app/
├── dist/
├── Dockerfile
├── docker-compose.yml
└── .env (※任意)
設定手順
- Docker コンテナをビルド・起動します。
cd aw-app
docker compose build
docker compose up -d
- MCP クライアント(例: Claude Desktop など)の設定ファイルに、以下の内容を追記します。
{
"mcpServers": {
"AgileWorks": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"http(s)://{FQDN}/mcp",
"--header",
"x-system-url: {AgileWorksのシステムURL}",
"--header",
"x-access-token: {AgileWorks WebAPIで使用するOAuth2のアクセストークン}"
]
}
}
}
設定例:
{
"mcpServers": {
"AgileWorks": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://sample.co.jp/mcp",
"--header",
"x-system-url: https://example.com/AgileWorks",
"--header",
"x-access-token: abcdefghijklmnopqrstuvwxyz"
]
}
}
}
[!NOTE] ChatGPTなどのAIエージェントでは、
x-system-url/x-access-tokenをクエリパラメータでも指定できます(リクエストは/mcpへの POST)。 ただし URL にトークンを含めるとアクセスログ等に残る可能性があるため、可能な限りヘッダー指定を推奨します。 ``http(s)://{FQDN}/mcp?x-system-url={AgileWorksのシステムURL}&x-access-token={AgileWorks WebAPIで使用するOAuth2のアクセストークン}`例:`https://sample.co.jp/mcp?x-system-url=https://example.com/AgileWorks&x-access-token=abcdefghijklmnopqrstuvwxyz``
[!TIP] nginx / Traefikなどを用いてリバースプロキシを配置することで、リモートMCPサーバーのエンドポイントを変更することができます。
リモートMCPサーバーのアップデート
- リモートMCPサーバーを停止します。
cd aw-app
docker compose down
- (任意)docker-compose.ymlとDockerfileのバックアップを行います。
cp docker-compose.yml docker-compose.yml.$(date +%s).bak
cp Dockerfile Dockerfile.$(date +%s).bak
- 最新のソースコードを取得します。
- Dockerコンテナを再ビルド・起動します。
docker compose build
docker compose up -d
Tools
MCPサーバーで使用できるツールは以下の通りです。
[!CAUTION] - 破壊的な操作(例: ユーザー削除、書類却下)を行うToolは慎重に使用してください - MCPクライアントに登録するTool数が多すぎると、AIが適切なToolを選択できなくなる場合があります。必要なToolのみを有効にすることを推奨します - 本ツールは現在α版として公開されており、仕様が予告なく変更される場合があります。 - 基礎的な動作確認は AgileWorks R3.2.0 で実施していますが、予期しない動作が発生する可能性があります。
書類操作
| Tool名 | 説明 | |--------|------| | getDocHeader | 書類情報取得API | | getDoc | 書類データ取得API | | prepareDocRequest | 新規書類データ作成API | | addDoc | 新規書類データ保存API | | updateDoc | 書類データ更新API | | hardDeleteDoc | 書類物理削除API | | selectDoc | 書類検索API | | getDocPdf | 書類PDFファイル取得API | | openDoc | 書類表示API |
書類コメント
| Tool名 | 説明 | |--------|------| | listDocComment | 書類コメント一覧取得API | | addDocComment | 書類メモ追加API | | deleteDocComment | 書類コメント/メモ削除API |
書類添付情報
| Tool名 | 説明 | |--------|------| | addDocAttachment | 書類添付情報追加API (URLのみ添付可) | | updateDocAttachment | 書類添付情報更新API (URLのみ添付可) | | listDocAttachment | 書類添付情報一覧取得API | | deleteDocAttachment | 書類添付情報削除API |
関連書類
| Tool名 | 説明 | |--------|------| | getDocReference | 参照元関連書類情報取得API | | listDocReferencer | 参照先関連書類情報一覧API | | addDocReference | 関連書類追加API | | deleteDocReference | 関連書類削除API |
ワークフロー
| Tool名 | 説明 | |--------|------| | countWorkflowMessage | 回付情報件数取得API | | countListWorkflowMessage | 回付情報件数一覧取得API | | selectWorkflowMessage | 回付情報検索API | | docDraft | 書類下書き保存API | | docStart | 書類作成/申請API | | docApprove | 書類承認API | | docDelete | 書類論理削除API | | docRemand | 書類差戻しAPI | | docRetract | 書類引戻しAPI | | docReject | 書類却下API | | getWorkflowInfo | 回付情報件数取得API | | findWorkflowTask | 回付情報タスク検索API | | listWorkflowJournal | 回付履歴一覧取得API | | listElectJournal | 処理者変更履歴一覧取得API | | listShareJournal | 共有履歴一覧取得API |
ユーザー管理
| Tool名 | 説明 | |--------|------| | addUser | ユーザー作成API | | findUser | ユーザー参照API | | updateUser | ユーザー更新API | | deleteUser | ユーザー削除API | | disableUser | ユーザー適用終了API |
組織管理
| Tool名 | 説明 | |--------|------| | addUnit | 組織作成API | | findUnit | 組織参照API | | updateUnit | 組織更新API | | deleteUnit | 組織削除API | | disableUnit | 組織適用終了API |
セクションロール
| Tool名 | 説明 | |--------|------| | addSectionRole | セクションロール作成API | | findSectionRole | セクションロール参照API | | updateSectionRole | セクションロール更新API | | deleteSectionRole | セクションロール削除API |
セクションロールグループ
| Tool名 | 説明 | |--------|------| | addSectionRoleGroup | セクションロールグループ作成API | | findSectionRoleGroup | セクションロールグループ参照API | | updateSectionRoleGroup | セクションロールグループ更新API | | deleteSectionRoleGroup | セクションロールグループ削除API |
組織所属
| Tool名 | 説明 | |--------|------| | addUnitAppointment | 組織所属作成API | | findUnitAppointment | 組織所属参照API | | updateUnitAppointment | 組織所属更新API | | deleteUnitAppointment | 組織所属削除API | | disableUnitAppointment | 組織所属適用終了API |
代理申請
| Tool名 | 説明 | |--------|------| | addProxyApplyAppointment | 代理申請作成API | | findProxyApplyAppointment | 代理申請参照API | | updateProxyApplyAppointment | 代理申請更新API | | deleteProxyApplyAppointment | 代理申請削除API | | disableProxyApplyAppointment | 代理申請適用終了API |
代理承認
| Tool名 | 説明 | |--------|------| | addProxyAppointment | 代理承認作成API | | findProxyAppointment | 代理承認参照API | | updateProxyAppointment | 代理承認更新API | | deleteProxyAppointment | 代理承認削除API | | disableProxyAppointment | 代理承認適用終了API |
権限委譲
| Tool名 | 説明 | |--------|------| | addDelegationAppointment | 権限委譲作成API | | findDelegationAppointment | 権限委譲参照API | | updateDelegationAppointment | 権限委譲更新API | | deleteDelegationAppointment | 権限委譲削除API | | disableDelegationAppointment | 権限委譲適用終了API |
引上げ権限
| Tool名 | 説明 | |--------|------| | addDeprivationAppointment | 引上げ権限作成API | | findDeprivationAppointment | 引上げ権限参照API | | updateDeprivationAppointment | 引上げ権限更新API | | deleteDeprivationAppointment | 引上げ権限削除API | | disableDeprivationAppointment | 引上げ権限適用終了API |
プライベートロール
| Tool名 | 説明 | |--------|------| | addPrivateRole | プライベートロール作成API | | findPrivateRole | プライベートロール参照API | | updatePrivateRole | プライベートロール更新API | | deletePrivateRole | プライベートロール削除API |
プライベートロール所属
| Tool名 | 説明 | |--------|------| | addPrivateRoleAppointment | プライベートロール所属作成API | | findPrivateRoleAppointment | プライベートロール所属参照API | | updatePrivateRoleAppointment | プライベートロール所属更新API | | deletePrivateRoleAppointment | プライベートロール所属削除API | | disablePrivateRoleAppointment | プライベートロール所属適用終了API |
ユニバーサルロール
| Tool名 | 説明 | |--------|------| | addUniversalRole | ユニバーサルロール作成API | | findUniversalRole | ユニバーサルロール参照API | | updateUniversalRole | ユニバーサルロール更新API | | deleteUniversalRole | ユニバーサルロール削除API |
ユニバーサルロール所属
| Tool名 | 説明 | |--------|------| | addUniversalRoleAppointment | ユニバーサルロール所属作成API | | findUniversalRoleAppointment | ユニバーサルロール所属参照API | | updateUniversalRoleAppointment | ユニバーサルロール所属更新API | | deleteUniversalRoleAppointment | ユニバーサルロール所属削除API | | disableUniversalRoleAppointment | ユニバーサルロール所属適用終了API |
業務カテゴリ
| Tool名 | 説明 | |--------|------| | findProject | 業務カテゴリ一覧取得API |
外部マスタ
| Tool名 | 説明 | |--------|------| | importTinyUserMaster | 外部マスタ(標準)取込API | | exportTinyUserMaster | 外部マスタ(標準)取得API | | importUserMaster | 外部マスタ(拡張)取込API | | exportUserMaster | 外部マスタ(拡張)取得API |
コンポーネント
| Tool名 | 説明 | |--------|------| | listComponentMasterWindow | マスター参照コンポーネント一覧取得API | | listComponentAutoNumber | 自動採番コンポーネント一覧取得API |
フォーム
| Tool名 | 説明 | |--------|------| | listForm | 登録フォーム一覧取得API | | findFormDefinition | フォーム定義情報取得API | | listPublicFolderInfo | 公開フォルダ・公開フォーム取得API |
管理者権限不要
| Tool名 | 説明 | |--------|------| | notAdminGetVersion | バージョン情報取得API |
ライセンス
MIT
免責事項・サポートについて
本リポジトリは、動作保証や技術サポートは行いません。 本サーバーの使用によって生じた、いかなる直接的・間接的な損害(データの消失、業務の中断、セキュリティ上の問題など)についても、一切の責任を負いません。設定や運用は、利用者自身の責任において十分な検証の上で行ってください。











