Nebulablock Mcp Server について
NebulaBlock APIをMCP対応環境から利用するための公式MCPサーバーです。`fastmcp`で構築され、APIキーはコマンドライン引数または`.env`ファイルで設定できます。
主な機能
- 01`fastmcp`を使用
- 02APIキーでNebulaBlock APIに接続
- 03コマンドライン引数でキーを設定
- 04`.env`ファイルでキーを設定
- 05単体テストと統合テストを用意
活用シーン
- 01MCPクライアントからNebulaBlock APIを呼び出す
- 02コマンドライン引数でAPIキーを指定
- 03`.env`ファイルでAPIキーを設定
MCP 対応
`fastmcp`ベースのMCPサーバーとしてNebulaBlock APIの機能をMCPクライアントに公開します。READMEには個別のツールは記載されていません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
NebulaBlock API MCP
このリポジトリには、公式の NebulaBlock API Model Context Protocol(MCP)サーバーが含まれています。このサーバーは fastmcp ライブラリと連携し、NebulaBlock API のすべての機能を利用可能なツールとして公開することで、あらゆる MCP 対応環境でシームレスかつ効率的に操作できるようにします。
プロジェクト構成
.
├── src/
│ ├── __init__.py
│ ├── config.py
│ ├── main.py
│ ├── tools.py
│ └── mcp_project.egg-info/
├── tests/
│ ├── __init__.py
│ └── test_main.py
├── scripts/
├── docs/
├── .env.example
├── .gitignore
├── pyproject.toml
├── README.md
└── uv.lock
src/:設定やツール定義など、アプリケーションの主要なソースコードが含まれています。tests/:単体テストと統合テストが含まれています。scripts/:ユーティリティスクリプト(セットアップ、データ生成など)用のディレクトリです。docs/:補足ドキュメント用のディレクトリです。.env.example:環境変数のサンプルファイルです。.gitignore:意図的に追跡対象外とするファイルを指定します。pyproject.toml:依存関係やプロジェクト情報を含む、プロジェクトのメタデータとビルドシステムの設定ファイルです。README.md:このドキュメントファイルです。uv.lock:uvによる依存関係管理用のロックファイルです。
インストールとセットアップ
このプロジェクトをセットアップして実行するには、次の手順に従ってください。
-
リポジトリをクローンします(該当する場合):
git clone https://github.com/Nebula-Block-Data/api-mcp cd mcp-project -
仮想環境を作成します: プロジェクトの依存関係を管理するため、仮想環境の使用を強くおすすめします。
python3 -m venv .venv -
仮想環境を有効化します:
- macOS/Linux:
source .venv/bin/activate
- 依存関係をインストールします:
このプロジェクトでは、依存関係の管理に
pyproject.tomlを使用します。setuptoolsをインストールしてから、プロジェクトを編集可能モードでインストールしてください。
これにより、uv pip install -e .fastmcpとpyproject.tomlに指定されたその他の依存関係がインストールされます。
NebulaBlock API MCP サーバーの実行
NebulaBlock API MCP サーバーを起動するには、次を実行します。
uv run -m src.main
次のような出力が表示されます:[05/29/25 17:32:58] INFO Starting MCP server 'FastMCP' with transport 'stdio'
API キーの設定
NebulaBlock API キーは、次の 2 つの方法で設定できます。
-
コマンドライン引数
--api-keyを使用する: アプリケーションの実行時に API キーを直接指定できます。python -m src.main --api-key your_nebula_block_api_keyこの方法では、
.envファイルに設定された API キーよりも、指定したキーが優先されます。 -
.envファイルを使用する: プロジェクトのルートディレクトリに.envという名前のファイルを作成し、API キーを追加します。NEBULA_BLOCK_API_KEY=your_nebula_block_api_key--api-key引数が指定されていない場合、アプリケーションはこのファイルから API キーを自動的に読み込みます。
テストの実行
単体テストを実行するには、仮想環境が有効になっており、pytest がインストールされていることを確認してください(pip install -e . によってインストールされます)。
pytest
テストが成功したことを示す出力が表示されます。
MCP クライアントとの連携
NebulaBlock API MCP サーバーを利用するには、MCP クライアント(MCP 拡張機能を備えた VS Code など)を設定して、このサーバーに接続する必要があります。以下は settings.json ファイルの設定例です。
{
"mcpServers": {
"nebula": {
"command": "~/path/to/uv",
"args": [
"--directory",
"~/path/to/nebulablock_mcp",
"run",
"-m",
"src.main",
"--api-key=YOUR_API_KEY"
]
}
}
}
~/path/to/uvをuv実行ファイルの実際のパスに置き換えてください。~/path/to/nebulablock_mcpをプロジェクトディレクトリの実際のパスに置き換えてください。YOUR_API_KEYを実際の NebulaBlock API キーに置き換えてください。
ライセンス
このプロジェクトは MIT License の下でライセンスされています。詳細については、LICENSE ファイル(作成されている場合)を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。