Fledge MCP Server
Fledge MCP サーバー
これは、Fledge 機能を Cursor AI に接続し、AI が自然言語コマンドを介して Fledge インスタンスと対話できるようにする Model Context Protocol (MCP) サーバーです。
前提条件
Fledge はローカルにインストールされているか、API 経由でアクセス可能です (デフォルト: http://localhost:8081 )
カーソルAIがインストール済み
Python 3.8以上
Related MCP server: RAG MCP server
インストール
このリポジトリをクローンします:
git clone https://github.com/Krupalp525/fledge-mcp.git
cd fledge-mcp依存関係をインストールします。
pip install -r requirements.txtサーバーの実行
Fledge が実行されていることを確認します。
fledge startMCP サーバーを起動します。
python mcp_server.pyAPI キー認証による安全な操作の場合:
python secure_mcp_server.pyヘルスエンドポイントにアクセスして動作していることを確認します。
curl http://localhost:8082/health応答として「Fledge MCP Server is running」が表示されます。
カーソルに接続
カーソルで、「設定」>「MCPサーバー」に移動します。
新しいサーバーを追加します:
ツールファイル: 含まれている tools.json をアップロードするか、ローカルパスを指定します。
セキュア サーバーの場合は、セキュア サーバーの起動時に生成される api_key.txt ファイルの値を使用して、「X-API-Key」ヘッダーを構成します。
テストします: Cursor の Composer (Ctrl+I) を開き、「Fledge API にアクセスできるかどうかを確認する」と入力すると、AI が
validate_api_connectionツールを呼び出すはずです。
利用可能なツール
データアクセスと管理
get_sensor_data : 時間範囲と制限によるフィルタリングをオプションで行い、Fledge からセンサーデータを取得します。
list_sensors : Fledgeで利用可能なすべてのセンサーを一覧表示します
ingest_test_data : オプションのバッチカウントを使用して、テストデータをFledgeに取り込む
サービス制御
get_service_status : すべてのFledgeサービスのステータスを取得する
start_stop_service : タイプ別にFledgeサービスを開始または停止する
update_config : Fledge 設定パラメータを更新する
フロントエンドコード生成
generate_ui_component : Fledge のデータ視覚化用の React コンポーネントを生成する
fetch_sample_frontend : さまざまなフレームワークのサンプルフロントエンドテンプレートを取得します。
suggests_ui_improvements : UI コードを改善するための AI を活用した提案を取得します
リアルタイムデータストリーミング
subscribe_to_sensor : センサーデータの更新のサブスクリプションを設定する
get_latest_reading : 特定のセンサーから最新の読み取り値を取得する
デバッグと検証
validate_api_connection : Fledge API がアクセス可能かどうかを確認する
simulate_frontend_request : さまざまなメソッドとペイロードを使用して API リクエストをテストする
ドキュメントとスキーマ
get_api_schema : 利用可能なFledge APIエンドポイントに関する情報を取得する
list_plugins : 利用可能なFledgeプラグインを一覧表示する
高度なAI支援機能
generate_mock_data : テスト用の現実的な模擬センサーデータを生成する
APIのテスト
付属のテスト スクリプトを使用してサーバーをテストできます。
# For standard server
python test_mcp.py
# For secure server with API key
python test_secure_mcp.pyセキュリティオプション
セキュア サーバー (secure_mcp_server.py) は、API キー認証を追加します。
初回実行時に、api_key.txtに保存されるAPIキーを生成します。
すべてのリクエストには、X-API-Key ヘッダーにこのキーを含める必要があります。
ヘルスチェックエンドポイントは認証なしでもアクセス可能です
APIリクエストの例
# Validate API connection
curl -X POST -H "Content-Type: application/json" -d '{"name": "validate_api_connection"}' http://localhost:8082/tools
# Generate mock data
curl -X POST -H "Content-Type: application/json" -d '{"name": "generate_mock_data", "parameters": {"sensor_id": "temp1", "count": 5}}' http://localhost:8082/tools
# Generate React chart component
curl -X POST -H "Content-Type: application/json" -d '{"name": "generate_ui_component", "parameters": {"component_type": "chart", "sensor_id": "temp1"}}' http://localhost:8082/tools
# For secure server, add API key header
curl -X POST -H "Content-Type: application/json" -H "X-API-Key: YOUR_API_KEY" -d '{"name": "list_sensors"}' http://localhost:8082/toolsサーバーの拡張
ツールを追加するには:
ツール定義を
tools.jsonに追加するmcp_server.pyとsecure_mcp_server.pyにツール ハンドラーを実装します。
生産上の考慮事項
本番環境への展開の場合:
HTTPSを使用する
Nginxのようなリバースプロキシの背後にデプロイする
より堅牢な認証(JWT、OAuth)を実装する
レート制限を追加する
サブスクリプション用の永続データストレージを設定する
Smithery.aiへのデプロイ
Fledge MCPサーバーは、Smithery.aiにデプロイすることで、スケーラビリティと可用性を向上させることができます。デプロイするには、以下の手順に従ってください。
前提条件
ローカルマシンにDockerがインストールされている
Smithery.aiアカウント
Smithery CLIツールがインストールされました
ビルドとデプロイ
# Build the Docker image docker build -t fledge-mcp . # Deploy to Smithery.ai smithery deploy構成
smithery.jsonファイルには、デプロイメントの構成が含まれています。ポート 8082 の WebSocket トランスポート
設定可能なFledge API URL
ツールの定義とパラメータ
タイムアウト設定
環境変数Smithery.ai ダッシュボードで次の環境変数を設定します。
FLEDGE_API_URL: Fledge APIエンドポイントAPI_KEY: セキュア API キー (セキュア モードを使用している場合)
検証デプロイ後、サーバーが実行中であることを確認します。
smithery status fledge-mcp監視Smithery.ai ダッシュボードを通じて展開を監視します。
リアルタイムログ
パフォーマンスメトリック
エラー追跡
リソースの使用
更新デプロイメントを更新するには:
# Build new image docker build -t fledge-mcp . # Deploy updates smithery deploy --update
JSON-RPC プロトコルのサポート
サーバーは、WebSocket経由のJSON-RPC 2.0を使用してモデルコンテキストプロトコル(MCP)を実装します。以下のメソッドがサポートされています。
初期化する
{ "jsonrpc": "2.0", "method": "initialize", "params": {}, "id": "1" }応答:
{ "jsonrpc": "2.0", "result": { "serverInfo": { "name": "fledge-mcp", "version": "1.0.0", "description": "Fledge Model Context Protocol (MCP) Server", "vendor": "Fledge", "capabilities": { "tools": true, "streaming": true, "authentication": "api_key" } }, "configSchema": { "type": "object", "properties": { "fledge_api_url": { "type": "string", "description": "Fledge API URL", "default": "http://localhost:8081/fledge" } } } }, "id": "1" }ツール/リスト
{ "jsonrpc": "2.0", "method": "tools/list", "params": {}, "id": "2" }応答: 使用可能なツールとそのパラメータのリストを返します。
ツール/呼び出し
{ "jsonrpc": "2.0", "method": "tools/call", "params": { "name": "get_sensor_data", "parameters": { "sensor_id": "temp1", "limit": 10 } }, "id": "3" }
エラーコード
サーバーは標準の JSON-RPC 2.0 エラー コードに従います。
-32700: 解析エラー
-32600: 無効なリクエスト
-32601: メソッドが見つかりません
-32602: 無効なパラメータ
-32000: サーバーエラー
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
Connect Claude, Cursor, Codex, and other AI tools to your robotics mission data.
Connect ChatGPT, Claude, Cursor or VS Code to your Windows PC: files, terminal, browser, apps.
Persistent memory for Claude Code and Cursor. Stop re-explaining your project every session.
Connect Claude, Cursor, or ChatGPT to your business data. Ask questions, get answers.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceFacilitates integration with the Cursor code editor by enabling real-time code indexing, analysis, and bi-directional communication with Claude, supporting concurrent sessions and automatic reconnection.6 npm39MIT
- FlicenseNot gradedqualityDmaintenanceImplements a RAG workflow that integrates with any custom knowledge base and can be triggered directly from the Cursor IDE.-
- AlicenseBqualityDmaintenanceBridges Claude Code CLI with Cursor IDE to use your existing Claude subscription without separate API costs.13MIT
- AlicenseCqualityBmaintenanceEnables Cursor IDE to interact with Tealfabric platform, allowing management of webapps, processes, and documents through natural language.372Apache 2.0