mcpField
F
Fuel Network & Sway Language MCP Server

Fuel Network & Sway Language MCP Server

ローカル
github.com/FuelLabs開発ツール79 週間前に更新

Fuel Network & Sway Language MCP Server について

Fuel Network & Sway Language MCP Serverは、開発者やIDE向けにFuelとSwayのドキュメント検索を提供します。文書をローカルで索引化し、セマンティック検索とキーワード検索へのフォールバックを組み合わせます。stdioとHTTPに対応します。

主な機能

  1. 01Fuelドキュメントのローカル意味検索
  2. 02キーワード検索に切り替えるハイブリッド検索
  3. 03Vectraによるファイルベースの索引
  4. 04Sway標準ライブラリのパスと型を提供
  5. 05stdioとHTTPのトランスポートに対応

活用シーン

  1. 01IDE内でFuelドキュメントを検索
  2. 02FuelVMやスマートコントラクトの情報を探す
  3. 03Sway標準ライブラリのパスと型を取得

MCP 対応

MCP サーバーとして、ドキュメント検索用の`searchFuelDocs`とSwayコンテキスト用の`provideStdContext`を公開します。stdioとHTTPのトランスポートに対応します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Fuel Network と Sway Language の MCP サーバー

このプロジェクトは、Fuel Network と Sway Language のエコシステム向けに Model Context Protocol(MCP)サーバーを提供します。IDE(Cursor など)から、開発環境内で Fuel のドキュメントを直接検索し、操作できます。

このサーバーは、オープンソースの埋め込みモデル(Transformers.js 経由)を使用して、Fuel と Sway のドキュメントをローカルの Vectra ベクトルデータベースにインデックス化し、高度なセマンティック検索機能を実現します。

機能

  • docs.fuel.network のコンテンツをローカルでセマンティック検索
  • Docker 不要 — Bun だけで実行可能
  • Vectra による高速なファイルベースのベクトルストレージ
  • 検索結果のフィルタリングとフォーマットを強化
  • キーワード検索へのフォールバックに対応したハイブリッド検索

クイックインストール

# Clone the repo
git clone https://github.com/FuelLabs/fuel-mcp-server
cd fuel-mcp-server

# Install dependencies
bun install

# Index documentation
bun run src/indexer.ts ./docs

# Test search
bun run src/query.ts --run "What is FuelVM?"

# Start MCP server
bun run src/cli.ts

使用方法

STDIO トランスポート(デフォルト)
bun run src/cli.ts
# or explicitly
bun run src/cli.ts --transport stdio
HTTP トランスポート
bun run src/cli.ts --transport http --port 3500
# Server runs at http://127.0.0.1:3500/mcp
# Health check: http://127.0.0.1:3500/health
CLI オプション
bun run src/cli.ts --help
bun run src/cli.ts --transport http --port 3500
bun run src/cli.ts --transport stdio

Claude/Cursor との連携

MCP 設定ファイルに追加してください:

{
  "mcpServers": {
    "fuel-server": {
      "command": "bun",
      "args": ["run", "/absolute/path/to/fuel-mcp-server/src/cli.ts", "--transport", "stdio"]
    }
  }
}

プロジェクト構成

.
├── docs/                     # Markdown documentation files
├── src/
│   ├── cli.ts                # Main CLI entry point
│   ├── server.ts             # MCP server factory
│   ├── transports/
│   │   ├── stdio.ts          # STDIO transport
│   │   └── http.ts           # HTTP transport
│   ├── chunker.ts            # Markdown chunking logic
│   ├── indexer.ts            # Document indexing script
│   ├── query.ts              # Search query script
│   └── *.test.ts             # Test files
├── vectra_index/             # Local vector database (created after indexing)
├── package.json
└── README.md

前提条件

  • Bun: bun.sh からインストールしてください

使用方法

1. ドキュメントをインデックス化する

Markdown ファイルを ./docs に配置するか、別のディレクトリを指定してください:

# Index docs in ./docs (default)
bun run src/indexer.ts

# Index custom directory
bun run src/indexer.ts /path/to/your/docs

# With custom settings
EMBEDDING_MODEL=Xenova/bge-small-en-v1.5 bun run src/indexer.ts ./docs
2. ドキュメントを検索する
# Basic search
bun run src/query.ts --run "What is the FuelVM?"

# Custom number of results
NUM_RESULTS=10 bun run src/query.ts --run "smart contracts"
3. MCP サーバーを実行する
# Start MCP server (stdio-mode)
bun run src/cli.ts

# With HTTP transport
bun run src/cli.ts --transport http --port 3500
4. テストを実行する
bun test

環境変数

変数デフォルト値説明
VECTRA_INDEX_PATH./vectra_indexベクトルデータベースの保存場所
EMBEDDING_MODELXenova/all-MiniLM-L6-v2Hugging Face モデル
CHUNK_SIZE2000チャンクあたりの目標トークン数
NUM_RESULTS5検索結果の件数
LOG_LEVEL詳細な出力を表示するには debug に設定

実装の詳細

  • チャンク分割: コードブロックを維持し、文脈を考慮しながら段落単位で分割します
  • インデックス化: 検索精度向上のため、拡張メタデータとともに埋め込みを生成します
  • クエリ処理: 品質フィルタリングとキーワード検索へのフォールバックを備えたセマンティック検索
  • MCP サーバー: STDIO 通信を介して検索をツールとして公開します
  • ストレージ: ファイルベースの Vectra インデックス(外部データベースは不要)

API

MCP ツール

searchFuelDocs

  • query(string):検索クエリ
  • nResults(number、任意):検索結果の件数(デフォルト:5)
  • includeScore(boolean、任意):関連度スコアを含めるかどうか

provideStdContext

  • Sway 標準ライブラリのパスと型を返します

開発

# Install dependencies
bun install

# Run tests
bun test

# Index sample docs
bun run src/indexer.ts ./docs

# Test search functionality
bun run src/query.ts --run "test query"

# Start MCP server for development (STDIO)
bun run src/cli.ts

# Start MCP server for development (HTTP)
bun run src/cli.ts --transport http --port 3500

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。