🚀 Onyx MCP サーバー
Onyx は、言語モデルに基づく質問応答システムです。企業内部での文書の迅速な検索と理解を目的として設計されています。カスタムルールプラグインによる機能拡張をサポートし、LlamaCpp などのオープンソース大規模言語モデルとの統合も可能です。
🚀 クイックスタート
Onyx MCP サーバーを使用することで、企業内部の文書を迅速に検索し理解することができます。以下に、基本的な使い方を説明します。
📦 インストール
npm を使用してインストールします。
npm install onyx-mcp-server
🛠️ 設定
config.json
という名前の設定ファイルを作成します。以下は設定例です。
{
"port": 3001,
"api_key": "your_api_key",
"document_store": {
"type": "local",
"path": "./documents"
},
"llm": {
"model_path": "/path/to/llama/model",
"n_ctx": 2048
}
}
💻 使用例
基本的な使用法
サーバーを起動するには、以下のコマンドを実行します。
npm start -- --config config.json
Onyx にクエリを送信するには、以下のコマンドを使用します。
curl -X POST http://localhost:3001/api/v1/query \
-H "Content-Type: application/json" \
-d '{"query": "What is our latest policy on remote work?"}'
🛠️ 開発
開発モードでの実行
以下のコマンドで開発モードでサーバーを実行できます。
npm run dev
変更のコミット
このプロジェクトは Conventional Commits 規約に従っています。コミットを簡単に行うための対話型コミットツールを用意しています。
npm run commit
手動でコミットメッセージを作成する場合は、以下の形式に従ってください。
<タイプ>[オプションの範囲]: <説明>
[オプションの本文]
[オプションの注釈]
ここで <タイプ>
は、feat、fix、docs、style、refactor、perf、test、build、ci、chore、revert のいずれかです。
本番用ビルド
以下のコマンドで本番用ビルドを行います。
npm run build
🧪 テスト
テストスイートを実行するには、以下のコマンドを使用します。
npm test
カバレッジ付きのテストを実行するには、以下のコマンドを使用します。
npm run test:coverage
📋 フォーマットチェック
フォーマットチェックを行うには、以下のコマンドを使用します。
npm run lint
フォーマットエラーを修正するには、以下のコマンドを使用します。
npm run lint:fix
🚀 継続的インテグレーション
このプロジェクトは GitHub Actions を使用して継続的インテグレーションとデプロイを行っています。CI パイプラインは、コードをメインブランチにプッシュするか、プルリクエストを作成すると実行され、以下のチェックを行います。
- フォーマットチェック
- ビルド
- テスト
- コードカバレッジレポート
自動バージョンアップと npm への公開
PR がメインブランチにマージされると、システムが適切なバージョンアップタイプを自動的に決定し、npm に公開します。このプロセスでは、PR タイトルとコミットメッセージを分析してバージョンアップタイプを決定します。
- PR タイトルの検証:すべての PR タイトルは Conventional Commits 規約に従っている必要があります。
- PR タイトルはタイプで始まる必要があります(例:
feat:
、fix:
、docs:
)。
- この検証は、PR を作成または更新すると自動的に行われます。
- 規約に従っていない PR は失敗します。
- コミットメッセージの検証:すべてのコミットメッセージも通常のコミット形式に従っている必要があります。
- コミットメッセージはタイプで始まる必要があります(例:
feat:
、fix:
、docs:
)。
- これは、コミット時に git フックによって実行されます。
- 規約に従っていないコミットは拒否されます。
npm run commit
を使用して対話型コミットツールを利用できます。
- バージョンアップの決定:システムは PR タイトルとコミットメッセージを分析してバージョンアップタイプを決定します。
- タイトルが
feat
で始まるか、新機能を含む PR → メジャーバージョンをアップ
- タイトルが
fix
で始まるか、修正を含む PR → パッチバージョンをアップ
- その他の場合 → ビルドバージョンをアップ
- npm への公開:決定されたバージョンタイプに基づいて、以下のコマンドが自動的に実行されます。
git tag <バージョン番号>
git push --tags
npm publish
🤝 貢献ガイド
コードの提出
コードを提出するには、以下の手順に従ってください。
main
ブランチをベースに新しい機能ブランチを作成します。
git checkout -b feature/your-feature main
- 変更をコミットし、すべてのチェックを実行します。
npm run lint && npm test
- あなたのリポジトリにプッシュし、プルリクエストを作成します。
問題報告
問題を報告するには、GitHub Issues ページで報告してください。
📄 ライセンス
このプロジェクトは MIT ライセンスに従っています。詳細については LICENSE ファイルを参照してください。

Gitee ミラーアドレス