Vector DB MCP

io.github.kroq86Published by GitHub account kroq86v0.1.1Updated Oct 24, 2026

Assembly-accelerated DuckDB MCP server for code search, indexing, and symbol lookup.

VerifiedSTDIODesktop onlyDatabasesDeveloper Tools

Overview

AI-generated overview

A local DuckDB-based MCP server for code search, indexing and symbol lookup, with assembly-accelerated vector operations.

What you can do
Search and index code through a DuckDB-backed vector store, and look up symbols in the indexed codebase. The registry description names code search, indexing and symbol lookup as its purpose; no individual tools are listed. The README describes a vector-db project that loads a native dot-product library built from assembly, falling back to a slower path when the library cannot be loaded.
When to use it
Worth considering if you want an assistant to search or index a local codebase and look up symbols, and you are comfortable running a containerized local process. It is a young project, so evaluate it against simpler code-search options first.
Requirements
Runs as a local stdio process from an OCI image (ghcr.io/kroq86/vector-db-mcp:0.1.1), so a container runtime is needed. The README's vector-db build path uses FASM and clang to produce a native library, and on Apple Silicon it targets x86_64, which needs Rosetta and an x86_64 Python runtime. No environment variables or authentication are declared.
Before you install
The README is mostly about a Lisp and assembly playground rather than this server, so documentation is thin and the described behavior may not match the packaged image. The native library is built for x86_64 on macOS and may silently fall back if it fails to load. No credentials are requested, but the server reads local code, so point it only at directories you are willing to index.

Installation

In SourceWeft

  1. Open Vector DB MCP in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Plojure

Plojure is a playground for Lisp, Python, and x86_64 assembly experiments. The current hybrid branch also contains a macOS porting path for the FASM examples.

The target workflow on macOS is intentionally boring:

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

No Docker command in the hot path, no exec format error, no Linux ELF binary pretending to be a macOS program.

macOS FASM Setup

Install the companion fasm shim from kroq86/fasm-mac:

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

The installed command is named fasm.

On Apple Silicon it produces x86_64 Mach-O binaries, so Rosetta is required:

sh
arch -x86_64 /usr/bin/true

If that fails:

sh
softwareupdate --install-rosetta

Standalone Examples

These examples now use fasm/core/platform.inc instead of hardcoded Linux syscall numbers:

sh
fasm fasm/basic/fib.asm./fasm/basic/fib
fasm fasm/basic/arg.asm./fasm/basic/arg fasm/basic/lol.txt
cd fasm/basicfasm mycat.asm./mycat
cd ../advanced/binary_searchfasm bin_s.asm./bin_s

Expected behavior:

  • fib.asm prints Fibonacci values.
  • arg.asm prints the file passed as argv[1].
  • mycat.asm prints fasm/basic/lol.txt.
  • bin_s.asm prints the found index.

Shared Library Examples

Simple C/Python native-library examples can now build .dylib files on macOS:

sh
cd fasm/advanced/add./run.sh
cd ../binary_search/wrapper./run.sh
cd ../../oop_game./build.sh

The build path is:

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

On Apple Silicon, Python ctypes needs an x86_64/Rosetta Python to load these libraries. The default Homebrew Python is usually arm64 and cannot load an x86_64 .dylib.

Vector DB

projects/vector-db now looks for .dylib on Darwin and .so on Linux. The macOS build path is:

sh
cd projects/vector-dbfasm --emit=macho-obj assembly/dot_product.asm dot_product.oclang -arch x86_64 -dynamiclib dot_product.o assembly/wrapper.c -o dot_product.dylib

If the native library cannot be loaded, the Python code keeps the existing fallback behavior where available.

What Still Is Not Done

  • fasm classic itself still has no upstream-style format Mach-O formatter.
  • Native arm64 assembly output is not part of this port.
  • The Mach-O object converter rejects ELF relocations for now.
  • Coroutines are intentionally left for a later pass because they switch stacks manually and cross Python callback boundaries.
  • Python examples on Apple Silicon need an x86_64 Python runtime if they load x86_64 .dylib files.

Original Lisp Interpreter

The repository also contains a small Lisp interpreter:

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

It supports recursive functions, lambda expressions, arithmetic, conditionals, and function calls.

Source: readme.md at commit 956da61

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.1LatestSep 16, 2026

Score

40% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.