# LunaTask MCP Server Configuration Example
#
# This file demonstrates all available configuration options for the LunaTask MCP server.
# Copy this file to `config.toml` and customize the values as needed.
#
# Configuration Precedence (highest to lowest):
# 1. Command-line arguments (--port, --log-level, --config-file)
# 2. Configuration file values (this file)
# 3. Default values
# ==============================================================================
# REQUIRED SETTINGS
# ==============================================================================
# LunaTask API Bearer Token (REQUIRED)
# Obtain this token from your LunaTask account settings
# This token is used to authenticate with the LunaTask API
# SECURITY NOTE: Keep this token secure and never commit it to version control
lunatask_bearer_token = "your_lunatask_bearer_token_here"
# ==============================================================================
# OPTIONAL SETTINGS (with defaults shown)
# ==============================================================================
# LunaTask API Base URL
# Default: "https://api.lunatask.app/v1/"
# You typically don't need to change this unless using a different API endpoint
lunatask_base_url = "https://api.lunatask.app/v1/"
# Server Port Configuration
# Default: 8080
# Valid range: 1-65535
# NOTE: This port is for future HTTP transport support and is not used by
# the current stdio runtime. The server currently only supports stdio transport.
port = 8080
# Logging Level
# Default: "INFO"
# Valid values: "DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL"
# - DEBUG: Detailed diagnostic information
# - INFO: General informational messages
# - WARNING: Warning messages for potential issues
# - ERROR: Error messages for serious problems
# - CRITICAL: Critical error messages for severe failures
log_level = "INFO"
# HTTP Client Fine-Tuning
# Controls retry behavior and timeout settings for LunaTask API calls.
# http_retries: Number of additional retry attempts triggered on timeouts or
# transient network/server errors (default: 2)
# http_backoff_start_seconds: Initial delay applied before the first retry.
# The delay doubles with each subsequent retry
# (default: 0.25)
# http_user_agent: Custom User-Agent string sent with every API request
# timeout_connect: Maximum time to establish the TLS connection (default: 5.0)
# timeout_read: Maximum time to wait for the response body (default: 30.0)
http_retries = 2
http_backoff_start_seconds = 0.25
http_user_agent = "lunatask-mcp/0.2.1" # Auto-generated from package version
timeout_connect = 5.0
timeout_read = 30.0
# ==============================================================================
# CONFIGURATION FILE BEHAVIOR
# ==============================================================================
# The `config_file` field is automatically set by the server and should not be
# specified in the configuration file itself.
# ==============================================================================
# USAGE EXAMPLES
# ==============================================================================
# 1. Basic usage with minimal configuration:
# lunatask_bearer_token = "your_token"
#
# 2. Development setup with debug logging:
# lunatask_bearer_token = "your_token"
# log_level = "DEBUG"
#
# 3. Custom API endpoint (if needed):
# lunatask_bearer_token = "your_token"
# lunatask_base_url = "https://custom.api.endpoint.com/v1/"
# ==============================================================================
# SECURITY AND ERROR HANDLING
# ==============================================================================
# - Unknown configuration keys will cause the server to exit with an error
# - Bearer tokens are automatically redacted from logs and error messages
# - Configuration validation failures result in exit code 1
# - Invalid TOML syntax will cause the server to exit with a clear error message
# ==============================================================================
# COMMAND-LINE OVERRIDES
# ==============================================================================
# You can override any setting using command-line arguments:
# --config-file PATH Specify a different config file (default: ./config.toml)
# --port PORT Override the port setting
# --log-level LEVEL Override the log_level setting
#
# Example:
# lunatask-mcp --config-file /path/to/custom.toml --log-level DEBUG --port 9000