部族 - 知識サービス
Tribalは、エラーナレッジの追跡と取得のためのMCP(Model Context Protocol)サーバー実装です。Claude CodeやClineなどのツールとの統合のために、REST APIとネイティブMCPインターフェースの両方を提供します。
特徴
完全なコンテキストでエラーレコードを保存および取得します
ChromaDB を使用したベクトル類似性検索
REST API (FastAPI) とネイティブ MCP インターフェース
APIキーを使用したJWT認証
ローカルストレージ(ChromaDB)とAWS統合
Docker-compose デプロイメント
CLIクライアント統合
Related MCP server: MCP Claude Code
概要
Tribalは、Claudeがプログラミングエラーを記憶し、学習するのに役立ちます。Claude Codeセッションを開始すると、追加のインポートなしでTribalがMCPを通じて自動的に利用可能になります。
クロードは次のことを行います:
ストアプログラミングエラーと解決策
問題が発生した場合に類似のエラーを検索する
コーディングパターンに特化した知識ベースを構築する
UVを使用したTribalのパッケージ化とインストール
前提条件
Python 3.12以上
uv パッケージ マネージャー (推奨)
ビルドとインストールの手順
オプション1:UVによる直接設置
最も簡単な方法は、現在のディレクトリから直接インストールすることです。
オプション2: 開発インストール
変更をすぐに反映させたい開発作業の場合:
オプション3: 最初にパッケージをビルドする
配布可能なパッケージをビルドする場合:
オプション4: uv tool installコマンドを使用する
ツールのインストール方法を使用することもできます。
検証
インストール後、ツールが正しくインストールされていることを確認します。
クロードとの統合
インストール後、Claude と統合できます。
使用法
利用可能なMCPツール
Tribal は次の MCP ツールを提供します。
add_error- 新しいエラーレコードを作成する (POST /errors)get_error- UUIDでエラーを取得する (GET /errors/{id})update_error- 既存のエラーを変更する (PUT /errors/{id})delete_error- エラーレコードを削除する (DELETE /errors/{id})search_errors- 条件でエラーを検索する (GET /errors)find_similar- 意味的類似性検索 (GET /errors/similar)get_token- JWTトークンを取得する(POST /token)
クロードとの使用例
クロードがエラーに遭遇した場合:
クロードが解決策を見つけたとき:
クロードへのコマンド
クロードに次のことを依頼できます。
「部族の知識ベースで同様のエラーを探してください」
「このソリューションをエラーデータベースに保存します」
「このエラーが以前に発生したかどうかを確認してください」
サーバーの実行
部族の命令を使う
Pythonモジュールの使用
レガシーエントリポイントの使用
コマンドラインオプション
FastAPIサーバーはhttp://localhost:8000で利用可能で、APIドキュメントは/docsにあります。Claudeやその他のMCP対応LLM用のMCPサーバーはhttp://localhost:5000で利用可能になります。
環境変数
FastAPIサーバー
PERSIST_DIRECTORY: ChromaDB ストレージパス (デフォルト: "./chroma_db")API_KEY: 認証キー(デフォルト: "dev-api-key")SECRET_KEY: JWT署名キー(デフォルト: "insecure-dev-key-change-in-production")REQUIRE_AUTH: 認証要件(デフォルト: "false")PORT: サーバーポート(デフォルト: 8000)
MCPサーバー
MCP_API_URL: FastAPI サーバーの URL (デフォルト: " http://localhost:8000 ")MCP_PORT: MCPサーバポート(デフォルト: 5000)MCP_HOST: バインドするホスト(デフォルト: "0.0.0.0")API_KEY: FastAPI アクセスキー (デフォルト: "dev-api-key")AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY、AWS_S3_BUCKET: AWS統合用
APIエンドポイント
POST /errors: 新しいエラーレコードを作成するGET /errors/{error_id}: IDでエラーを取得するPUT /errors/{error_id}: エラーレコードを更新するDELETE /errors/{error_id}: エラーを削除GET /errors: 条件でエラーを検索するGET /errors/similar: 類似のエラーを検索するPOST /token: 認証トークンを取得する
クライアントの使用
仕組み
TribalはChromaDBを使用してエラー記録と解決策を保存します
クロードがエラーに遭遇すると、エラーの詳細をTribalに送信します。
トライバルはエラーをベクトル化し、類似のエラーを検索します
クロードは適切な解決策を提案します
新しいソリューションは将来の参照用に保存されます
発達
テストの実行
リンティングと型チェック
GitHubワークフロー
このプロジェクトでは、継続的インテグレーションとデプロイメントにGitHub Actionsを使用しています。このワークフローは、メインへのプッシュとプルリクエスト時に、テスト、リンティング、型チェックを自動的に実行します。
ワークフローの手順
テスト: リンティング、型チェック、ユニットテストを実行します
Python 3.12 を使用
uvで依存関係をインストールします
ruff、black、mypy、pytest を実行
ビルドと公開: パッケージをビルドしてPyPIに公開します
メインブランチへのプッシュ時にのみトリガーされます
Pythonのビルドシステムを使用する
twineを使用してPyPIに公開する
ローカルテスト
提供されているスクリプトを使用して、GitHub ワークフローをローカルでテストできます。
このスクリプトは、ローカル マシン上で GitHub ワークフロー ステップをシミュレートします。
Pythonのバージョンをチェックします(3.12を推奨)
uvを使用して依存関係をインストールします
毛羽立ちとひだのある走り
黒でフォーマットをチェック
mypyで型チェックを実行する
pytestでテストを実行する
パッケージをビルドする
注: スクリプトは、ローカル テストの公開手順をスキップします。
プロジェクト構造
バージョン管理
Tribalはセマンティックバージョニングに準拠しています。詳細についてはVERSIONING.mdをご覧ください。
バージョン番号 (MAJOR.MINOR.PATCH)
データベース互換性のためのスキーマのバージョン管理
ブランチの命名規則
リリースとホットフィックスの手順
バージョンを確認するには以下を実行します:
依存関係の管理
展開
Docker デプロイメント
デスクトップ統合のクロード
オプション1: Claude for Desktopでサーバーを起動する
~/Library/Application Support/Claude/claude_desktop_config.json開きます。MCP サーバー構成を追加します (Tribal ツールがすでにインストールされていることを前提としています)。
{ "mcpServers": [ { "name": "tribal", "launchCommand": "tribal" } ] }デスクトップ版のClaudeを再起動する
オプション2: 実行中のDockerコンテナに接続する
コンテナを起動します。
cd /path/to/tribal docker-startClaude をデスクトップ用に設定する:
{ "mcpServers": [ { "name": "tribal", "url": "http://localhost:5000" } ] }
Claude Code CLI 統合
トラブルシューティング
部族のインストールを確認する:
which tribal設定を確認してください:
claude mcp listテストサーバーのステータス:
tribal statusClaudeの出力でエラーメッセージを探す
データベースディレクトリが存在し、適切な権限があることを確認してください
クラウド展開
このプロジェクトには、AWS サービスのプレースホルダー実装が含まれています。
S3Storage: Amazon S3にエラーレコードを保存するDynamoDBStorage: データベースとして DynamoDB を使用する場合