> ## Documentation Index
> Fetch the complete documentation index at: https://docs.airstore.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Config File

> Reference for the Airstore configuration file

Airstore is configured via a YAML config file, typically `config.local.yaml`.

## Location

| Platform | Default Path                                     |
| -------- | ------------------------------------------------ |
| Local    | `./config.local.yaml`                            |
| Custom   | Set via `--config` flag or `CONFIG_PATH` env var |

## Full schema

```yaml theme={null}
# config.local.yaml

# Mode: local or remote
mode: local

# Enable debug logging
debugMode: true

# Pretty print logs
prettyLogs: true

# Gateway configuration
gateway:
  grpc:
    port: 1993
  http:
    host: 127.0.0.1
    port: 1994

# MCP tool configurations
tools:
  mcp:
    # Filesystem access
    filesystem:
      command: npx
      args: ["-y", "@modelcontextprotocol/server-filesystem", "/tmp", "/Users"]

    # Memory/knowledge graph
    memory:
      command: npx
      args: ["-y", "@modelcontextprotocol/server-memory"]

    # GitHub (requires GITHUB_TOKEN env var)
    github:
      command: npx
      args: ["-y", "@modelcontextprotocol/server-github"]
      env:
        GITHUB_TOKEN: "${GITHUB_TOKEN}"

    # Wikipedia search
    wikipedia:
      command: npx
      args: ["-y", "@modelcontextprotocol/server-wikipedia"]
```

## Sections

### `mode`

Operating mode for Airstore.

```yaml theme={null}
mode: local   # Run gateway embedded in CLI
mode: remote  # Connect to external gateway
```

### `debugMode`

Enable verbose debug logging.

```yaml theme={null}
debugMode: true
```

### `prettyLogs`

Pretty-print log output (useful for development).

```yaml theme={null}
prettyLogs: true
```

### `gateway`

Gateway server configuration.

```yaml theme={null}
gateway:
  grpc:
    port: 1993    # gRPC port for filesystem communication
  http:
    host: 127.0.0.1
    port: 1994    # HTTP port for API
```

### `tools.mcp`

MCP server configurations. Each key becomes a tool name.

```yaml theme={null}
tools:
  mcp:
    # Tool name becomes the executable name in /tools/
    my-tool:
      command: npx           # Command to run
      args:                  # Arguments to pass
        - "-y"
        - "@company/mcp-server"
      env:                   # Environment variables
        API_KEY: "${API_KEY}"
```

## Example configurations

### Minimal config

```yaml theme={null}
mode: local

gateway:
  grpc:
    port: 1993
  http:
    host: 127.0.0.1
    port: 1994

tools:
  mcp:
    filesystem:
      command: npx
      args: ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"]
```

### Full development config

```yaml theme={null}
mode: local
debugMode: true
prettyLogs: true

gateway:
  grpc:
    port: 1993
  http:
    host: 127.0.0.1
    port: 1994

tools:
  mcp:
    filesystem:
      command: npx
      args: ["-y", "@modelcontextprotocol/server-filesystem", "/tmp", "/Users"]

    memory:
      command: npx
      args: ["-y", "@modelcontextprotocol/server-memory"]

    github:
      command: npx
      args: ["-y", "@modelcontextprotocol/server-github"]
      env:
        GITHUB_TOKEN: "${GITHUB_TOKEN}"

    wikipedia:
      command: npx
      args: ["-y", "@modelcontextprotocol/server-wikipedia"]
```

### Custom MCP server

```yaml theme={null}
mode: local

gateway:
  grpc:
    port: 1993
  http:
    host: 127.0.0.1
    port: 1994

tools:
  mcp:
    # Local binary
    internal-api:
      command: /usr/local/bin/internal-mcp
      env:
        API_URL: https://internal.company.com
        API_KEY: "${INTERNAL_API_KEY}"

    # Python-based MCP server
    my-python-tool:
      command: python
      args: ["-m", "my_mcp_server"]
      env:
        CONFIG_PATH: /etc/my-tool/config.json
```

## Environment variables

Environment variables in the config file can be referenced using `${VAR_NAME}` syntax:

```yaml theme={null}
tools:
  mcp:
    github:
      command: npx
      args: ["-y", "@modelcontextprotocol/server-github"]
      env:
        GITHUB_TOKEN: "${GITHUB_TOKEN}"  # Reads from environment
```

Set the environment variable before mounting:

```bash theme={null}
export GITHUB_TOKEN=ghp_xxxxxxxxxxxx
airstore mount ~/airstore --config config.local.yaml
```

***

See also: [CLI reference](/reference/cli) | [Tools](/concepts/tools)
