Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions cmd/root.go
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,10 @@ import (
_ "github.com/googleapis/genai-toolbox/internal/tools/firestore/firestorevalidaterules"
_ "github.com/googleapis/genai-toolbox/internal/tools/http"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookeradddashboardelement"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookercreateprojectfile"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerconversationalanalytics"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerdeleteprojectfile"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerdevmode"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookergetdashboards"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookergetdimensions"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookergetexplores"
Expand All @@ -107,6 +110,9 @@ import (
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookergetmeasures"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookergetmodels"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookergetparameters"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookergetprojectfile"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookergetprojectfiles"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookergetprojects"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerhealthanalyze"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerhealthpulse"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerhealthvacuum"
Expand All @@ -116,6 +122,7 @@ import (
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerquerysql"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerqueryurl"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerrunlook"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookerupdateprojectfile"
_ "github.com/googleapis/genai-toolbox/internal/tools/mongodb/mongodbaggregate"
_ "github.com/googleapis/genai-toolbox/internal/tools/mongodb/mongodbdeletemany"
_ "github.com/googleapis/genai-toolbox/internal/tools/mongodb/mongodbdeleteone"
Expand Down
2 changes: 1 addition & 1 deletion cmd/root_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -1493,7 +1493,7 @@ func TestPrebuiltTools(t *testing.T) {
wantToolset: server.ToolsetConfigs{
"looker_tools": tools.ToolsetConfig{
Name: "looker_tools",
ToolNames: []string{"get_models", "get_explores", "get_dimensions", "get_measures", "get_filters", "get_parameters", "query", "query_sql", "query_url", "get_looks", "run_look", "make_look", "get_dashboards", "make_dashboard", "add_dashboard_element", "health_pulse", "health_analyze", "health_vacuum"},
ToolNames: []string{"get_models", "get_explores", "get_dimensions", "get_measures", "get_filters", "get_parameters", "query", "query_sql", "query_url", "get_looks", "run_look", "make_look", "get_dashboards", "make_dashboard", "add_dashboard_element", "health_pulse", "health_analyze", "health_vacuum", "dev_mode", "get_projects", "get_project_files", "get_project_file", "create_project_file", "update_project_file", "delete_project_file"},
},
},
},
Expand Down
45 changes: 45 additions & 0 deletions docs/en/resources/tools/looker/looker-create-project-file.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---
title: "looker-create-project-file"
type: docs
weight: 1
description: >
A "looker-create-project-file" tool creates a new LookML file in a project.
aliases:
- /resources/tools/looker-create-project-file
---

## About

A `looker-create-project-file` tool creates a new LookML file in a project

It's compatible with the following sources:

- [looker](../../sources/looker.md)

`looker-create-project-file` accepts a project_id parameter and a file_path parameter
as well as the file content.

## Example

```yaml
tools:
create_project_file:
kind: looker-create-project-file
source: looker-source
description: |
create_project_file Tool

Given a project_id and a file path within the project, as well as the content
of a LookML file, this tool will create a new file within the project.

This tool must be called after the dev_mode tool has changed the session to
dev mode.
```

## Reference

| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-create-project-file". |
| source | string | true | Name of the source Looker instance. |
| description | string | true | Description of the tool that is passed to the LLM. |
44 changes: 44 additions & 0 deletions docs/en/resources/tools/looker/looker-delete-project-file.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
title: "looker-delete-project-file"
type: docs
weight: 1
description: >
A "looker-delete-project-file" tool deletes a LookML file in a project.
aliases:
- /resources/tools/looker-delete-project-file
---

## About

A `looker-delete-project-file` tool deletes a LookML file in a project

It's compatible with the following sources:

- [looker](../../sources/looker.md)

`looker-delete-project-file` accepts a project_id parameter and a file_path parameter.

## Example

```yaml
tools:
delete_project_file:
kind: looker-delete-project-file
source: looker-source
description: |
delete_project_file Tool

Given a project_id and a file path within the project, this tool will delete
the file from the project.

This tool must be called after the dev_mode tool has changed the session to
dev mode.
```

## Reference

| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-delete-project-file". |
| source | string | true | Name of the source Looker instance. |
| description | string | true | Description of the tool that is passed to the LLM. |
42 changes: 42 additions & 0 deletions docs/en/resources/tools/looker/looker-dev-mode.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
title: "looker-dev-mode"
type: docs
weight: 1
description: >
A "looker-dev-mode" tool changes the current session into and out of dev mode
aliases:
- /resources/tools/looker-dev-mode
---

## About

A `looker-dev-mode` tool changes the session into and out of dev mode.

It's compatible with the following sources:

- [looker](../../sources/looker.md)

`looker-dev-mode` accepts a boolean parameter, true to enter dev mode and false to exit dev mode.


## Example

```yaml
tools:
dev_mode:
kind: looker-dev-mode
source: looker-source
description: |
dev_mode Tool

Passing true to this tool switches the session to dev mode. Passing false to this tool switches the
session to production mode.
```

## Reference

| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-dev-mode". |
| source | string | true | Name of the source Looker instance. |
| description | string | true | Description of the tool that is passed to the LLM. |
41 changes: 41 additions & 0 deletions docs/en/resources/tools/looker/looker-get-project-file.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
title: "looker-get-project-file"
type: docs
weight: 1
description: >
A "looker-get-project-file" tool returns the contents of a LookML fle.
aliases:
- /resources/tools/looker-get-project-file
---

## About

A `looker-get-project-file` tool returns the contents of a LookML file.

It's compatible with the following sources:

- [looker](../../sources/looker.md)

`looker-get-project-file` accepts a project_id parameter and a file_path parameter.

## Example

```yaml
tools:
get_project_file:
kind: looker-get-project-file
source: looker-source
description: |
get_project_file Tool

Given a project_id and a file path within the project, this tool returns
the contents of the LookML file.
```

## Reference

| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-get-project-file". |
| source | string | true | Name of the source Looker instance. |
| description | string | true | Description of the tool that is passed to the LLM. |
41 changes: 41 additions & 0 deletions docs/en/resources/tools/looker/looker-get-project-files.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
title: "looker-get-project-files"
type: docs
weight: 1
description: >
A "looker-get-project-files" tool returns all the LookML fles in a project in the source.
aliases:
- /resources/tools/looker-get-project-files
---

## About

A `looker-get-project-files` tool returns all the lookml files in a project in the source.

It's compatible with the following sources:

- [looker](../../sources/looker.md)

`looker-get-project-files` accepts a project_id parameter.

## Example

```yaml
tools:
get_project_files:
kind: looker-get-project-files
source: looker-source
description: |
get_project_files Tool

Given a project_id this tool returns the details about
the LookML files that make up that project.
```

## Reference

| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-get-project-files". |
| source | string | true | Name of the source Looker instance. |
| description | string | true | Description of the tool that is passed to the LLM. |
41 changes: 41 additions & 0 deletions docs/en/resources/tools/looker/looker-get-projects.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
title: "looker-get-projects"
type: docs
weight: 1
description: >
A "looker-get-projects" tool returns all the LookML projects in the source.
aliases:
- /resources/tools/looker-get-projects
---

## About

A `looker-get-projects` tool returns all the projects in the source.

It's compatible with the following sources:

- [looker](../../sources/looker.md)

`looker-get-projects` accepts no parameters.

## Example

```yaml
tools:
get_projects:
kind: looker-get-projects
source: looker-source
description: |
get_projects Tool

This tool returns the project_id and project_name for
all the LookML projects on the looker instance.
```

## Reference

| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-get-projects". |
| source | string | true | Name of the source Looker instance. |
| description | string | true | Description of the tool that is passed to the LLM. |
45 changes: 45 additions & 0 deletions docs/en/resources/tools/looker/looker-update-project-file.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---
title: "looker-update-project-file"
type: docs
weight: 1
description: >
A "looker-update-project-file" tool updates the content of a LookML file in a project.
aliases:
- /resources/tools/looker-update-project-file
---

## About

A `looker-update-project-file` tool updates the content of a LookML file.

It's compatible with the following sources:

- [looker](../../sources/looker.md)

`looker-update-project-file` accepts a project_id parameter and a file_path parameter
as well as the new file content.

## Example

```yaml
tools:
update_project_file:
kind: looker-update-project-file
source: looker-source
description: |
update_project_file Tool

Given a project_id and a file path within the project, as well as the content
of a LookML file, this tool will modify the file within the project.

This tool must be called after the dev_mode tool has changed the session to
dev mode.
```

## Reference

| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-update-project-file". |
| source | string | true | Name of the source Looker instance. |
| description | string | true | Description of the tool that is passed to the LLM. |
Loading
Loading