Integrations
Enables environment-based configuration of API keys and server settings through .env file management
Supports development mode with automatic server reloading when code changes are detected
Provides access to OpenAI models (GPT) and DALL-E image generation through a unified API, supporting chat completions, legacy completions, and tool calling
モデルコンテキストプロトコル(MCP)サーバー
複数の AI モデル プロバイダーに統合された API を提供する、モデル コンテキスト プロトコルのシンプルなサーバー実装。
特徴
- 複数の AI プロバイダー (Anthropic、OpenAI) 向けの統合 API
- チャット補完と従来の補完のサポート
- ツール呼び出しサポート
- コンテキスト/システムメッセージの処理
- 環境ベースの構成
- 永続性と状態管理のためのMongoDBデータベース
- ツール実行履歴と分析
インストール
セットアップ スクリプトは、必要な API キーの構成をガイドします。
ANTHROPIC_API_KEY
- Claude モデルの場合OPENAI_API_KEY
- GPTモデルとDALL-E画像生成用STABILITY_API_KEY
- 安定拡散画像生成用GOOGLE_CSE_API_KEY
とGOOGLE_CSE_ID
- ウェブ検索機能用BING_SEARCH_API_KEY
- フォールバックウェブ検索用
必要に応じて、 .env
ファイルを手動で編集することもできます。
MongoDBのセットアップ
MCPサーバーはデータの永続化にMongoDBを使用します。MongoDBの設定にはいくつかのオプションがあります。
オプション 1: 自動セットアップ (推奨)
MongoDB セットアップ スクリプトを実行すると、プロセスがガイドされます。
このスクリプトは次のことを行います。
- Dockerが利用可能かどうかを確認する
- Docker Compose を使用して MongoDB を起動します (利用可能な場合)
- .envファイルで接続を設定する
- MongoDB接続を確認する
オプション2: 手動Dockerセットアップ
MongoDB を使い始める最も簡単な方法は、付属の Docker Compose 構成を使用することです。
MongoDBはmongodb://mcpuser:mcppassword@localhost:27017/mcp-server
で利用可能になります。
Mongo Express(Web管理)はhttp://localhost:8081で利用できます。
オプション3: ローカルMongoDBインストール
MongoDB をローカルにインストールする場合:
- https://www.mongodb.com/try/download/communityから MongoDB をインストールします。
- MongoDBサービスを開始する
.env
ファイルを次のように更新します。Copy
オプション4: MongoDB Atlas (クラウド)
実稼働環境での使用には、MongoDB Atlas が推奨されます。
- https://www.mongodb.com/cloud/atlasでアカウントを作成します。
- 新しいクラスターを作成する
- データベースユーザーを設定し、IPアドレスをホワイトリストに登録する
- 接続文字列を取得し、
.env
ファイルを更新します。Copy
データベース移行
既存のデータを MongoDB に移行するには:
このスクリプトは次のことを行います。
- ツール定義をMongoDBに移行する
- 設定(APIキーなど)をMongoDBに移行する
- バックアップデータがある場合はインポートする
使用法
サーバーを起動する
サーバーはhttp://localhost:3000 (または .env で指定したポート) で実行されます。
起動オプション
- 標準スタート(
npm start
):- APIキーが設定されているかどうかを確認します
- キーが見つからない場合はセットアップを要求します
- 初めての方におすすめ
- 開発モード(
npm run dev
):- コード変更時に自動リロードするために nodemon を使用します
- 環境チェックは引き続き実行します
- 開発に最適
- クイックスタート(
npm run quick-start
):- すべての環境チェックをバイパスします
- すぐにサーバーを起動します
- 設定が正しいことがわかっている場合に便利です
- PM2 プロダクションモード(
npm run pm2:start:prod
):- PM2プロセスマネージャを使用してサーバーを実行します
- サーバーがクラッシュした場合は自動的に再起動します
- 実稼働環境に最適化
- 環境チェックをバイパスする
PM2プロセスマネージャの使用
このサーバーは、Node.jsアプリケーション向けのプロダクションプロセスマネージャーであるPM2で実行できます。PM2は次のような機能を提供します。
- プロセス管理(クラッシュ時の再起動)
- ログ管理
- パフォーマンス監視
- 負荷分散(複数インスタンスの場合)
PM2コマンド
PM2の設定はecosystem.config.js
に保存されています。このファイルを編集することで、以下の変更を加えることができます。
- プロセス名
- 環境変数
- メモリ制限
- 展開構成
- インスタンス数(負荷分散用)
APIエンドポイント
POST /mcp/:provider
統合された API を通じて AI モデルにリクエストを送信します。
URL パラメータ:
provider
: 使用する AI プロバイダー (anthropic
またはopenai
)
リクエスト本文:
または (レガシー形式):
**レスポンス:**プロバイダーの API からの生のレスポンスを返します。
GET /tools/available
利用可能なすべてのツールの包括的なリストと詳細情報を取得します。
クエリパラメータ:
format
- レスポンス形式:json
(デフォルト)、yaml
、table
、またはhtml
category
- ツールをカテゴリ別にフィルタリングする(オプション)enabled
- 有効ステータスでフィルタリング:true
(デフォルト) またはfalse
search
- ツールを名前、説明、タグで検索しますprovider
- プロバイダー別にツールをフィルタリングします(例:openai
、google
)limit
- 返されるツールの最大数(ページ区切り用)offset
- ページ区切りのオフセット(デフォルト: 0)
応答(JSON 形式):
GET /health
サーバーが実行中の場合、ステータス 200 を返すヘルス チェック エンドポイント。
データ管理
データベースのバックアップ
データベースのバックアップを作成および管理できます。
データベース接続のテスト
MongoDB の設定を確認するには:
クライアントの例
コマンドラインクライアント
テストクライアントはsrc/client.js
に含まれています。実行するには、以下のコマンドを実行します。
ウェブクライアント
サーバーが稼働中の場合、 http://localhost:3000でシンプルなウェブインターフェースが利用できます。これを使用して、ブラウザから直接 API をテストできます。
利用可能なツール
MCP サーバーは、ユーザーと AI エージェントが利用可能なすべてのツールをプログラムで一覧表示できるようにするツール検出エンドポイントを提供します。
ツールの発見
GET /tools/available
- 利用可能なすべてのツールを詳細情報とともに一覧表示します。
- 複数の形式をサポート: JSON、YAML、HTML、ASCII テーブル
- カテゴリ、プロバイダー、検索用語によるフィルタリングを提供します
- 各ツールの詳細なメタデータと使用例が含まれています
使用例:
ウェブ検索ツール
サーバーには、Web 検索および取得ツールが組み込まれています。
- ウェブ検索(
/tools/web/search
)- 特定のクエリに関する情報をウェブで検索する
- パラメータ:
query
(必須)、limit
(オプション) - 必要条件:
GOOGLE_CSE_API_KEY
およびGOOGLE_CSE_ID
環境変数 - Google 検索が失敗した場合は
BING_SEARCH_API_KEY
にフォールバックします
- Webコンテンツ(
/tools/web/content
)- 特定のURLからコンテンツを取得して抽出する
- パラメータ:
url
(必須)、useCache
(オプション)
- Web バッチ(
/tools/web/batch
)- 複数のURLからコンテンツを並列に取得する
- パラメータ:
urls
(必須配列)、useCache
(オプション)
画像生成ツール
サーバーには、画像生成、編集、バリエーション ツールも含まれています。
- イメージの生成(
/tools/image/generate
)- テキストプロンプトに基づいて画像を生成する
- パラメータ:
prompt
(必須): 画像の詳細な説明provider
(オプション):openai
またはstability
(デフォルトはopenai
)options
(オプション): プロバイダー固有のオプション
- 画像編集(
/tools/image/edit
)- テキストプロンプトで既存の画像を編集する
- パラメータ:
imagePath
(必須): 編集する画像へのパスprompt
(必須): 行う編集の説明maskPath
(オプション): マスク画像へのパス
- 画像バリエーションを作成する(
/tools/image/variation
)- 既存の画像のバリエーションを作成する
- パラメータ:
imagePath
(必須): バリエーションを作成するための画像へのパス
**注:**これらのツールを使用するには、
.env
ファイルに API キーを設定する必要があります。
- OpenAI画像の場合:
OPENAI_API_KEY
- 安定性AIイメージの場合:
STABILITY_API_KEY
- ウェブ検索の場合:
GOOGLE_CSE_API_KEY
とGOOGLE_CSE_ID
AIモデルとのツール統合
MCPサーバーは、AIモデルによるツールの呼び出しと実行を自動的に処理します。モデルがツールの使用を決定すると、サーバーは次の処理を実行します。
- 指定されたパラメータを使用して要求されたツールを実行します
- ツールの応答をモデルに返します
- モデルはツールの応答を最終的な答えに組み込むことができる。
AIモデルのためのツール検出
AIモデルは/tools/available
エンドポイントを使用して、利用可能なツールとその使用方法を検出できます。これは特に以下の場合に便利です。
- 実行中の動的なツール検出
- AIエージェントの自己文書化
- AIシステムが利用可能な機能に適応できるようにする
AI モデルのシステム プロンプトの例:
ツールの使用例
ツールの使用方法を示すサンプル コードについては、 /examples
ディレクトリを参照してください。
新しいプロバイダーまたはツールの追加
新しいAIプロバイダーの追加
新しい AI プロバイダーを追加するには:
- プロバイダーのSDKをプロジェクトに追加する
server.js
に新しいハンドラー関数を作成する- メインルートハンドラに新しいケースを追加する
新しいツールの追加
サーバーに新しいツールを追加するには:
/src/tools
ディレクトリに新しいツール実装を作成する- ツール定義を
tool-definitions.js
に追加する server.js
のツール実行関数を更新します- ツールを直接使用するための新しい API エンドポイントを追加する (必要な場合)
ライセンス
ISC
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
一貫したインターフェースを通じて Anthropic や OpenAI などの複数の AI モデル プロバイダーとのやり取りを可能にし、チャットの補完、ツールの呼び出し、コンテキスト処理をサポートする統合 API サーバーです。
Related MCP Servers
- -securityAlicense-qualityThis server facilitates the invocation of AI models from providers like Anthropic, OpenAI, and Groq, enabling users to manage and configure large language model interactions seamlessly.Last updated -4PythonMIT License
- -security-license-qualityAn open standard server implementation that enables AI assistants to directly access APIs and services through Model Context Protocol, built using Cloudflare Workers for scalability.Last updated -TypeScript
- -securityFlicense-qualityA modern AI service proxy that enables interaction with multiple AI providers (Anthropic Claude, OpenAI) through a unified API, deployed globally using Cloudflare Workers.Last updated -13TypeScript
- AsecurityFlicenseAqualityA Model Context Protocol server that enables AI assistants to interact with the Omi API for retrieving and creating conversations and memories for users.Last updated -4TypeScript