mcpField
T
teamctx

teamctx

ローカル
github.com/CloudCorpRecordsメモリ・ナレッジ01 週間前に更新

teamctx について

teamctxは、ProductNowのホスト型共有チームコンテキストを利用する転送クライアントで、CLIとstdio MCPサーバーを提供します。サービス自体はホストせず、文書の検索、閲覧、作成、整理の呼び出しをProductNowへ転送します。

主な機能

  1. 01共有コンテキストとヘルプの検索
  2. 02文書の閲覧とフォルダーの確認
  3. 03情報の記録と文書の作成・編集
  4. 04文書の移動、名前変更、アーカイブ、コメント
  5. 05文書のバージョンとステータスの管理
  6. 06CLIとstdio MCPサーバー

活用シーン

  1. 01引用付きの抜粋でワークスペース文書を検索
  2. 02チームの決定やメモを共有コンテキストに保存
  3. 03文書の作成、編集、整理
  4. 04文書のバージョンやコメントスレッドを確認

MCP 対応

teamctxはCLIまたはMCPのツール呼び出しを、ProductNowのホスト型Streamable HTTP MCPエンドポイントへ転送します。公開仕様のある上流ツール16個を提供し、利用者が用意したアクセストークンが必要です。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"cloudcorprecords-teamctx": {
"command": "npx",
"args": [
"-y",
"@reneturcios/teamctx"
]
}
}
}
起動コマンドnpx -y @reneturcios/teamctx

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

パッケージ
npm@reneturcios/teamctx0.1.0
ocighcr.io/cloudcorprecords/teamctx:0.1.0

ツール

16

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

パラメーター型必須説明
querystringいいえ検索クエリのテキスト。
folderIdstringいいえフォルダーの ID。省略するとルートを使用します。
resultTypeenumいいえ結果をドキュメントまたはフォルダーに限定します。documents | folders
searchScopeenumいいえ検索対象:共有ワークスペースまたは ProductNow ヘルプ。workspace | product_help
creatorNamesarrayいいえこれらのユーザーが作成した項目のみを含めます。
updatedAfterstringいいえこの日時以降に更新された項目のみを含めます。
updatedBeforestringいいえこの日時以前に更新された項目のみを含めます。

詳細

teamctx

teamctx は、ProductNow の共有チームコンテキスト用の転送クライアントです。実際の ProductNow サーバーはホストされており、セルフホストではありません。teamctx は、ワークスペースのドキュメントの検索、読み取り、書き込み、整理のための MCP ツール呼び出し(または CLI 呼び出し)を受け取り、ホストされた ProductNow MCP エンドポイントに転送して、そのサーバーから返されたものをそのまま返します。1 つのバイナリで、コマンドラインインターフェースと stdio MCP サーバーの両方を提供します。

アップストリームエンドポイントは https://api.productnow-prod.com/mcp(Streamable HTTP)です。Auth0 を介した OAuth 2.0 で保護されており、必須スコープは mcp:use です。teamctx 自体は OAuth フローを実行しません。すでに取得済みのアクセストークンを PRODUCTNOW_ACCESS_TOKEN 環境変数に設定すると、teamctx は転送するすべての呼び出しで Bearer 認証情報として送信します。この変数が設定されていないか空白の場合、リクエストを試みる前に、その変数名を示すエラーで teamctx は終了します。

このパッケージは、列挙されたアップストリームツール 18 個のうち 16 個を実装しています。これは、公開ドキュメントに完全な Input テーブルが掲載されている、ラベル付きのコアサブセットです。完全なパラメーターのスキーマが公開されていないため、2 つのツールは意図的に含めていません。 curate_knowledge_pack と create_help_document は、告知も転送もされません。実装済みの 16 個のツールのパラメーター型は、公開ドキュメントの Input テーブルから推定しています(アップストリームのツールカタログには、JSON-Schema のプロパティ定義は掲載されていません)。名前、必須かどうか、列挙値は、公開ドキュメントに記載されたとおりです。

インストール

npx @reneturcios/teamctx call search '{"query":"pricing"}'

または、コンテナーイメージを実行します。

docker run -i ghcr.io/cloudcorprecords/teamctx

