We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/haiqiubullish/nix-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
.PHONY: help init proto clean run dev test install
# Default target
help:
@echo "NIX MCP Server - Available commands:"
@echo " make init - Initialize project (install deps, compile protos)"
@echo " make proto - Compile protobuf files"
@echo " make clean - Clean generated files"
@echo " make run - Run the MCP server"
@echo " make dev - Run in development mode"
@echo " make test - Run tests"
@echo " make install - Install to Claude Desktop"
# Initialize the project
init: install-deps proto
@echo "β
Project initialized successfully!"
# Install dependencies
install-deps:
@echo "π¦ Installing dependencies..."
@uv sync
@uv add --dev grpcio-tools
@echo "β
Dependencies installed"
# Compile protobuf files
proto:
@echo "π§ Compiling protobuf files..."
@mkdir -p src/nix_mcp/protobuf
@touch src/nix_mcp/protobuf/__init__.py
@echo "Using proto files from submodule"
@# Compile all proto files preserving directory structure
@uv run python -m grpc_tools.protoc \
--proto_path=proto-common/src/main/proto \
--python_out=src/nix_mcp/protobuf \
proto-common/src/main/proto/native_indexer/*.proto \
proto-common/src/main/proto/common/*.proto \
proto-common/src/main/proto/zpp/*.proto \
proto-common/src/main/proto/ctrl_signing/*.proto
@echo "β
Protobuf compilation complete"
# Clean generated files
clean:
@echo "π§Ή Cleaning generated files..."
@rm -rf src/nix_mcp/protobuf/*.py
@rm -rf __pycache__ src/__pycache__ src/nix_mcp/__pycache__
@rm -rf .pytest_cache
@echo "β
Clean complete"
# Run the server
run:
@echo "π Starting NIX MCP Server..."
@uv run python main.py
# Run in development mode with auto-reload
dev:
@echo "π§ Starting NIX MCP Server in development mode..."
@LOG_LEVEL=DEBUG uv run python main.py
# Run tests
test:
@echo "π§ͺ Running tests..."
@uv run python test_basic.py
# Install to Claude Desktop
install:
@echo "π¦ Installing to Claude Desktop..."
@uv run mcp install main.py --name "NIX MCP Server"
# Update git submodules
update-submodules:
@echo "π₯ Updating git submodules..."
@git submodule update --init --recursive
@echo "β
Submodules updated"
# Fetch ABIs using cleos
fetch-abis:
@echo "π‘ Fetching contract ABIs..."
@mkdir -p .abi_cache
@uv run python -m nix_mcp.abi_fetcher nix.q
@uv run python -m nix_mcp.abi_fetcher nix
@echo "β
ABIs cached"