Targetprocess MCP Server

by aaronsb
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Provides tools for interacting with Targetprocess, a project management and agile planning platform. Enables searching, creating, and updating entities (User Stories, Bugs, Tasks, Features, etc.), querying with complex filters, exploring data models and relationships, and handling authentication and API interactions.

ターゲットプロセス MCP サーバー

モデルコンテキストプロトコル(MCP)は、AIアシスタントが統合インターフェースを介して外部ツールやサービスと連携できるようにする標準規格です。MCPサーバーは、AIアシスタントがタスクを実行するために使用できるツールとリソースを公開することで、これらの機能を提供します。

このMCPサーバーは、プロジェクト管理およびアジャイル計画プラットフォームであるTargetprocessと連携するためのツールを提供します。これにより、AIアシスタントは以下のことが可能になります。

  • ターゲットプロセス エンティティ (ユーザー ストーリー、バグ、タスク、機能など) を検索して取得します。
  • 適切な検証を使用してエンティティを作成および更新する
  • 複雑なフィルターとインクルードを使用してエンティティをクエリする
  • Targetprocess データモデルを検査して発見する
  • 認証とAPIインタラクションを安全に処理する

主な特徴

  • データモデルの検出: 複雑なターゲットプロセスの実装を探索して理解する
  • 強力なクエリ: 複雑なフィルターとインクルードを使用して、必要なデータを正確に取得します。
  • エンティティ管理: 適切な検証を伴うエンティティの作成と更新
  • 関係性の探究:異なるエンティティが互いにどのように関係しているかを理解する
  • エラー処理:再試行と情報メッセージによる堅牢なエラー処理
  • ドキュメント統合: Targetprocess ドキュメントへの組み込みアクセス

ユースケース

このMCPサーバーは、Targetprocessが複雑なスキーマとデータモデルを持つ数百万件のレコードを処理する可能性のある企業環境で特に役立ちます。一般的なユースケースは次のとおりです。

  • データモデルの検出: 複雑なターゲットプロセスの実装をマッピングして理解する
  • エンタープライズ分析: 数百万件のレコードからデータを抽出して分析します
  • システム間統合: Targetprocessと他のシステム間のブリッジとして使用します
  • カスタムレポート: 標準UIでは利用できない特殊なレポートを作成します
  • バッチ操作: 多数のエンティティにわたる大規模な変更を管理します
  • スキーマ探索: 複雑な実装におけるカスタムフィールドと関係を発見

詳細な例と実装ガイドについては、 USECASES.md を参照してください。

はじめる

ドキュメント検索ツールを含めるためにリポジトリを再帰的にクローンします。

git clone --recursive https://github.com/aaronsb/apptio-target-process-mcp.git cd apptio-target-process-mcp

開発リソース

ドキュメント検索

このリポジトリには、Targetprocess開発者向けドキュメントのスクレーパー/サーチャーがサブモジュールとして含まれています。これを使用すると、Targetprocessのドキュメントを素早く検索できます。

# From the project root: pushd resources/target-process-docs && npm install && ./refresh-docs.sh && popd # First time setup # To search documentation (from any directory): pushd resources/target-process-docs && ./search-docs.sh "your search query" && popd # Example search: pushd resources/target-process-docs && ./search-docs.sh "entity states" && popd

検索ツールはresources/target-process-docsにあります。ここではpushd/popdコマンドを使用しています。その理由は以下のとおりです。

  1. このツールは相対パスを使用してデータベースファイルにアクセスする必要がある
  2. pushdは現在のディレクトリの場所を保存します
  3. コマンドを実行するためにツールのディレクトリに一時的に変更します
  4. popd は自動的に前の場所に戻ります。この方法により、ツールがデータベース ファイルを確実に見つけられるようにしながら、任意のディレクトリから検索を実行できます。

このツールは、Targetprocessの開発者向けドキュメントをローカルで検索するための強力な手段を提供します。検索結果には、コンテキスト付きの関連ドキュメントセクションが含まれるため、特定のAPIの詳細や実装ガイダンスを簡単に見つけることができます。

CI/CDパイプライン

このプロジェクトでは、自動ビルドに GitHub Actions を使用します。

  • mainブランチへのプッシュにより新しいコンテナビルドがトリガーされる
  • バージョンタグ (v*. . ) はバージョン付きリリースを作成します
  • イメージはGitHub Container Registryに公開されます

公開された画像を使用できます:

docker run -i --rm \ -e TP_DOMAIN=your-domain.tpondemand.com \ -e TP_USERNAME=your-username \ -e TP_PASSWORD=your-password \ ghcr.io/aaronsb/apptio-target-process-mcp

環境変数

  • TP_DOMAIN : ターゲットプロセスのドメイン(例:company.tpondemand.com)
  • TP_USERNAME : ターゲットプロセスのユーザー名
  • TP_PASSWORD : ターゲットプロセスのパスワード

Docker を使用したローカル開発

