mcpField
V
Vector DB MCP

Vector DB MCP

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

Vector DB MCP について

READMEで説明されているのは、Vector DB MCPではなく、Lisp、Python、x86_64アセンブリの実験用プロジェクトPlojureです。macOS向けFASMの例、共有ライブラリのビルド手順、小規模なLispインタープリターを含みます。

主な機能

  1. 01Lisp、Python、アセンブリの実験
  2. 02macOS向けFASMの例
  3. 03macOS共有ライブラリのビルド手順
  4. 04小規模なLispインタープリター

活用シーン

  1. 01アセンブリ例を実行して出力を確認
  2. 02macOSで共有ライブラリの例をビルド
  3. 03Lispプログラムを実行

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"kroq86-vector-db": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/kroq86/vector-db-mcp:0.1.1"
]
}
}
}
起動コマンドdocker run -i --rm ghcr.io/kroq86/vector-db-mcp:0.1.1

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocighcr.io/kroq86/vector-db-mcp:0.1.1

ツール

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

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

詳細

Plojure

Plojure は、Lisp、Python、x86_64 アセンブリの実験用プレイグラウンドです。現在の hybrid ブランチには、FASM のサンプルを macOS に移植するための手順も含まれています。

macOS での想定ワークフローは、意図的にシンプルです。

fasm fasm/basic/fib.asm
./fasm/basic/fib

処理の中心となる流れで Docker コマンドは不要です。「exec format error」も発生せず、Linux ELF バイナリを macOS 用プログラムのように扱うこともありません。

macOS での FASM セットアップ

kroq86/fasm-mac のコンパニオン fasm shim をインストールします。

git clone https://github.com/kroq86/fasm-mac
cd fasm-mac
./install.sh
export PATH="$HOME/.local/bin:$PATH"

インストールされるコマンド名は fasm です。

Apple Silicon では x86_64 Mach-O バイナリが生成されるため、Rosetta が必要です。

arch -x86_64 /usr/bin/true

失敗する場合は、次のようにします。

softwareupdate --install-rosetta

スタンドアロンのサンプル

これらのサンプルでは、ハードコードされた Linux のシステムコール番号の代わりに fasm/core/platform.inc を使用するようになりました。

fasm fasm/basic/fib.asm
./fasm/basic/fib

fasm fasm/basic/arg.asm
./fasm/basic/arg fasm/basic/lol.txt

cd fasm/basic
fasm mycat.asm
./mycat

cd ../advanced/binary_search
fasm bin_s.asm
./bin_s

想定される動作:

  • fib.asm はフィボナッチ数を出力します。
  • arg.asm は argv[1] で渡されたファイルを出力します。
  • mycat.asm は fasm/basic/lol.txt を出力します。
  • bin_s.asm は見つかったインデックスを出力します。

共有ライブラリのサンプル

macOS でも、シンプルな C/Python のネイティブライブラリのサンプルから .dylib ファイルをビルドできるようになりました。

cd fasm/advanced/add
./run.sh

cd ../binary_search/wrapper
./run.sh

cd ../../oop_game
./build.sh

ビルド手順は次のとおりです。

fasm --emit=macho-obj add.asm add.o
clang -arch x86_64 -dynamiclib wrapper.c add.o -o mylib.dylib

Apple Silicon では、Python の ctypes でこれらのライブラリを読み込むために、x86_64/Rosetta 対応の Python が必要です。Homebrew のデフォルトの Python は通常 arm64 であり、x86_64 の .dylib を読み込めません。

ベクトル DB

projects/vector-db は、Darwin では .dylib、Linux では .so を探すようになりました。macOS でのビルド手順は次のとおりです。

cd projects/vector-db
fasm --emit=macho-obj assembly/dot_product.asm dot_product.o
clang -arch x86_64 -dynamiclib dot_product.o assembly/wrapper.c -o dot_product.dylib

ネイティブライブラリを読み込めない場合、Python コードは利用可能な既存のフォールバック動作を引き続き使用します。

未対応の項目

  • fasm classic 自体には、まだ upstream 形式の format Mach-O フォーマッターがありません。
  • ネイティブ arm64 アセンブリの出力は、この移植の対象外です。
  • Mach-O オブジェクトコンバーターは、現時点では ELF の再配置を拒否します。
  • コルーチンはスタックを手動で切り替え、Python のコールバック境界をまたぐため、後の段階に回しています。
  • Apple Silicon で x86_64 の .dylib ファイルを読み込む Python のサンプルには、x86_64 の Python ランタイムが必要です。

元の Lisp インタープリター

このリポジトリには、小さな Lisp インタープリターも含まれています。

python projects/lisp-interpreter/main.py projects/lisp-interpreter/program.lisp

再帰関数、ラムダ式、算術演算、条件式、関数呼び出しをサポートしています。

コメント

MCP は初めてですか?

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

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