Skip to main content
Glama

DuckDB MCP Server

config.py2.5 kB
""" Configuration handling for the MCP DuckDB server. """ import argparse import os from dataclasses import dataclass from pathlib import Path from typing import Optional @dataclass class Config: """ Configuration for the MCP DuckDB server. """ db_path: Path """Path to DuckDB database file.""" readonly: bool = False """Run server in read-only mode.""" s3_region: Optional[str] = None """AWS S3 region. If None, uses AWS_DEFAULT_REGION env var or boto3 defaults.""" s3_profile: Optional[str] = None """AWS profile to use for credentials. If None, uses AWS_PROFILE env var or 'default'.""" creds_from_env: bool = False """Use AWS credentials from environment variables instead of profiles.""" @staticmethod def from_arguments() -> "Config": """Parse command line arguments to create a configuration.""" parser = argparse.ArgumentParser(description="DuckDB MCP Server") parser.add_argument( "--db-path", type=str, required=True, help="Path to DuckDB database file", ) parser.add_argument( "--readonly", action="store_true", help="Run server in read-only mode. " "If the file does not exist, it is not created when connecting in read-only mode.", ) parser.add_argument( "--s3-region", type=str, default=os.getenv("AWS_DEFAULT_REGION"), help="AWS S3 region (default: uses AWS_DEFAULT_REGION env var or boto3 defaults)", ) parser.add_argument( "--s3-profile", type=str, default=os.getenv("AWS_PROFILE", "default"), help="AWS profile to use for credentials (default: uses AWS_PROFILE env var or 'default')", ) parser.add_argument( "--creds-from-env", action="store_true", help="Use AWS credentials from environment variables instead of profiles", ) args = parser.parse_args() # Convert string path to Path object and expand user directory (e.g., ~/) db_path = Path(os.path.expanduser(args.db_path)) return Config( db_path=db_path, readonly=args.readonly, s3_region=args.s3_region, s3_profile=args.s3_profile, creds_from_env=args.creds_from_env, )

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mustafahasankhan/duckdb-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server