
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.
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.
Installation
In SourceWeft
- Open Vector DB MCP in the dashboard and add it to a workspace.
- 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:
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:
The installed command is named fasm.
On Apple Silicon it produces x86_64 Mach-O binaries, so Rosetta is required:
If that fails:
Standalone Examples
These examples now use fasm/core/platform.inc instead of hardcoded Linux
syscall numbers:
Expected behavior:
fib.asmprints Fibonacci values.arg.asmprints the file passed as argv[1].mycat.asmprintsfasm/basic/lol.txt.bin_s.asmprints the found index.
Shared Library Examples
Simple C/Python native-library examples can now build .dylib files on macOS:
The build path is:
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:
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-Oformatter. - 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
.dylibfiles.
Original Lisp Interpreter
The repository also contains a small Lisp interpreter:
It supports recursive functions, lambda expressions, arithmetic, conditionals, and function calls.
Source: readme.md at commit 956da61
Tools
0Version history
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.