ローカル開発およびテストの場合は、提供されているスクリプトを使用します。

  1. ローカルイメージをビルドします。

    注: ビルドスクリプトは、ログ出力を最小限に抑えるため、デフォルトでDockerのquietモードを使用します。これは、ビルド出力を処理するClineなどのツールと連携する際のAIトークンの消費量を削減するための意図的なものです。quietモードでは、完全なビルドログが/tmp/apptio-target-process-mcp/docker-build.logに保存されます。ビルド出力をターミナルで直接確認するには、 --verboseフラグを使用してください。

./scripts/build-local.sh # Quiet mode (default), logs to file ./scripts/build-local.sh --verbose # Full build output in terminal
  1. ローカルイメージを実行します。
./scripts/run-local.sh
  1. Cline を設定します。 ~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.jsonを編集します。
{ "mcpServers": { "targetprocess": { "command": "./scripts/run-local.sh", "disabled": false, "autoApprove": [] } } }

Dockerを使わないローカル開発

前提条件

  • Node.js 20以降
  • npm

設定

  1. リポジトリを再帰的にクローンします。
git clone --recursive https://github.com/modelcontextprotocol/targetprocess-mcp.git cd targetprocess-mcp

注意: ドキュメント検索ツールのサブモジュールも複製するには、 --recursiveフラグが必要です。

  1. 依存関係をインストールします:
npm install
  1. サンプル設定をコピーします。
cp config/targetprocess.example.json config/targetprocess.json
  1. Targetprocess の資格情報を使用してconfig/targetprocess.jsonを編集します。

建物

npm run build

ランニング

node build/index.js

API機能

詳細な例と一般的な使用例については、 USECASES.md を参照してください。

MCP サーバーは、Targetprocess と対話するための次のツールを提供します。

検索エンティティ

フィルタリングとインクルードを使用して、ターゲットプロセス エンティティ (UserStory、Bug、Task、Feature) を検索します。

{ "type": "UserStory", // Required: Entity type to search for "where": "EntityState.Name eq 'Open'", // Optional: Filter expression "take": 10, // Optional: Number of items to return (default: 100, max: 1000) "include": ["Project", "Team"] // Optional: Related data to include }

get_entity

特定のエンティティに関する詳細情報を取得します。

{ "type": "UserStory", // Required: Entity type "id": 123456, // Required: Entity ID "include": ["Project", "Team"] // Optional: Related data to include }

エンティティの作成

Targetprocess に新しいエンティティを作成します。

{ "type": "UserStory", // Required: Entity type to create "name": "Story Name", // Required: Entity name "description": "Details...", // Optional: Entity description "project": { // Required: Project to create in "id": 123 }, "team": { // Optional: Team to assign "id": 456 } }

エンティティの更新

既存のエンティティを更新します。

{ "type": "UserStory", // Required: Entity type "id": 123456, // Required: Entity ID "fields": { // Required: Fields to update "name": "New Name", "description": "New description", "status": { "id": 789 } } }

検査オブジェクト

API を介して Targetprocess オブジェクトとプロパティを検査します。

{ "action": "list_types", // Required: Action to perform "entityType": "UserStory", // Required for some actions: Entity type to inspect "propertyName": "Description" // Required for some actions: Property to inspect }

パフォーマンスに関する考慮事項

数百万件のレコードが含まれる可能性のある大規模な Targetprocess インスタンスを操作する場合:

  1. 特定のクエリを使用する: 結果セットを制限するために、常に可能な限り最も具体的なクエリを使用します。
  2. 結果のサイズを制限する: 返される結果の数を制限するには、 takeパラメータを使用します。
  3. 必要なデータのみを含める: 実際に必要な関連データのみを含める
  4. ページ区切りを考慮する: 結果セットが大きい場合は、アプリケーションにページ区切りを実装します。
  5. バッチ操作: 一括操作の場合は、API の過負荷を避けるためにリクエストをバッチ処理することを検討してください。

LLM統合

この MCP サーバーは、モデル コンテキスト プロトコルをサポートするさまざまな AI アシスタントで使用できます。

  • Cline - CLIベースのAIアシスタント
  • Claude Desktop - Anthropic のデスクトップ アプリケーション
  • Goose - ローカルAIアシスタント

構成とセットアップの手順については、 llms-install.md を参照してください。

構成

サーバーは、環境変数または JSON 構成ファイルを通じて構成できます。

設定ファイルの形式

{ "domain": "your-domain.tpondemand.com", "credentials": { "username": "your-username", "password": "your-password" } }

ライセンス

マサチューセッツ工科大学

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

プロジェクト管理およびアジャイル計画プラットフォームである Targetprocess と対話するためのツールを提供し、AI アシスタントが適切な検証を使用してプロジェクト エンティティを検索、作成、更新できるようにします。

  1. Key Features
    1. Use Cases
      1. Getting Started
        1. Development Resources
          1. Documentation Search
          2. CI/CD Pipeline
          3. Environment Variables
          4. Local Development with Docker
          5. Local Development without Docker
          6. Prerequisites
          7. Setup
          8. Building
          9. Running
        2. API Capabilities
          1. search_entities
          2. get_entity
          3. create_entity
          4. update_entity
          5. inspect_object
        3. Performance Considerations
          1. LLM Integration
            1. Configuration
              1. Config File Format
            2. License
              ID: r67qn2xf6t