コンテナーはデフォルトで MCP サーバーとして起動します(下記参照)。CLI として使用するには、CLI 引数を渡します。

CLI

すべてのツールが JSON オブジェクトの引数セットを受け取るため、CLI はツールごとのサブコマンドではなく、汎用のサブコマンドを 1 つ使用します。

teamctx call <tool> [json-args]
teamctx call search '{"query":"pricing","resultType":"documents"}'
teamctx call fetch '{"documentId":"doc_123"}'
teamctx call fetch_folder '{}'
teamctx call remember '{"content":"We ship on Fridays."}'

teamctx --version

指定する場合、json-args は単一の JSON オブジェクトである必要があります。不正な JSON、オブジェクト以外の値、不明なツール、余分な引数は使用方法エラー(終了コード 2)となり、認証情報の確認より前に拒否されます。PRODUCTNOW_ACCESS_TOKEN が設定されていない場合やアップストリームでエラーが発生した場合など、実行時エラーは終了コード 1 となります。成功時は終了コード 0 となり、アップストリームの結果を JSON として出力します。

MCP サーバー

1 つのバイナリで両方のインターフェースを提供します。mcp サブコマンドを実行すると、stdio MCP サーバーが起動します。

npx -y @reneturcios/teamctx mcp

MCP クライアントの設定:

{
  "mcpServers": {
    "teamctx": {
      "command": "npx",
      "args": ["-y", "@reneturcios/teamctx", "mcp"],
      "env": {
        "PRODUCTNOW_ACCESS_TOKEN": "<your ProductNow access token>"
      }
    }
  }
}
ツール
ツール必須入力機能
search—(フォルダー検索ではqueryが必須)共有コンテキストまたはProductNowヘルプを検索し、引用付きの根拠抜粋を取得するか、フォルダー名を検索します。
fetchdocumentId1つのドキュメントを読み取ります。全文、セクション、コメントスレッド、フォルダー、正規URLを取得します。
fetch_folder—フォルダーまたはウェアハウスのルートを一覧表示します。オプションでネストされたツリー(deep)として表示できます。
list_document_versionsdocumentIdドキュメントのすべてのバージョンを新しい順に一覧表示します。バージョンステータスで絞り込むこともできます。
get_statusdocumentIdドキュメントの下書きエージェントがrunningかidleかを報告します。
remembercontent事実、決定事項、またはメモを1つ、適切なドキュメントまたはフォルダーに保存します。
create_documentname、promptドキュメントを作成し、フォルダーに格納して、AIで内容を生成します。
edit_documentdocumentId、message編集指示を、そのドキュメント専用の編集エージェントに渡します。
update_document_statusdocumentId、statusアクション動詞 snapshot、review、またはpublishを使って、現在の下書きを昇格させます。
create_foldernameフォルダーを作成します。オプションで親フォルダーの下に作成できます。
moveids複数のドキュメントやフォルダーをまとめて、1つのフォルダーまたはルートに移動します。
renameid、name1つのドキュメントまたはフォルダーの名前を変更します。
archiveids複数のドキュメントやフォルダーをまとめてアーカイブします。削除はされません。
comment_on_documentdocumentId、commentドキュメントの現在のレビューバージョンにコメントします。引用テキストに紐付けることもできます。
reply_to_threadthreadId、message既存のコメントスレッドに返信します。
upload_mediafileName、mimeType画像/動画メディア用の署名付きアップロードURL(有効期間5分)を割り当てます。

上流のドキュメントに記載されている、分かりにくいルールについての注意: searchは、デフォルトでworkspaceスコープとdocuments結果タイプを使用します。作成者と日付のフィルターは、ツールスキーマの説明に従って組み合わせます。list_document_versionsはバージョンのステータス(DRAFT … ARCHIVED)で絞り込みます。一方、update_document_statusではアクション動詞(snapshot / review / publish)を指定します。混同しないでください。create_documentのfolderIdは実際には必須です。ウェアハウスのルートに作成する場合に限り、省略できます。

開発

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, no network (fake fetch only)
npm run dev     # run the CLI from source via tsx

ライセンス

MIT — LICENSEを参照してください。

コメント

MCP は初めてですか?

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

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