Assembly-accelerated DuckDB MCP server for code search, indexing, and symbol lookup.
Runs on your machine from its package; the steps are below.
At most: only reads or looks up information.
Odel charges nothing per call. The publisher may charge for its own service.
Runs locally over stdio
This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).
Run
docker run -i --rm ghcr.io/kroq86/vector-db-mcp:0.1.1
MCP client config
{
"mcpServers": {
"vector-db-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/kroq86/vector-db-mcp:0.1.1"
]
}
}
}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:
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.
Install the companion fasm shim from kroq86/fasm-mac:
git clone https://github.com/kroq86/fasm-mac
cd fasm-mac
./install.sh
export 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:
arch -x86_64 /usr/bin/true
If that fails:
softwareupdate --install-rosetta
These examples now use fasm/core/platform.inc instead of hardcoded Linux
syscall numbers:
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
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.Simple C/Python native-library examples can now build .dylib files on macOS:
cd fasm/advanced/add
./run.sh
cd ../binary_search/wrapper
./run.sh
cd ../../oop_game
./build.sh
The build path is:
fasm --emit=macho-obj add.asm add.o
clang -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.
projects/vector-db now looks for .dylib on Darwin and .so on Linux. The
macOS build path is:
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
If the native library cannot be loaded, the Python code keeps the existing fallback behavior where available.
format Mach-O formatter..dylib files.The repository also contains a small Lisp interpreter:
python projects/lisp-interpreter/main.py projects/lisp-interpreter/program.lisp
It supports recursive functions, lambda expressions, arithmetic, conditionals, and function calls.