Set up the Looker MCP server
MCP Toolbox for Databases is Google's open-source MCP server that gives AI agents direct access to your Looker semantic layer — querying explores, running Looks, browsing dashboards, and generating embed URLs. This guide covers generating Looker API credentials and deploying the server in MintMCP using the pre-built mintmcp/genai-toolbox image.
Prerequisites
- A MintMCP admin account
- A Looker instance (Looker Original or Looker Google Cloud Core)
Generate Looker API credentials
For Looker Original
- Go to your Looker instance at
https://<your-company>.cloud.looker.com. - Navigate to Admin → Users.
- Find the service account user and click Edit.
- Scroll to API 4.0 Keys and click Edit Keys → New API 4.0 Key.
- Copy the Client ID and Client Secret — the secret is shown only once.
For Looker Google Cloud Core
- Have a Looker admin enable API credential management on the Users page.
- Go to your Account page → API 4.0 Keys → Generate New Key.
- Copy the Client ID and Client Secret.
| Credential | Where to find it | Environment variable |
|---|---|---|
| Looker instance URL | Your browser's address bar (no trailing slash) | LOOKER_BASE_URL |
| Client ID | Admin → Users → Edit → API 4.0 Keys | LOOKER_CLIENT_ID |
| Client Secret | Shown once at key creation | LOOKER_CLIENT_SECRET |
Looker instances on port 19999 need the port in the URL, e.g. https://looker.example.com:19999.
Add Looker to MintMCP
MintMCP maintains a pre-built Docker image at docker.io/mintmcp/genai-toolbox that bundles the toolbox binary with all required runtime dependencies. You reference this image directly — no custom build needed.
- In MintMCP, go to MCP store > Manage store.
- Click + Add an MCP to your registry → Host an open source or custom MCP.
- Click the Hosted Server tab, then select Advanced from the dropdown.
- Set Command to:
toolbox --stdio --prebuilt looker
- Set Transport to
stdio. - Set Container Image to:
mintmcp/genai-toolbox:v0.27.0
- Add these environment variables. Set scope to Global for a shared service account, or Per-User to prompt each user for their own credentials:
| Variable | Value | Required |
|---|---|---|
LOOKER_BASE_URL | Your Looker instance URL (no trailing slash) | Yes |
LOOKER_CLIENT_ID | API 4.0 Client ID | Yes |
LOOKER_CLIENT_SECRET | API 4.0 Client Secret | Yes |
LOOKER_VERIFY_SSL | true or false (default: true) | No |
- Click Create.
MintMCP pulls the image, starts the container, and runs health checks. The connector shows as active when ready.
Optional: Conversational Analytics
Swap --prebuilt looker for --prebuilt looker-conversational-analytics in the command to enable natural-language queries via Looker's Conversational Analytics API. This requires two additional environment variables:
| Variable | Value |
|---|---|
LOOKER_PROJECT | Your LookML project name |
LOOKER_LOCATION | Google Cloud location (default: us) |
Security considerations
- Keep the Client Secret secure — anyone with it can authenticate as the service account to your Looker instance.
- Use a dedicated Looker service account with minimum API permissions rather than an admin account.
- Set
LOOKER_VERIFY_SSLtofalseonly for internal Looker instances with self-signed certificates. - Choose Per-User credential scope in MintMCP to attribute Looker actions to individual users rather than a shared service account.
Next steps
- Tool customization — Control which Looker tools are exposed to users
- MCP gateway administration — Manage access and permissions