f0_make_randomvalues MCP Server
FGDB(Functional Graph Database)システムの f0_make_randomvalues
関数ブロックを、Model Context Protocol (MCP) サーバーとして実装したものです。
概要
このMCPサーバーは、乱数生成機能をClaude DesktopやClaude Codeなどのクライアントアプリケーションに提供します。
主な機能
乱数生成: 指定された範囲とパラメータで乱数を生成
データ保存: 生成した乱数をCSVファイルに保存
統計分析: データの統計的特性を分析
データ読み込み: 保存されたCSVファイルからデータを読み込み
リソースアクセス: URI経由でデータやメタデータにアクセス
プロンプトテンプレート: 一般的なワークフロー用のインタラクティブプロンプト
システム要件
Python 3.8以上
uv(推奨)またはpip
Claude DesktopまたはClaude Code(MCPクライアントとして)
インストール
1. uvを使った環境構築
uvのインストール
Windows (PowerShell):
macOS/Linux:
プロジェクトのセットアップ
2. pipを使った環境構築(代替方法)
設定
Claude Desktopでの設定
設定ファイルの場所
macOS:
Windows:
設定内容
claude_desktop_config.json
に以下を追加:
注意: パスは実際のインストール先に合わせて変更してください。
macOS/Linuxの例:
Claude Codeでの設定
Claude Codeの設定は、Claude Desktopと同じ設定ファイルを共有します。
設定手順
設定ファイルを開く
Claude Code内で設定メニューを開く
MCP設定セクションに移動
サーバーを追加 上記のClaude Desktop設定と同じJSON設定を追加
再起動 Claude Codeを再起動して設定を反映
使い方
基本的な使用例
1. 乱数を生成する
MCPサーバーが generate_random_numbers
ツールを使用して乱数を生成します。
2. データを保存する
3. 統計分析を実行する
4. リソースにアクセスする
サーバーが random://current
リソースにアクセスします。
利用可能なツール
generate_random_numbers
乱数を生成します。
パラメータ:
count
(int): 生成する乱数の個数(デフォルト: 5)min_value
(int): 最小値(デフォルト: 0)max_value
(int): 最大値(デフォルト: 999)seed
(int, optional): 乱数シード(再現性のため)
戻り値:
save_random_data
乱数データをCSVファイルに保存します。
パラメータ:
numbers
(List[int]): 保存する整数のリストfilename
(str): 出力ファイル名(デフォルト: "data.csv")
analyze_random_data
データの統計分析を実行します。
パラメータ:
numbers
(List[int]): 分析する整数のリスト
戻り値:
load_data_from_csv
CSVファイルからデータを読み込みます。
パラメータ:
filename
(str): 読み込むCSVファイル名
write_function_notation
FGDB関数記法をファイルに書き込みます。
パラメータ:
filename
(str): 出力ファイル名(デフォルト: "func.txt")
利用可能なリソース
random://current
最後に生成された乱数データを取得します。
file://data/{filename}
保存されたCSVファイルからデータを読み込みます。
例: file://data/test_data.csv
meta://statistics
現在のデータの統計メタデータを取得します。
meta://files
データディレクトリ内の全ファイルをリストアップします。
meta://server-info
サーバー情報と機能一覧を取得します。
プロンプトテンプレート
Generate Test Dataset
テストデータセットを生成するためのガイド付きプロンプト。
パラメータ:
purpose
: データセットの目的(デフォルト: "testing")size
: サイズ - "small"(10), "medium"(100), "large"(1000)
Analyze Random Data
データ分析のためのステップバイステップガイド。
パラメータ:
data_source
: "current"または保存されたファイル名
Create Reproducible Dataset
シードを使用して再現可能なデータセットを作成。
パラメータ:
seed
: 乱数シード(デフォルト: 42)count
: 生成する値の数(デフォルト: 100)
Batch Data Generation
複数バッチのデータを生成するワークフロー。
パラメータ:
num_batches
: バッチ数(デフォルト: 5)batch_size
: 各バッチのサイズ(デフォルト: 20)
Data Quality Check
データ品質チェックを実行するガイド。
パラメータ:
filename
: チェックするCSVファイル(デフォルト: "data.csv")
開発とデバッグ
デバッグモードでの実行
MCPインスペクターの使用
MCPインスペクターを使用してサーバーをテストできます:
ログの確認
macOS:
Windows:
プロジェクト構造
トラブルシューティング
サーバーが起動しない
Pythonバージョンを確認
python --version # 3.8以上が必要依存関係を再インストール
uv pip install -r requirements.txt --force-reinstallパス設定を確認 設定ファイルのパスが絶対パスで正しいか確認
ツールが見つからない
Claude Desktop/Codeを再起動
設定ファイルの文法を確認 JSONが正しい形式か確認(カンマ、括弧など)
サーバーログを確認 エラーメッセージを確認
データが保存されない
書き込み権限を確認
# macOS/Linux ls -la mcp/data/ # Windows icacls mcp\dataディレクトリが存在するか確認
# 必要に応じて作成 mkdir -p mcp/data
セキュリティ考慮事項
ファイルアクセスは
./data
ディレクトリ内に制限されていますパストラバーサル攻撃を防ぐための検証が実装されています
許可された拡張子(.csv, .txt, .json)のみアクセス可能です
ライセンス
このプロジェクトはFGDBシステムの一部です。
参考資料
サポート
問題が発生した場合は、以下を確認してください:
この README のトラブルシューティングセクション
mcp_specification.md
の技術仕様サーバーログファイル
バージョン: 1.0.0 最終更新: 2025-10-02
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Enables random number generation with statistical analysis, CSV data storage, and data visualization capabilities. Provides interactive prompts for creating test datasets, analyzing data quality, and managing reproducible random data workflows.