Compare commits

...

87 Commits

Author SHA1 Message Date
Mend Renovate
27caa1f421 chore(deps): update dependency google-adk to v1.15.1 (#1582)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
| [google-adk](https://redirect.github.com/google/adk-python)
([changelog](https://redirect.github.com/google/adk-python/blob/main/CHANGELOG.md))
| `==1.15.0` -> `==1.15.1` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/google-adk/1.15.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/google-adk/1.15.0/1.15.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>google/adk-python (google-adk)</summary>

###
[`v1.15.1`](https://redirect.github.com/google/adk-python/blob/HEAD/CHANGELOG.md#1151-2025-09-26)

[Compare
Source](https://redirect.github.com/google/adk-python/compare/v1.15.0...v1.15.1)

##### Bug Fixes

- Fix the deployment failure for Agent Engine
([e172811](e172811bc7))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQxLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
2025-11-04 10:17:09 -08:00
Wenxin Du
2b80be1c6a docs: add Gemini CLI Extensions links to readme (#1748)
fix https://github.com/googleapis/genai-toolbox/issues/1730
2025-11-04 17:38:24 +00:00
Mend Renovate
ac7967e9eb chore(deps): update module github.com/openai/openai-go to v3 (#1704)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[github.com/openai/openai-go](https://redirect.github.com/openai/openai-go)
| `v1.12.0` -> `v3.3.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fopenai%2fopenai-go/v3.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fopenai%2fopenai-go/v1.12.0/v3.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>openai/openai-go (github.com/openai/openai-go)</summary>

###
[`v3.3.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#330-2025-10-10)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v3.2.0...v3.3.0)

Full Changelog:
[v3.2.0...v3.3.0](https://redirect.github.com/openai/openai-go/compare/v3.2.0...v3.3.0)

##### Features

- **api:** comparison filter in/not in
([d6daca0](d6daca0eed))

###
[`v3.2.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#330-2025-10-10)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v3.1.0...v3.2.0)

Full Changelog:
[v3.2.0...v3.3.0](https://redirect.github.com/openai/openai-go/compare/v3.2.0...v3.3.0)

##### Features

- **api:** comparison filter in/not in
([d6daca0](d6daca0eed))

###
[`v3.1.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#320-2025-10-06)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v3.0.1...v3.1.0)

Full Changelog:
[v3.1.0...v3.2.0](https://redirect.github.com/openai/openai-go/compare/v3.1.0...v3.2.0)

##### Features

- **api:** dev day 2025 launches
([d40a768](d40a7689c7))

###
[`v3.0.1`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#310-2025-10-02)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v3.0.0...v3.0.1)

Full Changelog:
[v3.0.1...v3.1.0](https://redirect.github.com/openai/openai-go/compare/v3.0.1...v3.1.0)

##### Features

- **api:** add support for realtime calls
([565ca67](565ca67872))

###
[`v3.0.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#301-2025-10-01)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.7.1...v3.0.0)

Full Changelog:
[v3.0.0...v3.0.1](https://redirect.github.com/openai/openai-go/compare/v3.0.0...v3.0.1)

##### Bug Fixes

- **api:** add status, approval\_request\_id to MCP tool call
([a7f95e4](a7f95e4ef4))

###
[`v2.7.1`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#300-2025-09-30)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.7.0...v2.7.1)

Full Changelog:
[v2.7.1...v3.0.0](https://redirect.github.com/openai/openai-go/compare/v2.7.1...v3.0.0)

##### ⚠ BREAKING CHANGES

- **api:** `ResponseFunctionToolCallOutputItem.output` and
`ResponseCustomToolCallOutput.output` now return `string |
Array<ResponseInputText | ResponseInputImage | ResponseInputFile>`
instead of `string` only. This may break existing callsites that assume
`output` is always a string.

##### Features

- **api:** Support images and files for function call outputs in
responses, BatchUsage
([21901ef](21901ef84e))

###
[`v2.7.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#271-2025-09-29)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.6.1...v2.7.0)

Full Changelog:
[v2.7.0...v2.7.1](https://redirect.github.com/openai/openai-go/compare/v2.7.0...v2.7.1)

##### Bug Fixes

- bugfix for setting JSON keys with special characters
([f9ae028](f9ae0283fe))

###
[`v2.6.1`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#270-2025-09-23)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.6.0...v2.6.1)

Full Changelog:
[v2.6.1...v2.7.0](https://redirect.github.com/openai/openai-go/compare/v2.6.1...v2.7.0)

##### Features

- **api:** gpt-5-codex
([b0eac3e](b0eac3ed2b))

###
[`v2.6.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#261-2025-09-22)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.5.0...v2.6.0)

Full Changelog:
[v2.6.0...v2.6.1](https://redirect.github.com/openai/openai-go/compare/v2.6.0...v2.6.1)

##### Bug Fixes

- **api:** fix mcp tool name
([6de601a](6de601aa71))
- use slices.Concat instead of sometimes modifying r.Options
([7312ee7](7312ee73ef))

##### Chores

- **api:** openapi updates for conversations
([4a7d204](4a7d204a4e))
- bump minimum go version to 1.22
([8396ab5](8396ab5d91))
- do not install brew dependencies in ./scripts/bootstrap by default
([d519b81](d519b81000))
- update more docs for 1.22
([1b0514d](1b0514df95))

###
[`v2.5.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#260-2025-09-19)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.4.3...v2.5.0)

Full Changelog:
[v2.5.0...v2.6.0](https://redirect.github.com/openai/openai-go/compare/v2.5.0...v2.6.0)

##### Features

- **api:** add reasoning\_text
([6ebf50d](6ebf50d756))

###
[`v2.4.3`](https://redirect.github.com/openai/openai-go/releases/tag/v2.4.3)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.4.2...v2.4.3)

#### 2.4.3 (2025-09-15)

Full Changelog:
[v2.4.2...v2.4.3](https://redirect.github.com/openai/openai-\[go/compare/v2.4.2...v2.4.3]\(https://www.golinks.io/compare/v2.4.2...v2.4.3?trackSource=github\))

##### Chores

- **api:** docs and spec refactoring
([e67af66](e67af66b35\)))

###
[`v2.4.2`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#243-2025-09-15)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.4.1...v2.4.2)

Full Changelog:
[v2.4.2...v2.4.3](https://redirect.github.com/openai/openai-go/compare/v2.4.2...v2.4.3)

##### Chores

- **api:** docs and spec refactoring
([e67af66](e67af66b35))

###
[`v2.4.1`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#242-2025-09-12)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.4.0...v2.4.1)

Full Changelog:
[v2.4.1...v2.4.2](https://redirect.github.com/openai/openai-go/compare/v2.4.1...v2.4.2)

##### Chores

- **api:** Minor docs and type updates for realtime
([d92ea48](d92ea4850f))

###
[`v2.4.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#241-2025-09-10)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.3.1...v2.4.0)

Full Changelog:
[v2.4.0...v2.4.1](https://redirect.github.com/openai/openai-go/compare/v2.4.0...v2.4.1)

##### Chores

- **api:** fix realtime GA types
([012b83e](012b83e3fa))

###
[`v2.3.1`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#240-2025-09-08)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.3.0...v2.3.1)

Full Changelog:
[v2.3.1...v2.4.0](https://redirect.github.com/openai/openai-go/compare/v2.3.1...v2.4.0)

##### Features

- **api:** ship the RealtimeGA API shape
([2b6c6db](2b6c6db63e))

###
[`v2.3.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#231-2025-09-05)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.2.2...v2.3.0)

Full Changelog:
[v2.3.0...v2.3.1](https://redirect.github.com/openai/openai-go/compare/v2.3.0...v2.3.1)

##### Bug Fixes

- **internal:** unmarshal correctly when there are multiple
discriminators
([98596b2](98596b2183))

###
[`v2.2.2`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#230-2025-09-03)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.2.1...v2.2.2)

Full Changelog:
[v2.2.2...v2.3.0](https://redirect.github.com/openai/openai-go/compare/v2.2.2...v2.3.0)

##### Features

- **api:** Add gpt-realtime models
([3cf6a34](3cf6a34841))

###
[`v2.2.1`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#222-2025-09-02)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.2.0...v2.2.1)

Full Changelog:
[v2.2.1...v2.2.2](https://redirect.github.com/openai/openai-go/compare/v2.2.1...v2.2.2)

##### Bug Fixes

- update url to refresh pkg.go.dev
([edf94ce](edf94ce95a))
- use release please annotations on more places
([2ff82f9](2ff82f98ae))

###
[`v2.2.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#221-2025-09-02)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.1.1...v2.2.0)

Full Changelog:
[v2.2.0...v2.2.1](https://redirect.github.com/openai/openai-go/compare/v2.2.0...v2.2.1)

##### Chores

- **api:** manual updates for ResponseInputAudio
([8c0ebe5](8c0ebe566f))

###
[`v2.1.1`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#220-2025-09-02)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.1.0...v2.1.1)

Full Changelog:
[v2.1.1...v2.2.0](https://redirect.github.com/openai/openai-go/compare/v2.1.1...v2.2.0)

##### Features

- **api:** Add connectors support for MCP tool
([35888bc](35888bcd26))
- **api:** add web search filters
([6f2c71d](6f2c71d4e2))
- **api:** adding support for /v1/conversations to the API
([5b7c31b](5b7c31bde9))
- **api:** realtime API updates
([130fc8e](130fc8ea5b))
- **client:** add support for verifying signatures on incoming webhooks
([f7c8dbb](f7c8dbb6b5))

##### Bug Fixes

- **azure:** compatibility with edit image endpoint
([#&#8203;477](https://redirect.github.com/openai/openai-go/issues/477))
([d156eec](d156eeca37))
- close body before retrying
([8dfed35](8dfed35f11))

##### Chores

- **internal/ci:** setup breaking change detection
([0af0cd0](0af0cd0130))
- **internal:** version bump
([3265795](3265795fff))

###
[`v2.1.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#211-2025-08-20)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.0.2...v2.1.0)

Full Changelog:
[v2.1.0...v2.1.1](https://redirect.github.com/openai/openai-go/compare/v2.1.0...v2.1.1)

##### Chores

- **api:** accurately represent shape for verbosity on Chat Completions
([f81197b](f81197b4b0))

###
[`v2.0.2`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#210-2025-08-18)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.0.1...v2.0.2)

Full Changelog:
[v2.0.2...v2.1.0](https://redirect.github.com/openai/openai-go/compare/v2.0.2...v2.1.0)

##### Features

- **api:** add new text parameters, expiration options
([323154c](323154ccec))

##### Documentation

- give https its missing "h" in Azure OpenAI REST API link
([#&#8203;480](https://redirect.github.com/openai/openai-go/issues/480))
([8a401c9](8a401c9eec))

###
[`v2.0.1`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#202-2025-08-09)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.0.0...v2.0.1)

Full Changelog:
[v2.0.1...v2.0.2](https://redirect.github.com/openai/openai-go/compare/v2.0.1...v2.0.2)

##### Chores

- **internal:** update comment in script
([4be24de](4be24dee6a))
- update
[@&#8203;stainless-api/prism-cli](https://redirect.github.com/stainless-api/prism-cli)
to v5.15.0
([eca22af](eca22af6f1))

###
[`v2.0.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#201-2025-08-08)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v1.12.0...v2.0.0)

Full Changelog:
[v2.0.0...v2.0.1](https://redirect.github.com/openai/openai-go/compare/v2.0.0...v2.0.1)

##### Bug Fixes

- **client:** fix verbosity parameter location in Responses
([6e2e903](6e2e903e7c))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: dishaprakash <57954147+dishaprakash@users.noreply.github.com>
Co-authored-by: Anmol Shukla <shuklaanmol@google.com>
2025-11-04 19:28:59 +05:30
Mend Renovate
bfa1fff494 chore(deps): update module modernc.org/sqlite to v1.40.0 (#1839)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
| [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) | `v1.39.1` ->
`v1.40.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/modernc.org%2fsqlite/v1.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/modernc.org%2fsqlite/v1.39.1/v1.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>cznic/sqlite (modernc.org/sqlite)</summary>

###
[`v1.40.0`](https://gitlab.com/cznic/sqlite/compare/v1.39.1...v1.40.0)

[Compare
Source](https://gitlab.com/cznic/sqlite/compare/v1.39.1...v1.40.0)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTkuNCIsInVwZGF0ZWRJblZlciI6IjQxLjE1OS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
2025-11-03 16:05:37 -08:00
Mend Renovate
98e3f6abe4 chore(deps): update dependency llama-index-llms-google-genai to v0.7.1 (#1841)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
| llama-index-llms-google-genai | `==0.6.2` -> `==0.7.1` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/llama-index-llms-google-genai/0.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/llama-index-llms-google-genai/0.6.2/0.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTkuNCIsInVwZGF0ZWRJblZlciI6IjQxLjE1OS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
2025-11-03 15:46:45 -08:00
Averi Kitsch
3cff915e22 fix: debug logging statements (#1828)
## Description

The debug context logger does not take in value placeholders. The
statements must be first converted to a string.

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [ ] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>
2025-11-03 19:24:11 +00:00
gRedHeadphone
5a6db196c2 docs: update spanner available tools (#1837)
## Description

Spanner source page in docs was missing spanner-list-tables tool.

## PR Checklist

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #1836

Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-11-03 18:47:58 +00:00
Dr. Strangelove
038585216a docs(looker): Better documentation of Looker prebuilt tools (#1835)
## Description

* Add new database metadata tools to list.
* Break the list down into useful sections.
* Provide a link to the generated prebuilt tools page.
2025-11-03 10:23:27 -08:00
Mend Renovate
54799f30b5 chore(deps): update module google.golang.org/genai to v1.33.0 (#1766)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[google.golang.org/genai](https://redirect.github.com/googleapis/go-genai)
| `v1.31.0` -> `v1.33.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/google.golang.org%2fgenai/v1.33.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/google.golang.org%2fgenai/v1.31.0/v1.33.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>googleapis/go-genai (google.golang.org/genai)</summary>

###
[`v1.33.0`](https://redirect.github.com/googleapis/go-genai/releases/tag/v1.33.0)

[Compare
Source](https://redirect.github.com/googleapis/go-genai/compare/v1.32.0...v1.33.0)

##### Features

- Add safety\_filter\_level and person\_generation for Imagen upscaling
([3d7b57a](3d7b57a389))
- Add support for preference optimization tuning in the SDK.
([a6db7fe](a6db7fe823))
- Pass file name to the backend when uploading with a file path
([6b5e4f4](6b5e4f4939))
- support default global location when not using api key with vertexai
backend
([44f01d6](44f01d636b))

###
[`v1.32.0`](https://redirect.github.com/googleapis/go-genai/releases/tag/v1.32.0)

[Compare
Source](https://redirect.github.com/googleapis/go-genai/compare/v1.31.0...v1.32.0)

##### Features

- Add enable\_enhanced\_civic\_answers in GenerationConfig
([c876512](c87651298d))
- support jailbreak in HarmCategory and BlockedReason
([65e1efc](65e1efc38c))

##### Bug Fixes

- change back SingleEmbedContentResponse.TokenCount to int64 due to
mistake in
[#&#8203;557](https://redirect.github.com/googleapis/go-genai/issues/557)
([e05f15d](e05f15d3df))
- do not append project and client for Vertex AI when using API key
([c27f13a](c27f13a44e)),
closes
[#&#8203;564](https://redirect.github.com/googleapis/go-genai/issues/564)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTYuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE1OS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Anmol Shukla <shuklaanmol@google.com>
2025-11-03 20:07:37 +05:30
Dr. Strangelove
d7d1b03f3b feat(tools/looker): tools to retrieve the connections, schemas, databases, and column metadata from a looker system. (#1804)
## Description

Add new tools to get metadata from databases through Looker

* get_connections
* get_connection_schemas
* get_connection_databases
* get_connection_tables
* get_connection_table_columns
2025-10-31 18:42:02 +00:00
Mend Renovate
047e60e144 chore(deps): update github.com/googleapis/mcp-toolbox-sdk-go digest to f1f6a9f (#1832)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[github.com/googleapis/mcp-toolbox-sdk-go](https://redirect.github.com/googleapis/mcp-toolbox-sdk-go)
| require | digest | `eb73e0c` -> `f1f6a9f` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTkuNCIsInVwZGF0ZWRJblZlciI6IjQxLjE1OS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-10-31 18:01:30 +00:00
Averi Kitsch
898428759c fix(tools/postgres-execute-sql): do not ignore SQL failure (#1829)
## Description

Invalid SQL like selecting from invalid tables or granting bad
permissions resulted in a null due to the missing error statement.

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [ ] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #1638
2025-10-31 17:39:35 +00:00
Colin Pistell
e09d182f88 feat(source/bigquery): add service account impersonation support for bigquery (#1641)
## Description

This change adds service account impersonation support to Bigquery.
Users can now optionally supply an `impersonateServiceAccount` field in
their `bigquery-source` config to enable impersonation.

---
> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution

## PR Checklist

---
> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #906
2025-10-31 16:43:52 +00:00
Yuan Teoh
38d535de34 fix(source/cloud-sql-mssql): remove ip address field (#1822)
## Description

Removing the `ipAddress` field since it is not an input for Cloud SQL
SQL Server source.

Kept the variable in Source's config but removed this variable from
everywhere else in the code. This will PREVENT a breaking change since
the validator won't flag it as an "extra field".

**Will have to update the following as well:**
(1) Cloud docs
https://cloud.google.com/sql/docs/sqlserver/pre-built-tools-with-mcp-toolbox
(2) gemini-cli-extensions
https://github.com/gemini-cli-extensions/cloud-sql-sqlserver

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #1549
2025-10-30 17:14:19 -07:00
Huan Chen
ef28e39e90 feat(tools/bigquery-analyze-contribution): add allowed dataset support (#1675)
## Description

> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [ ] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>

---------

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-10-30 21:44:30 +00:00
Huan Chen
a2006ad577 feat(tools/bigquery-get-dataset-info)!: add allowed dataset support (#1654)
## Description

---
This introduces a breaking change. The bigquery-get-dataset-info tool
will now enforce the allowed datasets setting from its BigQuery source
configuration. Previously, this setting had no effect on the tool.

## PR Checklist

---
> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [ ] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Part of https://github.com/googleapis/genai-toolbox/issues/873
2025-10-30 13:45:02 -07:00
Dr. Strangelove
fae133930f fix(tools/looker): better description and docs for Looker health (#1814)
## Description

Improve the docs for the Looker health tools
2025-10-30 11:20:39 -07:00
Mend Renovate
4620666b2e chore(deps): update dependency google-genai to v1.47.0 (#1820)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
| [google-genai](https://redirect.github.com/googleapis/python-genai) |
`==1.46.0` -> `==1.47.0` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/google-genai/1.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/google-genai/1.46.0/1.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>googleapis/python-genai (google-genai)</summary>

###
[`v1.47.0`](https://redirect.github.com/googleapis/python-genai/blob/HEAD/CHANGELOG.md#1470-2025-10-29)

[Compare
Source](https://redirect.github.com/googleapis/python-genai/compare/v1.46.0...v1.47.0)

##### Features

- Add safety\_filter\_level and person\_generation for Imagen upscaling
([6196b1b](6196b1b425))
- Add support for preference optimization tuning in the SDK.
([4540f9d](4540f9d25f))
- Pass file name to the backend when uploading with a file path
([4fa2edd](4fa2edd927))
- Support default global location when not using api key with vertexai
backend
([6340ce0](6340ce0cf0))
- Support retries in API requests
([ac70ecd](ac70ecdb02))

##### Bug Fixes

- Check environment Vertex AI api key for credential precedence
([9bd758c](9bd758c50c))
- Correct pydantic version range (bytes fields are broken with
pydantic<=2.8).
([d24cb56](d24cb5634e))
- Make `__del__` methods more robust in `_api_client` and `client`.
([64cab58](64cab58b38))
- Setting custom httpx async client will ensure using httpx client even
if aiohttp is installed
([7bd1bde](7bd1bdef36))
- Support custom\_base\_url for Live and other APIs when
project/location are unset and even when project/location are set in the
environment, and avoid Automatic Default Credentials
([7bd1bde](7bd1bdef36))

##### Documentation

- Add docstring for classes and fields that are not supported in Gemini
or Vertex API
([4a6c6af](4a6c6af190))
- Add docstring for enum classes that are not supported in Gemini or
Vertex API
([909f26b](909f26b926))
- Add documentation for the retry behavior
([ff12b46](ff12b46294))
- Update Codegen Instructions to include newer models and use consistent
formatting.
([f0b0a94](f0b0a94aa1))
- Update README.md and index.rst to use consistent spacing for Python
Samples
([2e5aa1f](2e5aa1f933))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTkuNCIsInVwZGF0ZWRJblZlciI6IjQxLjE1OS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-10-30 10:09:36 -07:00
Dr. Strangelove
937608db3e docs: Update testing instructions for maintainers (#1812)
Added instructions for maintainers to trigger tests.
2025-10-30 15:21:57 +00:00
Dr. Strangelove
69138dc801 docs(looker): amend tool list in looker docs. (#1815) 2025-10-30 09:59:57 -04:00
Mend Renovate
0ed998bfed chore(deps): update module cloud.google.com/go/bigquery to v1.72.0 (#1809)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[cloud.google.com/go/bigquery](https://redirect.github.com/googleapis/google-cloud-go)
| `v1.71.0` -> `v1.72.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/cloud.google.com%2fgo%2fbigquery/v1.72.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/cloud.google.com%2fgo%2fbigquery/v1.71.0/v1.72.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTkuNCIsInVwZGF0ZWRJblZlciI6IjQxLjE1OS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-10-29 21:11:09 -07:00
Mend Renovate
57b49358b9 chore(deps): update google.golang.org/genproto digest to 3a174f9 (#1803)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[google.golang.org/genproto](https://redirect.github.com/googleapis/go-genproto)
| require | digest | `49b9836` -> `3a174f9` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTkuNCIsInVwZGF0ZWRJblZlciI6IjQxLjE1OS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-10-29 20:08:54 -07:00
Philippe Batardiere
a8e98dc99d feat: Added ExcludeValues + Fixed issue with regex matching type. (#1818)
## Description

### This PR introduces a new excludedValues field for tool parameters,
enhancing validation capabilities.

This change introduces a new excludedValues field for tool parameters.
This field allows developers to specify a list of values that are not
allowed for a parameter.
The excludedValues field supports both exact value matching and regular
expression matching.

The changes include:
- Updating the tool parameter documentation to include the
excludedValues field.
- Adding the excludedValues field to the CommonParameter struct.
- Implementing the logic to check for excluded values in the Parse
method of each parameter type.
- Updating the MatchStringOrRegex function to support non-string inputs
by converting them to strings before regex matching. This makes the
allowedValues and excludedValues checks more robust.
- Adding unit tests for allowedValues to verify the MatchStringOrRegex
change on parameters.
- Adding unit tests to verify the excludedValues functionality.

## PR Checklist

- [x] Make sure you reviewed
CONTRIBUTING.md
(httpshttps://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a
bug/issue
(https://github.com/googleapis/genai-toolbox/issues/new/choose)
before writing your code! That way we can discuss the change, evaluate
designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [ ] Make sure to add ! if this involve a breaking change

🛠️ Fixes #1792

Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-10-29 16:32:57 -07:00
Mend Renovate
4797751819 chore(deps): update module github.com/looker-open-source/sdk-codegen/go to v0.25.18 (#1801)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[github.com/looker-open-source/sdk-codegen/go](https://redirect.github.com/looker-open-source/sdk-codegen)
| `v0.25.16` -> `v0.25.18` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2flooker-open-source%2fsdk-codegen%2fgo/v0.25.18?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2flooker-open-source%2fsdk-codegen%2fgo/v0.25.16/v0.25.18?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTkuNCIsInVwZGF0ZWRJblZlciI6IjQxLjE1OS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
Co-authored-by: Dr. Strangelove <drstrangelove@google.com>
2025-10-29 22:40:52 +00:00
Mend Renovate
fdca92cefb chore(deps): update dependency llama-index-llms-google-genai to v0.6.2 (#1725)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
| llama-index-llms-google-genai | `==0.6.1` -> `==0.6.2` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/llama-index-llms-google-genai/0.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/llama-index-llms-google-genai/0.6.1/0.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-10-29 21:58:44 +00:00
Wenxin Du
208ab92eb3 feat: Make MongoDB filterParams optional (#1614)
Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-10-29 21:29:12 +00:00
Srividya Reddy
e8c7fe0994 feat(tools/postgres-list-views): add new postgres-list-views tool (#1709)
## Description

Adds a read-only PostgreSQL custom list_views tool, that returns the
details of views present in database. Each row includes: schema_name,
view_name, owner_name
Test Output:

<img width="2433" height="1274" alt="Screenshot 2025-10-19 at 3 59
31 PM"
src="https://github.com/user-attachments/assets/76e1e994-390a-4239-aba7-0d02253bbcc4"
/>
<img width="2533" height="1017" alt="Screenshot 2025-10-19 at 4 07
25 PM"
src="https://github.com/user-attachments/assets/537fbddd-d862-4044-a09b-cb9f180c21fa"
/>

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #1738

Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-10-29 14:18:29 -07:00
Wenxin Du
2696fc4035 ci(tools/postgres-list-active-queries): exclude background applicatio… (#1813)
The `postgres-list-active-queries` tool integration test is failing
because of background admin queries for logging.
2025-10-29 15:00:48 -04:00
Averi Kitsch
9108c491fe ci: Revert "ci: Update blunderbuss.yml for OOO" (#1795)
Reverts googleapis/genai-toolbox#1726
2025-10-28 23:56:00 +00:00
Dave Borowitz
7ad10720b4 feat(serverless-spark): Add get_batch tool 2025-10-28 13:42:02 -07:00
Mend Renovate
5d1be9caf9 chore(deps): update github.com/googleapis/mcp-toolbox-sdk-go digest to eb73e0c (#1750)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[github.com/googleapis/mcp-toolbox-sdk-go](https://redirect.github.com/googleapis/mcp-toolbox-sdk-go)
| require | digest | `eae3dce` -> `eb73e0c` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-28 17:49:57 +00:00
Mend Renovate
b3edf570ce chore(deps): update module cloud.google.com/go/spanner to v1.86.1 (#1773)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[cloud.google.com/go/spanner](https://redirect.github.com/googleapis/google-cloud-go)
| `v1.86.0` -> `v1.86.1` |
[![age](https://developer.mend.io/api/mc/badges/age/go/cloud.google.com%2fgo%2fspanner/v1.86.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/cloud.google.com%2fgo%2fspanner/v1.86.0/v1.86.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTYuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE1Ni4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-28 16:41:31 +00:00
Mend Renovate
e0adc8f48b chore(deps): update google.golang.org/genproto digest to 49b9836 (#1622)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[google.golang.org/genproto](https://redirect.github.com/googleapis/go-genproto)
| require | digest | `57b25ae` -> `49b9836` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQxLjEzMS45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-28 16:06:05 +00:00
Mend Renovate
01ac3134c0 chore(deps): update dependency llama-index to v0.14.6 (#1785)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
| [llama-index](https://redirect.github.com/run-llama/llama_index) |
`==0.14.4` -> `==0.14.6` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/llama-index/0.14.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/llama-index/0.14.4/0.14.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>run-llama/llama_index (llama-index)</summary>

###
[`v0.14.6`](https://redirect.github.com/run-llama/llama_index/blob/HEAD/CHANGELOG.md#2025-10-26)

[Compare
Source](https://redirect.github.com/run-llama/llama_index/compare/v0.14.5...v0.14.6)

##### llama-index-core \[0.14.6]

- Add allow\_parallel\_tool\_calls for non-streaming
([#&#8203;20117](https://redirect.github.com/run-llama/llama_index/pull/20117))
- Fix invalid use of field-specific metadata
([#&#8203;20122](https://redirect.github.com/run-llama/llama_index/pull/20122))
- update doc for SemanticSplitterNodeParser
([#&#8203;20125](https://redirect.github.com/run-llama/llama_index/pull/20125))
- fix rare cases when sentence splits are larger than chunk size
([#&#8203;20147](https://redirect.github.com/run-llama/llama_index/pull/20147))

##### llama-index-embeddings-bedrock \[0.7.0]

- Fix BedrockEmbedding to support Cohere v4 response format
([#&#8203;20094](https://redirect.github.com/run-llama/llama_index/pull/20094))

##### llama-index-embeddings-isaacus \[0.1.0]

- feat: Isaacus embeddings integration
([#&#8203;20124](https://redirect.github.com/run-llama/llama_index/pull/20124))

##### llama-index-embeddings-oci-genai \[0.4.2]

- Update OCI GenAI cohere models
([#&#8203;20146](https://redirect.github.com/run-llama/llama_index/pull/20146))

##### llama-index-llms-anthropic \[0.9.7]

- Fix double token stream in anthropic llm
([#&#8203;20108](https://redirect.github.com/run-llama/llama_index/pull/20108))
- Ensure anthropic content delta only has user facing response
([#&#8203;20113](https://redirect.github.com/run-llama/llama_index/pull/20113))

##### llama-index-llms-baseten \[0.1.7]

- add GLM
([#&#8203;20121](https://redirect.github.com/run-llama/llama_index/pull/20121))

##### llama-index-llms-helicone \[0.1.0]

- integrate helicone to llama-index
([#&#8203;20131](https://redirect.github.com/run-llama/llama_index/pull/20131))

##### llama-index-llms-oci-genai \[0.6.4]

- Update OCI GenAI cohere models
([#&#8203;20146](https://redirect.github.com/run-llama/llama_index/pull/20146))

##### llama-index-llms-openai \[0.6.5]

- chore: openai vbump
([#&#8203;20095](https://redirect.github.com/run-llama/llama_index/pull/20095))

##### llama-index-readers-imdb-review \[0.4.2]

- chore: Update selenium dependency in imdb-review reader
([#&#8203;20105](https://redirect.github.com/run-llama/llama_index/pull/20105))

##### llama-index-retrievers-bedrock \[0.5.0]

- feat(bedrock): add async support for AmazonKnowledgeBasesRetriever
([#&#8203;20114](https://redirect.github.com/run-llama/llama_index/pull/20114))

##### llama-index-retrievers-superlinked \[0.1.3]

- Update README.md
([#&#8203;19829](https://redirect.github.com/run-llama/llama_index/pull/19829))

##### llama-index-storage-kvstore-postgres \[0.4.2]

- fix: Replace raw SQL string interpolation with proper SQLAlchemy
parameterized APIs in PostgresKVStore
([#&#8203;20104](https://redirect.github.com/run-llama/llama_index/pull/20104))

##### llama-index-tools-mcp \[0.4.3]

- Fix BasicMCPClient resource signatures
([#&#8203;20118](https://redirect.github.com/run-llama/llama_index/pull/20118))

##### llama-index-vector-stores-postgres \[0.7.1]

- Add GIN index support for text array metadata in PostgreSQL vector
store
([#&#8203;20130](https://redirect.github.com/run-llama/llama_index/pull/20130))

###
[`v0.14.5`](https://redirect.github.com/run-llama/llama_index/blob/HEAD/CHANGELOG.md#2025-10-15)

[Compare
Source](https://redirect.github.com/run-llama/llama_index/compare/v0.14.4...v0.14.5)

##### llama-index-core \[0.14.5]

- Remove debug print
([#&#8203;20000](https://redirect.github.com/run-llama/llama_index/pull/20000))
- safely initialize RefDocInfo in Docstore
([#&#8203;20031](https://redirect.github.com/run-llama/llama_index/pull/20031))
- Add progress bar for multiprocess loading
([#&#8203;20048](https://redirect.github.com/run-llama/llama_index/pull/20048))
- Fix duplicate node positions when identical text appears multiple
times in document
([#&#8203;20050](https://redirect.github.com/run-llama/llama_index/pull/20050))
- chore: tool call block - part 1
([#&#8203;20074](https://redirect.github.com/run-llama/llama_index/pull/20074))

##### llama-index-instrumentation \[0.4.2]

- update instrumentation package metadata
([#&#8203;20079](https://redirect.github.com/run-llama/llama_index/pull/20079))

##### llama-index-llms-anthropic \[0.9.5]

-  feat(anthropic): add prompt caching model validation utilities
([#&#8203;20069](https://redirect.github.com/run-llama/llama_index/pull/20069))
- fix streaming thinking/tool calling with anthropic
([#&#8203;20077](https://redirect.github.com/run-llama/llama_index/pull/20077))
- Add haiku 4.5 support
([#&#8203;20092](https://redirect.github.com/run-llama/llama_index/pull/20092))

##### llama-index-llms-baseten \[0.1.6]

- Baseten provider Kimi K2 0711, Llama 4 Maverick and Llama 4 Scout
Model APIs deprecation
([#&#8203;20042](https://redirect.github.com/run-llama/llama_index/pull/20042))

##### llama-index-llms-bedrock-converse \[0.10.5]

- feat: List Claude Sonnet 4.5 as a reasoning model
([#&#8203;20022](https://redirect.github.com/run-llama/llama_index/pull/20022))
- feat: Support global cross-region inference profile prefix
([#&#8203;20064](https://redirect.github.com/run-llama/llama_index/pull/20064))
- Update utils.py for opus 4.1
([#&#8203;20076](https://redirect.github.com/run-llama/llama_index/pull/20076))
- 4.1 opus bedrockconverse missing in funcitoncalling models
([#&#8203;20084](https://redirect.github.com/run-llama/llama_index/pull/20084))
- Add haiku 4.5 support
([#&#8203;20092](https://redirect.github.com/run-llama/llama_index/pull/20092))

##### llama-index-llms-fireworks \[0.4.4]

- Add Support for Custom Models in Fireworks LLM
([#&#8203;20023](https://redirect.github.com/run-llama/llama_index/pull/20023))
- fix(llms/fireworks): Cannot use Fireworks Deepseek V3.1-20006 issue
([#&#8203;20028](https://redirect.github.com/run-llama/llama_index/pull/20028))

##### llama-index-llms-oci-genai \[0.6.3]

- Add support for xAI models in OCI GenAI
([#&#8203;20089](https://redirect.github.com/run-llama/llama_index/pull/20089))

##### llama-index-llms-openai \[0.6.4]

- Gpt 5 pro addition
([#&#8203;20029](https://redirect.github.com/run-llama/llama_index/pull/20029))
- fix collecting final response with openai responses streaming
([#&#8203;20037](https://redirect.github.com/run-llama/llama_index/pull/20037))
- Add support for GPT-5 models in utils.py (JSON\_SCHEMA\_MODELS)
([#&#8203;20045](https://redirect.github.com/run-llama/llama_index/pull/20045))
- chore: tool call block - part 1
([#&#8203;20074](https://redirect.github.com/run-llama/llama_index/pull/20074))

##### llama-index-llms-sglang \[0.1.0]

- Added Sglang llm integration
([#&#8203;20020](https://redirect.github.com/run-llama/llama_index/pull/20020))

##### llama-index-readers-gitlab \[0.5.1]

- feat(gitlab): add pagination params for repository tree and issues
([#&#8203;20052](https://redirect.github.com/run-llama/llama_index/pull/20052))

##### llama-index-readers-json \[0.4.2]

- vbump the JSON reader
([#&#8203;20039](https://redirect.github.com/run-llama/llama_index/pull/20039))

##### llama-index-readers-web \[0.5.5]

- fix: ScrapflyReader Pydantic validation error
([#&#8203;19999](https://redirect.github.com/run-llama/llama_index/pull/19999))

##### llama-index-storage-chat-store-dynamodb \[0.4.2]

- bump dynamodb chat store deps
([#&#8203;20078](https://redirect.github.com/run-llama/llama_index/pull/20078))

##### llama-index-tools-mcp \[0.4.2]

- 🐛 fix(tools/mcp): Fix dict type handling and reference resolution in …
([#&#8203;20082](https://redirect.github.com/run-llama/llama_index/pull/20082))

##### llama-index-tools-signnow \[0.1.0]

- feat(signnow): SignNow mcp tools integration
([#&#8203;20057](https://redirect.github.com/run-llama/llama_index/pull/20057))

##### llama-index-tools-tavily-research \[0.4.2]

- feat: Add Tavily extract function for URL content extraction
([#&#8203;20038](https://redirect.github.com/run-llama/llama_index/pull/20038))

##### llama-index-vector-stores-azurepostgresql \[0.2.0]

- Add hybrid search to Azure PostgreSQL integration
([#&#8203;20027](https://redirect.github.com/run-llama/llama_index/pull/20027))

##### llama-index-vector-stores-milvus \[0.9.3]

- fix: Milvus get\_field\_kwargs()
([#&#8203;20086](https://redirect.github.com/run-llama/llama_index/pull/20086))

##### llama-index-vector-stores-opensearch \[0.6.2]

- fix(opensearch): Correct version check for efficient filtering
([#&#8203;20067](https://redirect.github.com/run-llama/llama_index/pull/20067))

##### llama-index-vector-stores-qdrant \[0.8.6]

- fix(qdrant): Allow async-only initialization with hybrid search
([#&#8203;20005](https://redirect.github.com/run-llama/llama_index/pull/20005))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTYuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE1Ni4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-10-27 21:26:51 +00:00
Mend Renovate
19767c05ba chore(deps): update dependency go to v1.25.2 (#1649)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [go](https://go.dev/)
([source](https://redirect.github.com/golang/go)) | toolchain | patch |
`1.25.1` -> `1.25.2` |

---

### Release Notes

<details>
<summary>golang/go (go)</summary>

###
[`v1.25.2`](https://redirect.github.com/golang/go/compare/go1.25.1...go1.25.2)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQxLjEzMS45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-27 20:54:16 +00:00
manuka rahul
ddd8b42bf3 docs: fix links (#1793)
Fixed the broken links
2025-10-27 19:15:23 +00:00
Twisha Bansal
5f39d4d2ae test: improve root coverage (#1791)
## Description

> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>
2025-10-27 18:49:08 +00:00
Dr. Strangelove
4b0172083c fix: instructions to quote filters that include commas (#1794)
## Description

A filter value like `{"user.city": "New York, NY"}` gets interpretted by
Looker as a list of values, and so becomes SQL like
`IN ('New York', 'NY')`. Need to pass a filter value like `{"user.city":
"'New York, NY'"}`.

Add instructions to agents to properly quote filter values that contain
commas.

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [X] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [X] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [X] Ensure the tests and linter pass
- [X] Code coverage does not decrease (if any source code was changed)
- [X] Appropriate docs were updated (if necessary)
- [X] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #1790
2025-10-27 17:49:05 +00:00
manuka rahul
de6bf7279d docs: fix broken links (#1757)
Fixed the broken links

---------

Co-authored-by: Twisha Bansal <58483338+twishabansal@users.noreply.github.com>
Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-27 21:46:47 +05:30
manuka rahul
927d4c6c8f docs: Update quickstart.js (#1788)
Removed the print statement
2025-10-26 16:03:27 +05:30
Mend Renovate
0c4230f7ae chore(deps): update module github.com/tmc/langchaingo to v0.1.14 (#1739)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[github.com/tmc/langchaingo](https://redirect.github.com/tmc/langchaingo)
| `v0.1.13` -> `v0.1.14` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2ftmc%2flangchaingo/v0.1.14?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2ftmc%2flangchaingo/v0.1.13/v0.1.14?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>tmc/langchaingo (github.com/tmc/langchaingo)</summary>

###
[`v0.1.14`](https://redirect.github.com/tmc/langchaingo/releases/tag/v0.1.14)

[Compare
Source](https://redirect.github.com/tmc/langchaingo/compare/v0.1.13...v0.1.14)

#### What's Changed

- anthropic: Add support for multi content part and images content in
human messages. by [@&#8203;Neofox](https://redirect.github.com/Neofox)
in [#&#8203;1141](https://redirect.github.com/tmc/langchaingo/pull/1141)
- llms: implement StreamingReasoningFunc for reasoning models by
[@&#8203;douglarek](https://redirect.github.com/douglarek) in
[#&#8203;1125](https://redirect.github.com/tmc/langchaingo/pull/1125)
- ci: migrate linting golangci-lint to v2.0.2 by
[@&#8203;mdelapenya](https://redirect.github.com/mdelapenya) in
[#&#8203;1217](https://redirect.github.com/tmc/langchaingo/pull/1217)
- vectorstore: Add interfaces for Google AlloyDB and Cloud SQL by
[@&#8203;averikitsch](https://redirect.github.com/averikitsch) in
[#&#8203;1204](https://redirect.github.com/tmc/langchaingo/pull/1204)
- memory: add interfaces for Google AlloyDB and Cloud SQL by
[@&#8203;averikitsch](https://redirect.github.com/averikitsch) in
[#&#8203;1205](https://redirect.github.com/tmc/langchaingo/pull/1205)
- llms/openai: replace deprecated gpt-4-vision-preview with gpt-4o in
TestMultiContentImage by
[@&#8203;karsharma10](https://redirect.github.com/karsharma10) in
[#&#8203;1238](https://redirect.github.com/tmc/langchaingo/pull/1238)
- googleai: fix issue where gemini would ignore all but the first tool
by [@&#8203;jpoz](https://redirect.github.com/jpoz) in
[#&#8203;1244](https://redirect.github.com/tmc/langchaingo/pull/1244)
- vectorstores: add Bedrock Knowledge Bases vectorstore support by
[@&#8203;lucaronca](https://redirect.github.com/lucaronca) in
[#&#8203;1200](https://redirect.github.com/tmc/langchaingo/pull/1200)
- bedrock: Improve bedrock provider extraction from model id by
[@&#8203;lucaronca](https://redirect.github.com/lucaronca) in
[#&#8203;1135](https://redirect.github.com/tmc/langchaingo/pull/1135)
- duckduckgo: descriptive error message by
[@&#8203;lmorg](https://redirect.github.com/lmorg) in
[#&#8203;1260](https://redirect.github.com/tmc/langchaingo/pull/1260)
- examples: Fix examples and complete linting upgrade by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1288](https://redirect.github.com/tmc/langchaingo/pull/1288)
- httprr: add httprr package by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1296](https://redirect.github.com/tmc/langchaingo/pull/1296)
- all: add broad httprr coverage, update dependencies, organize go.mod
file, bump to 1.23 by [@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1299](https://redirect.github.com/tmc/langchaingo/pull/1299)
- googleai: Replace `textembedding-gecko` with `text-embedding-005` in
its PaLM Client by
[@&#8203;alanrichman](https://redirect.github.com/alanrichman) in
[#&#8203;1292](https://redirect.github.com/tmc/langchaingo/pull/1292)
- all: expand test coverage by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1312](https://redirect.github.com/tmc/langchaingo/pull/1312)
- docs: refactor documentation site content, structure by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1311](https://redirect.github.com/tmc/langchaingo/pull/1311)
- docs: follow-on and fix search indexing by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1313](https://redirect.github.com/tmc/langchaingo/pull/1313)
- docs:fix typo error, openAI and anthropic use withToken instead of wi…
by [@&#8203;BowieHe](https://redirect.github.com/BowieHe) in
[#&#8203;1314](https://redirect.github.com/tmc/langchaingo/pull/1314)
- vectorstores: add WithEndpoint option for Azure AI Search by
[@&#8203;thecoons](https://redirect.github.com/thecoons) in
[#&#8203;1308](https://redirect.github.com/tmc/langchaingo/pull/1308)
- deps: update dependencies by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1319](https://redirect.github.com/tmc/langchaingo/pull/1319)
- bedrockclient: add support for new Amazon Nova models by
[@&#8203;oryanmoshe](https://redirect.github.com/oryanmoshe) in
[#&#8203;1083](https://redirect.github.com/tmc/langchaingo/pull/1083)
- ollama: Fix path and align new payloads requirements by
[@&#8203;iButcat](https://redirect.github.com/iButcat) in
[#&#8203;1317](https://redirect.github.com/tmc/langchaingo/pull/1317)
- agents: Add more robust response handling to executor.go by
[@&#8203;xiazemin](https://redirect.github.com/xiazemin) in
[#&#8203;1316](https://redirect.github.com/tmc/langchaingo/pull/1316)
- prompts: Prompt template improvements and docs expansion by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1348](https://redirect.github.com/tmc/langchaingo/pull/1348)
- ollama: Add support for reasoning mode (think parameter) by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1349](https://redirect.github.com/tmc/langchaingo/pull/1349)
- ollama: Add httprr test recordings for think parameter by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1351](https://redirect.github.com/tmc/langchaingo/pull/1351)
- llms/openai: add OpenRouter support with streaming fix by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1350](https://redirect.github.com/tmc/langchaingo/pull/1350)
- deps: update Go version to 1.23.8 and toolchain to 1.24.6 by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1352](https://redirect.github.com/tmc/langchaingo/pull/1352)
- examples: update to use v0.1.14-pre.0 by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1353](https://redirect.github.com/tmc/langchaingo/pull/1353)
- llms/bedrock: fix whitespace formatting by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1360](https://redirect.github.com/tmc/langchaingo/pull/1360)
- llms/googleai: fix multi-tool support for Google AI and Vertex AI by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1361](https://redirect.github.com/tmc/langchaingo/pull/1361)
- vectorstores: add MariaDB and Dolt vector store implementations by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1363](https://redirect.github.com/tmc/langchaingo/pull/1363)
- agents: improve robustness of MRKL and OpenAI Functions agents by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1362](https://redirect.github.com/tmc/langchaingo/pull/1362)
- llms: fix memory and goroutine leaks in GoogleAI/Vertex and OpenAI
streaming by [@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1364](https://redirect.github.com/tmc/langchaingo/pull/1364)
- llms/openai: improve SSE comment handling in streaming responses by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1366](https://redirect.github.com/tmc/langchaingo/pull/1366)
- openai: add support for max\_tokens by
[@&#8203;kid-icarus](https://redirect.github.com/kid-icarus) in
[#&#8203;1359](https://redirect.github.com/tmc/langchaingo/pull/1359)
- openaiclient: add dimensions option while creating embeddings by
[@&#8203;JLugagne](https://redirect.github.com/JLugagne) in
[#&#8203;1338](https://redirect.github.com/tmc/langchaingo/pull/1338)
- llms/anthropic: allow streaming responses with tool use by
[@&#8203;jpoz](https://redirect.github.com/jpoz) in
[#&#8203;1343](https://redirect.github.com/tmc/langchaingo/pull/1343)
- llms/bedrock: add modelProvider option and Nova model support by
[@&#8203;dreamans](https://redirect.github.com/dreamans) in
[#&#8203;1346](https://redirect.github.com/tmc/langchaingo/pull/1346)
- googleai: ensure googleai schema conversion works with nested objects
and arrays by
[@&#8203;kid-icarus](https://redirect.github.com/kid-icarus) in
[#&#8203;1326](https://redirect.github.com/tmc/langchaingo/pull/1326)
- googleai: add `ReasoningContent` field to openai `GenerateContent`
functio… by
[@&#8203;topjohncian](https://redirect.github.com/topjohncian) in
[#&#8203;1324](https://redirect.github.com/tmc/langchaingo/pull/1324)
- bedrock: add tool calling support for Anthropic Claude models by
[@&#8203;manishiitg](https://redirect.github.com/manishiitg) in
[#&#8203;1327](https://redirect.github.com/tmc/langchaingo/pull/1327)
- llms/bedrock: complete Anthropic tool calling support by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1367](https://redirect.github.com/tmc/langchaingo/pull/1367)
- httprr: improve test recording stability and add utilities by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1368](https://redirect.github.com/tmc/langchaingo/pull/1368)
- Revert "openai: add support for max\_tokens
([#&#8203;1359](https://redirect.github.com/tmc/langchaingo/issues/1359))"
by [@&#8203;kid-icarus](https://redirect.github.com/kid-icarus) in
[#&#8203;1369](https://redirect.github.com/tmc/langchaingo/pull/1369)
- mongovector: fix expected error string in non-tokenized filter test by
[@&#8203;matthewdale](https://redirect.github.com/matthewdale) in
[#&#8203;1331](https://redirect.github.com/tmc/langchaingo/pull/1331)
- googleai: fix user provided embedding model getting overridden by
default model by
[@&#8203;ancalabrese](https://redirect.github.com/ancalabrese) in
[#&#8203;1307](https://redirect.github.com/tmc/langchaingo/pull/1307)
- openai: add robust max\_tokens support with backward compatibility by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1371](https://redirect.github.com/tmc/langchaingo/pull/1371)
- llms/ollama: fix panic when context is cancelled during streaming by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1372](https://redirect.github.com/tmc/langchaingo/pull/1372)
- examples: update examples to v0.1.14-pre.2 by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1373](https://redirect.github.com/tmc/langchaingo/pull/1373)
- docs: Tools Doc URL was not working by
[@&#8203;rafian-git](https://redirect.github.com/rafian-git) in
[#&#8203;1309](https://redirect.github.com/tmc/langchaingo/pull/1309)
- openai: fix temperature handling for reasoning models (GPT-5, o1, o3)
by [@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1374](https://redirect.github.com/tmc/langchaingo/pull/1374)
- test: improve test resilience and update provider APIs by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1377](https://redirect.github.com/tmc/langchaingo/pull/1377)
- test: improve test coverage and optimize storage with gzip compression
by [@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1378](https://redirect.github.com/tmc/langchaingo/pull/1378)
- examples: update examples to v0.1.14-pre.3 by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1379](https://redirect.github.com/tmc/langchaingo/pull/1379)
- openai: expose all available token usage details by
[@&#8203;rainu](https://redirect.github.com/rainu) in
[#&#8203;1278](https://redirect.github.com/tmc/langchaingo/pull/1278)
- openai: filter out open ai max token metadata by
[@&#8203;kid-icarus](https://redirect.github.com/kid-icarus) in
[#&#8203;1376](https://redirect.github.com/tmc/langchaingo/pull/1376)
- examples/groq: fix max\_tokens compatibility issue by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1382](https://redirect.github.com/tmc/langchaingo/pull/1382)
- examples/groq: fixup groq example by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1385](https://redirect.github.com/tmc/langchaingo/pull/1385)
- internal/httprr, vectorstores/azureaisearch: fix race conditions in
tests by [@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1381](https://redirect.github.com/tmc/langchaingo/pull/1381)
- tools/scraper: fix context cancellation hanging by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1383](https://redirect.github.com/tmc/langchaingo/pull/1383)
- agents,llms/anthropic: prevent panics in agent parsing and Anthropic
responses by [@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1380](https://redirect.github.com/tmc/langchaingo/pull/1380)
- llms: add prompt caching and reasoning token support by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1394](https://redirect.github.com/tmc/langchaingo/pull/1394)
- tools: Add max pages limit for scraper functionality by
[@&#8203;JJ-H](https://redirect.github.com/JJ-H) in
[#&#8203;1295](https://redirect.github.com/tmc/langchaingo/pull/1295)
- vectorstores/milvus: update deprecation notice for archived SDK by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1398](https://redirect.github.com/tmc/langchaingo/pull/1398)
- docs: complete the incomplete basic chat app tutorial by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1399](https://redirect.github.com/tmc/langchaingo/pull/1399)
- examples: update to v0.1.14-pre.4 by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1401](https://redirect.github.com/tmc/langchaingo/pull/1401)
- docs: fix API references and complete integration documentation by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1402](https://redirect.github.com/tmc/langchaingo/pull/1402)
- examples: fix typo in openai-chat-example.go of maximum tokens per
generation, old: 104 tokens, fix: 1024 tokens by
[@&#8203;SSSKrut](https://redirect.github.com/SSSKrut) in
[#&#8203;1392](https://redirect.github.com/tmc/langchaingo/pull/1392)
- llms: update model context sizes for GPT-4o and GPT-4 Turbo by
[@&#8203;paulnegz](https://redirect.github.com/paulnegz) in
[#&#8203;1389](https://redirect.github.com/tmc/langchaingo/pull/1389)
- documentloaders: add RecursiveDirectoryLoader that loads documents
with allowed extensions from a directory by
[@&#8203;zhu733756](https://redirect.github.com/zhu733756) in
[#&#8203;1386](https://redirect.github.com/tmc/langchaingo/pull/1386)
- httputil: enhance JSONDebugClient with SSE and header debugging by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1404](https://redirect.github.com/tmc/langchaingo/pull/1404)
- vectorstores/milvus: complete migration to new SDK v2 client by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1403](https://redirect.github.com/tmc/langchaingo/pull/1403)
- anthropic: add improved streaming thinking/reasoning token support by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1418](https://redirect.github.com/tmc/langchaingo/pull/1418)
- agents: fix ChainCallOption silent failure by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1420](https://redirect.github.com/tmc/langchaingo/pull/1420)
- llms/openai: sanitize HTTP errors to prevent API key exposure by
[@&#8203;tmc](https://redirect.github.com/tmc) in
[#&#8203;1419](https://redirect.github.com/tmc/langchaingo/pull/1419)
- agents: allow match from multiple lines for parseOutput function by
[@&#8203;hemarina](https://redirect.github.com/hemarina) in
[#&#8203;1415](https://redirect.github.com/tmc/langchaingo/pull/1415)

#### New Contributors

- [@&#8203;Neofox](https://redirect.github.com/Neofox) made their first
contribution in
[#&#8203;1141](https://redirect.github.com/tmc/langchaingo/pull/1141)
- [@&#8203;averikitsch](https://redirect.github.com/averikitsch) made
their first contribution in
[#&#8203;1204](https://redirect.github.com/tmc/langchaingo/pull/1204)
- [@&#8203;karsharma10](https://redirect.github.com/karsharma10) made
their first contribution in
[#&#8203;1238](https://redirect.github.com/tmc/langchaingo/pull/1238)
- [@&#8203;jpoz](https://redirect.github.com/jpoz) made their first
contribution in
[#&#8203;1244](https://redirect.github.com/tmc/langchaingo/pull/1244)
- [@&#8203;lmorg](https://redirect.github.com/lmorg) made their first
contribution in
[#&#8203;1260](https://redirect.github.com/tmc/langchaingo/pull/1260)
- [@&#8203;alanrichman](https://redirect.github.com/alanrichman) made
their first contribution in
[#&#8203;1292](https://redirect.github.com/tmc/langchaingo/pull/1292)
- [@&#8203;BowieHe](https://redirect.github.com/BowieHe) made their
first contribution in
[#&#8203;1314](https://redirect.github.com/tmc/langchaingo/pull/1314)
- [@&#8203;thecoons](https://redirect.github.com/thecoons) made their
first contribution in
[#&#8203;1308](https://redirect.github.com/tmc/langchaingo/pull/1308)
- [@&#8203;oryanmoshe](https://redirect.github.com/oryanmoshe) made
their first contribution in
[#&#8203;1083](https://redirect.github.com/tmc/langchaingo/pull/1083)
- [@&#8203;iButcat](https://redirect.github.com/iButcat) made their
first contribution in
[#&#8203;1317](https://redirect.github.com/tmc/langchaingo/pull/1317)
- [@&#8203;xiazemin](https://redirect.github.com/xiazemin) made their
first contribution in
[#&#8203;1316](https://redirect.github.com/tmc/langchaingo/pull/1316)
- [@&#8203;kid-icarus](https://redirect.github.com/kid-icarus) made
their first contribution in
[#&#8203;1359](https://redirect.github.com/tmc/langchaingo/pull/1359)
- [@&#8203;JLugagne](https://redirect.github.com/JLugagne) made their
first contribution in
[#&#8203;1338](https://redirect.github.com/tmc/langchaingo/pull/1338)
- [@&#8203;dreamans](https://redirect.github.com/dreamans) made their
first contribution in
[#&#8203;1346](https://redirect.github.com/tmc/langchaingo/pull/1346)
- [@&#8203;topjohncian](https://redirect.github.com/topjohncian) made
their first contribution in
[#&#8203;1324](https://redirect.github.com/tmc/langchaingo/pull/1324)
- [@&#8203;manishiitg](https://redirect.github.com/manishiitg) made
their first contribution in
[#&#8203;1327](https://redirect.github.com/tmc/langchaingo/pull/1327)
- [@&#8203;matthewdale](https://redirect.github.com/matthewdale) made
their first contribution in
[#&#8203;1331](https://redirect.github.com/tmc/langchaingo/pull/1331)
- [@&#8203;ancalabrese](https://redirect.github.com/ancalabrese) made
their first contribution in
[#&#8203;1307](https://redirect.github.com/tmc/langchaingo/pull/1307)
- [@&#8203;rafian-git](https://redirect.github.com/rafian-git) made
their first contribution in
[#&#8203;1309](https://redirect.github.com/tmc/langchaingo/pull/1309)
- [@&#8203;rainu](https://redirect.github.com/rainu) made their first
contribution in
[#&#8203;1278](https://redirect.github.com/tmc/langchaingo/pull/1278)
- [@&#8203;JJ-H](https://redirect.github.com/JJ-H) made their first
contribution in
[#&#8203;1295](https://redirect.github.com/tmc/langchaingo/pull/1295)
- [@&#8203;SSSKrut](https://redirect.github.com/SSSKrut) made their
first contribution in
[#&#8203;1392](https://redirect.github.com/tmc/langchaingo/pull/1392)
- [@&#8203;paulnegz](https://redirect.github.com/paulnegz) made their
first contribution in
[#&#8203;1389](https://redirect.github.com/tmc/langchaingo/pull/1389)
- [@&#8203;zhu733756](https://redirect.github.com/zhu733756) made their
first contribution in
[#&#8203;1386](https://redirect.github.com/tmc/langchaingo/pull/1386)
- [@&#8203;hemarina](https://redirect.github.com/hemarina) made their
first contribution in
[#&#8203;1415](https://redirect.github.com/tmc/langchaingo/pull/1415)

**Full Changelog**:
<https://github.com/tmc/langchaingo/compare/v0.1.13...v0.1.14>

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-24 22:41:05 +00:00
Mend Renovate
9379c02b24 chore(deps): update dependency langgraph to v1 (#1735)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
| [langgraph](https://redirect.github.com/langchain-ai/langgraph) |
`==0.6.8` -> `==1.0.1` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/langgraph/1.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/langgraph/0.6.8/1.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>langchain-ai/langgraph (langgraph)</summary>

###
[`v1.0.1`](https://redirect.github.com/langchain-ai/langgraph/releases/tag/1.0.1)

[Compare
Source](https://redirect.github.com/langchain-ai/langgraph/compare/1.0.0...1.0.1)

Changes since 1.0.0

- release: Checkpointers 3.0
([#&#8203;6313](https://redirect.github.com/langchain-ai/langgraph/issues/6313))
- chore: Restrict "json" type deserialization
([#&#8203;6269](https://redirect.github.com/langchain-ai/langgraph/issues/6269))

###
[`v1.0.0`](https://redirect.github.com/langchain-ai/langgraph/releases/tag/1.0.0)

[Compare
Source](https://redirect.github.com/langchain-ai/langgraph/compare/0.6.11...1.0.0)

Changes since 1.0.0rc1

- release: langgraph + langgraph-prebuilt v1.0.0
([#&#8203;6300](https://redirect.github.com/langchain-ai/langgraph/issues/6300))
- feat: adding cursory Python 3.14 support
([#&#8203;6298](https://redirect.github.com/langchain-ai/langgraph/issues/6298))
- style: fixes for ref docs
([#&#8203;6297](https://redirect.github.com/langchain-ai/langgraph/issues/6297))

###
[`v0.6.11`](https://redirect.github.com/langchain-ai/langgraph/releases/tag/0.6.11)

[Compare
Source](https://redirect.github.com/langchain-ai/langgraph/compare/0.6.10...0.6.11)

Changes since 0.6.10

- chore: Allow checkpoint 3.0 in 0.6.\*
([#&#8203;6315](https://redirect.github.com/langchain-ai/langgraph/issues/6315))

###
[`v0.6.10`](https://redirect.github.com/langchain-ai/langgraph/releases/tag/0.6.10)

[Compare
Source](https://redirect.github.com/langchain-ai/langgraph/compare/0.6.9...0.6.10)

Changes since 0.6.9

- chore(langgraph): bump langgraph version
([#&#8203;6257](https://redirect.github.com/langchain-ai/langgraph/issues/6257))
- fix(langgraph): revert selective interrupt task scheduling
([#&#8203;6252](https://redirect.github.com/langchain-ai/langgraph/issues/6252))

###
[`v0.6.9`](https://redirect.github.com/langchain-ai/langgraph/releases/tag/0.6.9)

[Compare
Source](https://redirect.github.com/langchain-ai/langgraph/compare/0.6.8...0.6.9)

Changes since 1.0.0a4

- chore(langgraph): bump version
([#&#8203;6245](https://redirect.github.com/langchain-ai/langgraph/issues/6245))
- chore(checkpoint): bump patch version
([#&#8203;6244](https://redirect.github.com/langchain-ai/langgraph/issues/6244))
- fix(langgraph): selective interrupt task scheduling
([#&#8203;6158](https://redirect.github.com/langchain-ai/langgraph/issues/6158))
- fix(langgraph): task result from stream mode debug / tasks should
match format from get\_state\_history / get\_state
([#&#8203;6233](https://redirect.github.com/langchain-ai/langgraph/issues/6233))
- fix(langgraph): don't use rst code blocks in docstrings
([#&#8203;6231](https://redirect.github.com/langchain-ai/langgraph/issues/6231))
- docs(langgraph): standardize version-added admonitions
([#&#8203;6230](https://redirect.github.com/langchain-ai/langgraph/issues/6230))
- fix(langgraph): fix supersteps not populating task.result field
([#&#8203;6195](https://redirect.github.com/langchain-ai/langgraph/issues/6195))
- fix(langgraph): revert -- reuse cached writes on nested resume to
prevent task re-execution
([#&#8203;6227](https://redirect.github.com/langchain-ai/langgraph/issues/6227))
- chore(checkpoint-postgres): bump version
([#&#8203;6222](https://redirect.github.com/langchain-ai/langgraph/issues/6222))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-24 22:16:08 +00:00
Mend Renovate
245e0d319d chore(deps): update module github.com/openai/openai-go/v3 to v3.6.1 (#1723)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[github.com/openai/openai-go/v3](https://redirect.github.com/openai/openai-go)
| `v3.3.0` -> `v3.6.1` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fopenai%2fopenai-go%2fv3/v3.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fopenai%2fopenai-go%2fv3/v3.3.0/v3.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>openai/openai-go (github.com/openai/openai-go/v3)</summary>

###
[`v3.6.1`](https://redirect.github.com/openai/openai-go/releases/tag/v3.6.1)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v3.6.0...v3.6.1)

#### 3.6.1 (2025-10-20)

Full Changelog:
[v3.6.0...v3.6.1](https://redirect.github.com/openai/openai-\[go/compare/v3.6.0...v3.6.1]\(https://www.golinks.io/compare/v3.6.0...v3.6.1?trackSource=github\))

##### Bug Fixes

- **api:** fix discriminator propertyName for ResponseFormatJsonSchema
([57b0505](57b0505361\)))

###
[`v3.6.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#360-2025-10-20)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v3.5.0...v3.6.0)

Full Changelog:
[v3.5.0...v3.6.0](https://redirect.github.com/openai/openai-go/compare/v3.5.0...v3.6.0)

##### Features

- **api:** Add responses.input\_tokens.count
([a43f2ce](a43f2cef13))

##### Bug Fixes

- **api:** internal openapi updates
([7ad9b02](7ad9b02d1e))

###
[`v3.5.0`](https://redirect.github.com/openai/openai-go/releases/tag/v3.5.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v3.4.0...v3.5.0)

#### 3.5.0 (2025-10-17)

Full Changelog:
[v3.4.0...v3.5.0](https://redirect.github.com/openai/openai-go/compare/v3.4.0...v3.5.0)

##### Features

- **api:** api update
([1aa78dd](1aa78dda7a))

###
[`v3.4.0`](https://redirect.github.com/openai/openai-go/releases/tag/v3.4.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v3.3.0...v3.4.0)

#### 3.4.0 (2025-10-16)

Full Changelog:
[v3.3.0...v3.4.0](https://redirect.github.com/openai/openai-go/compare/v3.3.0...v3.4.0)

##### Features

- **api:** Add support for gpt-4o-transcribe-diarize on
audio/transcriptions endpoint
([ee32400](ee32400f70))

##### Chores

- **api:** internal updates
([74c8031](74c8031304))
- **client:** undo more naming changes
([db441bc](db441bcb7f))
- **client:** undo some naming changes
([a5aa3d6](a5aa3d6e0d))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-24 21:46:36 +00:00
Mend Renovate
cffb0837a1 chore(deps): update module github.com/valkey-io/valkey-go to v1.0.67 (#1702)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[github.com/valkey-io/valkey-go](https://redirect.github.com/valkey-io/valkey-go)
| `v1.0.66` -> `v1.0.67` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fvalkey-io%2fvalkey-go/v1.0.67?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fvalkey-io%2fvalkey-go/v1.0.66/v1.0.67?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>valkey-io/valkey-go (github.com/valkey-io/valkey-go)</summary>

###
[`v1.0.67`](https://redirect.github.com/valkey-io/valkey-go/releases/tag/v1.0.67):
1.0.67

[Compare
Source](https://redirect.github.com/valkey-io/valkey-go/compare/v1.0.66...v1.0.67)

### Changes

- feat: support new filters in Valkey 8.1/9.0 `CLIENT LIST` and `Client
KILL` commands.
- feat: support Valkey `CLIENT CAPA redirect` for standalone clients
with `StandaloneOption.EnableRedirect`.
- fix: don't send `READONLY` for standalone clients.
- docs: improve markdown formatting and update documentation links,
configurations.

#### Contributors

We'd like to thank all the contributors who worked on this release!

[@&#8203;AvinashAbbigeri](https://redirect.github.com/AvinashAbbigeri),
[@&#8203;SoulPancake](https://redirect.github.com/SoulPancake),
[@&#8203;appleboy](https://redirect.github.com/appleboy),
[@&#8203;justinmayhew](https://redirect.github.com/justinmayhew) and
[@&#8203;rueian](https://redirect.github.com/rueian)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-24 20:00:24 +00:00
Mend Renovate
7add5e2f2c chore(deps): update dependency google-genai to v1.46.0 (#1693)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
| [google-genai](https://redirect.github.com/googleapis/python-genai) |
`==1.42.0` -> `==1.46.0` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/google-genai/1.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/google-genai/1.42.0/1.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>googleapis/python-genai (google-genai)</summary>

###
[`v1.46.0`](https://redirect.github.com/googleapis/python-genai/blob/HEAD/CHANGELOG.md#1460-2025-10-21)

[Compare
Source](https://redirect.github.com/googleapis/python-genai/compare/v1.45.0...v1.46.0)

##### Features

- Add enable\_enhanced\_civic\_answers in GenerationConfig
([6c1dae7](6c1dae7984))
- Support custom httpx clients
([694a6bd](694a6bdc29))
- Support jailbreak in HarmCategory and BlockedReason
([011e218](011e218b8d))

##### Bug Fixes

- Remove bytes for Gemini Developer API before sending a video for Veo
Video Extension async
([9ccc6ce](9ccc6cea79))

##### Documentation

- Regenerate docs for 1.45.0
([9b7632d](9b7632d95c))
- Update README with Gempix example (nano-banana)
([ac2bc42](ac2bc4205a))

###
[`v1.45.0`](https://redirect.github.com/googleapis/python-genai/blob/HEAD/CHANGELOG.md#1450-2025-10-15)

[Compare
Source](https://redirect.github.com/googleapis/python-genai/compare/v1.44.0...v1.45.0)

##### Features

- Add support for Python 3.14.
([f0083a2](f0083a2ee3))

##### Bug Fixes

- Keys in Live API tool responses are incorrectly re-cased
([57a4765](57a4765b66))

###
[`v1.44.0`](https://redirect.github.com/googleapis/python-genai/blob/HEAD/CHANGELOG.md#1440-2025-10-15)

[Compare
Source](https://redirect.github.com/googleapis/python-genai/compare/v1.43.0...v1.44.0)

##### Features

- Support fully override base\_url and raw model name when none of the
project, locations, api\_key are configured
([160997e](160997e7c0))
- Support video extension for Veo on Gemini Developer API
([341ea77](341ea77f97))

##### Bug Fixes

- Avoid potential dual import confusion in type assert
([9cc4a72](9cc4a72405))

##### Documentation

- Refresh docs.
([9c8147b](9c8147bfd2))

###
[`v1.43.0`](https://redirect.github.com/googleapis/python-genai/blob/HEAD/CHANGELOG.md#1430-2025-10-10)

[Compare
Source](https://redirect.github.com/googleapis/python-genai/compare/v1.42.0...v1.43.0)

##### Features

- Enable Google Maps tool for Genai.
([dc77a1d](dc77a1d606))
- Support enableWidget feature in GoogleMaps
([1737f72](1737f72c24))
- Support Gemini batch inline request's metadata and add test coverage
to safety setting
([7dcc969](7dcc969e29))

##### Documentation

- Regenerate updated Python docs
([e6989a3](e6989a35ac))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE1Ni4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-24 19:21:27 +00:00
Mend Renovate
abe8776879 chore(deps): update github actions (major) (#1640)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [actions/checkout](https://redirect.github.com/actions/checkout) |
action | major | `v4` -> `v5` |
| [actions/setup-node](https://redirect.github.com/actions/setup-node) |
action | major | `v5` -> `v6` |
| [actions/setup-node](https://redirect.github.com/actions/setup-node) |
action | major | `v4` -> `v6` |

---

### Release Notes

<details>
<summary>actions/checkout (actions/checkout)</summary>

### [`v5`](https://redirect.github.com/actions/checkout/compare/v4...v5)

[Compare
Source](https://redirect.github.com/actions/checkout/compare/v4...v5)

</details>

<details>
<summary>actions/setup-node (actions/setup-node)</summary>

###
[`v6`](https://redirect.github.com/actions/setup-node/compare/v5...v6)

[Compare
Source](https://redirect.github.com/actions/setup-node/compare/v5...v6)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-24 18:56:16 +00:00
Mend Renovate
012d7de67e chore(deps): update dependency llama-index to v0.14.4 (#1626)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
| [llama-index](https://redirect.github.com/run-llama/llama_index) |
`==0.14.3` -> `==0.14.4` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/llama-index/0.14.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/llama-index/0.14.3/0.14.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>run-llama/llama_index (llama-index)</summary>

###
[`v0.14.4`](https://redirect.github.com/run-llama/llama_index/blob/HEAD/CHANGELOG.md#2025-10-03)

[Compare
Source](https://redirect.github.com/run-llama/llama_index/compare/v0.14.3...v0.14.4)

##### llama-index-core \[0.14.4]

- fix pre-release installs
([#&#8203;20010](https://redirect.github.com/run-llama/llama_index/pull/20010))

##### llama-index-embeddings-anyscale \[0.4.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-embeddings-baseten \[0.1.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-embeddings-fireworks \[0.4.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-embeddings-opea \[0.2.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-embeddings-text-embeddings-inference \[0.4.2]

- Fix authorization header setup logic in text embeddings inference
([#&#8203;19979](https://redirect.github.com/run-llama/llama_index/pull/19979))

##### llama-index-llms-anthropic \[0.9.3]

- feat: add anthropic sonnet 4.5
([#&#8203;19977](https://redirect.github.com/run-llama/llama_index/pull/19977))

##### llama-index-llms-anyscale \[0.4.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-llms-azure-openai \[0.4.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-llms-baseten \[0.1.5]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-llms-bedrock-converse \[0.9.5]

- feat: Additional support for Claude Sonnet 4.5
([#&#8203;19980](https://redirect.github.com/run-llama/llama_index/pull/19980))

##### llama-index-llms-deepinfra \[0.5.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-llms-everlyai \[0.4.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-llms-fireworks \[0.4.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-llms-google-genai \[0.6.2]

- Fix for ValueError: ChatMessage contains multiple blocks, use 'ChatMe…
([#&#8203;19954](https://redirect.github.com/run-llama/llama_index/pull/19954))

##### llama-index-llms-keywordsai \[1.1.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-llms-localai \[0.5.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-llms-mistralai \[0.8.2]

- Update list of MistralAI LLMs
([#&#8203;19981](https://redirect.github.com/run-llama/llama_index/pull/19981))

##### llama-index-llms-monsterapi \[0.4.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-llms-nvidia \[0.4.4]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-llms-ollama \[0.7.4]

- Fix `TypeError: unhashable type: 'dict'` in Ollama stream chat with
tools
([#&#8203;19938](https://redirect.github.com/run-llama/llama_index/pull/19938))

##### llama-index-llms-openai \[0.6.1]

- feat(OpenAILike): support structured outputs
([#&#8203;19967](https://redirect.github.com/run-llama/llama_index/pull/19967))

##### llama-index-llms-openai-like \[0.5.3]

- feat(OpenAILike): support structured outputs
([#&#8203;19967](https://redirect.github.com/run-llama/llama_index/pull/19967))

##### llama-index-llms-openrouter \[0.4.2]

- chore(openrouter,anthropic): add py.typed
([#&#8203;19966](https://redirect.github.com/run-llama/llama_index/pull/19966))

##### llama-index-llms-perplexity \[0.4.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-llms-portkey \[0.4.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-llms-sarvam \[0.2.1]

- fixed Sarvam Integration and Typos (Fixes
[#&#8203;19931](https://redirect.github.com/run-llama/llama_index/issues/19931))
([#&#8203;19932](https://redirect.github.com/run-llama/llama_index/pull/19932))

##### llama-index-llms-upstage \[0.6.4]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-llms-yi \[0.4.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-memory-bedrock-agentcore \[0.1.0]

- feat: Bedrock AgentCore Memory integration
([#&#8203;19953](https://redirect.github.com/run-llama/llama_index/pull/19953))

##### llama-index-multi-modal-llms-openai \[0.6.2]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-readers-confluence \[0.4.4]

- Fix: Respect cloud parameter when fetching child pages in ConfluenceR…
([#&#8203;19983](https://redirect.github.com/run-llama/llama_index/pull/19983))

##### llama-index-readers-service-now \[0.2.2]

- Bug Fix :- Not Able to Fetch Page whose latest is empty or null
([#&#8203;19916](https://redirect.github.com/run-llama/llama_index/pull/19916))

##### llama-index-selectors-notdiamond \[0.4.0]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-tools-agentql \[1.2.0]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-tools-playwright \[0.3.1]

- chore: fix playwright tests
([#&#8203;19946](https://redirect.github.com/run-llama/llama_index/pull/19946))

##### llama-index-tools-scrapegraph \[0.2.2]

- feat: update scrapegraphai
([#&#8203;19974](https://redirect.github.com/run-llama/llama_index/pull/19974))

##### llama-index-vector-stores-chroma \[0.5.3]

- docs: fix query method docstring in ChromaVectorStore Fixes
[#&#8203;19969](https://redirect.github.com/run-llama/llama_index/issues/19969)
([#&#8203;19973](https://redirect.github.com/run-llama/llama_index/pull/19973))

##### llama-index-vector-stores-mongodb \[0.8.1]

- fix llm deps for openai
([#&#8203;19944](https://redirect.github.com/run-llama/llama_index/pull/19944))

##### llama-index-vector-stores-postgres \[0.7.0]

- fix index creation in postgres vector store
([#&#8203;19955](https://redirect.github.com/run-llama/llama_index/pull/19955))

##### llama-index-vector-stores-solr \[0.1.0]

- Add ApacheSolrVectorStore Integration
([#&#8203;19933](https://redirect.github.com/run-llama/llama_index/pull/19933))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQxLjEzMS45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Harsh Jha <83023263+rapid-killer-9@users.noreply.github.com>
Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-24 14:31:39 -04:00
dependabot[bot]
265c340849 chore(deps): bump axios from 1.11.0 to 1.12.2 in /docs/en/getting-started/quickstart/js/langchain (#1585)
Bumps [axios](https://github.com/axios/axios) from 1.11.0 to 1.12.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/axios/axios/releases">axios's
releases</a>.</em></p>
<blockquote>
<h2>Release v1.12.2</h2>
<h2>Release notes:</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>fetch:</strong> use current global fetch instead of cached
one when env fetch is not specified to keep MSW support; (<a
href="https://redirect.github.com/axios/axios/issues/7030">#7030</a>)
(<a
href="cf78825e12">cf78825</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li><!-- raw HTML omitted --> <a
href="https://github.com/DigitalBrainJS" title="+247/-16
([#7030](https://github.com/axios/axios/issues/7030)
[#7022](https://github.com/axios/axios/issues/7022)
[#7024](https://github.com/axios/axios/issues/7024) )">Dmitriy
Mozgovoy</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/noritaka1166"
title="+2/-6 ([#7028](https://github.com/axios/axios/issues/7028)
[#7029](https://github.com/axios/axios/issues/7029) )">Noritaka
Kobayashi</a></li>
</ul>
<h2>Release v1.12.1</h2>
<h2>Release notes:</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>types:</strong> fixed env config types; (<a
href="https://redirect.github.com/axios/axios/issues/7020">#7020</a>)
(<a
href="b5f26b75bd">b5f26b7</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li><!-- raw HTML omitted --> <a
href="https://github.com/DigitalBrainJS" title="+10/-4
([#7020](https://github.com/axios/axios/issues/7020) )">Dmitriy
Mozgovoy</a></li>
</ul>
<h2>Release v1.12.0</h2>
<h2>Release notes:</h2>
<h3>Bug Fixes</h3>
<ul>
<li>adding build artifacts (<a
href="9ec86de257">9ec86de</a>)</li>
<li>dont add dist on release (<a
href="a2edc3606a">a2edc36</a>)</li>
<li><strong>fetch-adapter:</strong> set correct Content-Type for Node
FormData (<a
href="https://redirect.github.com/axios/axios/issues/6998">#6998</a>)
(<a
href="a9f47afbf3">a9f47af</a>)</li>
<li><strong>node:</strong> enforce maxContentLength for data: URLs (<a
href="https://redirect.github.com/axios/axios/issues/7011">#7011</a>)
(<a
href="945435fc51">945435f</a>)</li>
<li>package exports (<a
href="https://redirect.github.com/axios/axios/issues/5627">#5627</a>)
(<a
href="aa78ac23fc">aa78ac2</a>)</li>
<li><strong>params:</strong> removing '[' and ']' from URL encode
exclude characters (<a
href="https://redirect.github.com/axios/axios/issues/3316">#3316</a>)
(<a
href="https://redirect.github.com/axios/axios/issues/5715">#5715</a>)
(<a
href="6d84189349">6d84189</a>)</li>
<li>release pr run (<a
href="fd7f404488">fd7f404</a>)</li>
<li><strong>types:</strong> change the type guard on isCancel (<a
href="https://redirect.github.com/axios/axios/issues/5595">#5595</a>)
(<a
href="0dbb7fd4f6">0dbb7fd</a>)</li>
</ul>
<h3>Features</h3>
<ul>
<li><strong>adapter:</strong> surface low‑level network error details;
attach original error via cause (<a
href="https://redirect.github.com/axios/axios/issues/6982">#6982</a>)
(<a
href="78b290c57c">78b290c</a>)</li>
<li><strong>fetch:</strong> add fetch, Request, Response env config
variables for the adapter; (<a
href="https://redirect.github.com/axios/axios/issues/7003">#7003</a>)
(<a
href="c959ff2901">c959ff2</a>)</li>
<li>support reviver on JSON.parse (<a
href="https://redirect.github.com/axios/axios/issues/5926">#5926</a>)
(<a
href="2a9763426e">2a97634</a>),
closes <a
href="https://redirect.github.com/axios/axios/issues/5924">#5924</a></li>
<li><strong>types:</strong> extend AxiosResponse interface to include
custom headers type (<a
href="https://redirect.github.com/axios/axios/issues/6782">#6782</a>)
(<a
href="7960d34ede">7960d34</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li><!-- raw HTML omitted --> <a
href="https://github.com/WillianAgostini" title="+132/-16760
([#7002](https://github.com/axios/axios/issues/7002)
[#5926](https://github.com/axios/axios/issues/5926)
[#6782](https://github.com/axios/axios/issues/6782) )">Willian
Agostini</a></li>
<li><!-- raw HTML omitted --> <a
href="https://github.com/DigitalBrainJS" title="+4263/-293
([#7006](https://github.com/axios/axios/issues/7006)
[#7003](https://github.com/axios/axios/issues/7003) )">Dmitriy
Mozgovoy</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/mkhani01"
title="+111/-15 ([#6982](https://github.com/axios/axios/issues/6982)
)">khani</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/AmeerAssadi"
title="+123/-0 ([#7011](https://github.com/axios/axios/issues/7011)
)">Ameer Assadi</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/emiedonmokumo"
title="+55/-35 ([#6998](https://github.com/axios/axios/issues/6998)
)">Emiedonmokumo Dick-Boro</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/opsysdebug"
title="+8/-8 ([#6980](https://github.com/axios/axios/issues/6980)
)">Zeroday BYTE</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/axios/axios/blob/v1.x/CHANGELOG.md">axios's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/axios/axios/compare/v1.12.1...v1.12.2">1.12.2</a>
(2025-09-14)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>fetch:</strong> use current global fetch instead of cached
one when env fetch is not specified to keep MSW support; (<a
href="https://redirect.github.com/axios/axios/issues/7030">#7030</a>)
(<a
href="cf78825e12">cf78825</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li><!-- raw HTML omitted --> <a
href="https://github.com/DigitalBrainJS" title="+247/-16
([#7030](https://github.com/axios/axios/issues/7030)
[#7022](https://github.com/axios/axios/issues/7022)
[#7024](https://github.com/axios/axios/issues/7024) )">Dmitriy
Mozgovoy</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/noritaka1166"
title="+2/-6 ([#7028](https://github.com/axios/axios/issues/7028)
[#7029](https://github.com/axios/axios/issues/7029) )">Noritaka
Kobayashi</a></li>
</ul>
<h2><a
href="https://github.com/axios/axios/compare/v1.12.0...v1.12.1">1.12.1</a>
(2025-09-12)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>types:</strong> fixed env config types; (<a
href="https://redirect.github.com/axios/axios/issues/7020">#7020</a>)
(<a
href="b5f26b75bd">b5f26b7</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li><!-- raw HTML omitted --> <a
href="https://github.com/DigitalBrainJS" title="+10/-4
([#7020](https://github.com/axios/axios/issues/7020) )">Dmitriy
Mozgovoy</a></li>
</ul>
<h1><a
href="https://github.com/axios/axios/compare/v1.11.0...v1.12.0">1.12.0</a>
(2025-09-11)</h1>
<h3>Bug Fixes</h3>
<ul>
<li>adding build artifacts (<a
href="9ec86de257">9ec86de</a>)</li>
<li>dont add dist on release (<a
href="a2edc3606a">a2edc36</a>)</li>
<li><strong>fetch-adapter:</strong> set correct Content-Type for Node
FormData (<a
href="https://redirect.github.com/axios/axios/issues/6998">#6998</a>)
(<a
href="a9f47afbf3">a9f47af</a>)</li>
<li><strong>node:</strong> enforce maxContentLength for data: URLs (<a
href="https://redirect.github.com/axios/axios/issues/7011">#7011</a>)
(<a
href="945435fc51">945435f</a>)</li>
<li>package exports (<a
href="https://redirect.github.com/axios/axios/issues/5627">#5627</a>)
(<a
href="aa78ac23fc">aa78ac2</a>)</li>
<li><strong>params:</strong> removing '[' and ']' from URL encode
exclude characters (<a
href="https://redirect.github.com/axios/axios/issues/3316">#3316</a>)
(<a
href="https://redirect.github.com/axios/axios/issues/5715">#5715</a>)
(<a
href="6d84189349">6d84189</a>)</li>
<li>release pr run (<a
href="fd7f404488">fd7f404</a>)</li>
<li><strong>types:</strong> change the type guard on isCancel (<a
href="https://redirect.github.com/axios/axios/issues/5595">#5595</a>)
(<a
href="0dbb7fd4f6">0dbb7fd</a>)</li>
</ul>
<h3>Features</h3>
<ul>
<li><strong>adapter:</strong> surface low‑level network error details;
attach original error via cause (<a
href="https://redirect.github.com/axios/axios/issues/6982">#6982</a>)
(<a
href="78b290c57c">78b290c</a>)</li>
<li><strong>fetch:</strong> add fetch, Request, Response env config
variables for the adapter; (<a
href="https://redirect.github.com/axios/axios/issues/7003">#7003</a>)
(<a
href="c959ff2901">c959ff2</a>)</li>
<li>support reviver on JSON.parse (<a
href="https://redirect.github.com/axios/axios/issues/5926">#5926</a>)
(<a
href="2a9763426e">2a97634</a>),
closes <a
href="https://redirect.github.com/axios/axios/issues/5924">#5924</a></li>
<li><strong>types:</strong> extend AxiosResponse interface to include
custom headers type (<a
href="https://redirect.github.com/axios/axios/issues/6782">#6782</a>)
(<a
href="7960d34ede">7960d34</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li><!-- raw HTML omitted --> <a
href="https://github.com/WillianAgostini" title="+132/-16760
([#7002](https://github.com/axios/axios/issues/7002)
[#5926](https://github.com/axios/axios/issues/5926)
[#6782](https://github.com/axios/axios/issues/6782) )">Willian
Agostini</a></li>
<li><!-- raw HTML omitted --> <a
href="https://github.com/DigitalBrainJS" title="+4263/-293
([#7006](https://github.com/axios/axios/issues/7006)
[#7003](https://github.com/axios/axios/issues/7003) )">Dmitriy
Mozgovoy</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/mkhani01"
title="+111/-15 ([#6982](https://github.com/axios/axios/issues/6982)
)">khani</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e5a33366d7"><code>e5a3336</code></a>
chore(release): v1.12.2 (<a
href="https://redirect.github.com/axios/axios/issues/7031">#7031</a>)</li>
<li><a
href="38726c7586"><code>38726c7</code></a>
refactor: change if in else to else if (<a
href="https://redirect.github.com/axios/axios/issues/7028">#7028</a>)</li>
<li><a
href="cf78825e12"><code>cf78825</code></a>
fix(fetch): use current global fetch instead of cached one when env
fetch is ...</li>
<li><a
href="c26d00f451"><code>c26d00f</code></a>
refactor: remove redundant assignment (<a
href="https://redirect.github.com/axios/axios/issues/7029">#7029</a>)</li>
<li><a
href="9fb41a8fcd"><code>9fb41a8</code></a>
chore(ci): add local HTTP server for Karma tests; (<a
href="https://redirect.github.com/axios/axios/issues/7022">#7022</a>)</li>
<li><a
href="19f9f36850"><code>19f9f36</code></a>
docs(readme): add custom fetch section; (<a
href="https://redirect.github.com/axios/axios/issues/7024">#7024</a>)</li>
<li><a
href="3cac78c2de"><code>3cac78c</code></a>
chore(release): v1.12.1 (<a
href="https://redirect.github.com/axios/axios/issues/7021">#7021</a>)</li>
<li><a
href="b5f26b75bd"><code>b5f26b7</code></a>
fix(types): fixed env config types; (<a
href="https://redirect.github.com/axios/axios/issues/7020">#7020</a>)</li>
<li><a
href="0d8ad6e1de"><code>0d8ad6e</code></a>
chore(release): v1.12.0 (<a
href="https://redirect.github.com/axios/axios/issues/7013">#7013</a>)</li>
<li><a
href="fd7f404488"><code>fd7f404</code></a>
fix: release pr run</li>
<li>Additional commits viewable in <a
href="https://github.com/axios/axios/compare/v1.11.0...v1.12.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=axios&package-manager=npm_and_yarn&previous-version=1.11.0&new-version=1.12.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/googleapis/genai-toolbox/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-24 17:32:17 +00:00
Dave Borowitz
816dbce268 feat(serverless-spark): Add serverless-spark source with list_batches tool
Built as a thin wrapper over the official Google Cloud Dataproc Go
client library, with support for filtering and pagination.
2025-10-23 20:40:52 -07:00
nester-neo4j
f475da63ce feat(neo4j): Add dry_run parameter to validate Cypher queries (#1769)
This pull request adds support for a new `dry_run` mode to the Neo4j
Cypher execution tool, allowing users to validate queries and view
execution plans without running them. It also sets a custom user agent
for Neo4j connections and improves error handling and documentation. The
most important changes are grouped below.

### New dry run feature for Cypher execution

* Added an optional `dry_run` boolean parameter to the
`neo4j-execute-cypher` tool, allowing users to validate Cypher queries
and receive execution plan details without running the query. The tool
now prepends `EXPLAIN` to the query when `dry_run` is true and returns a
structured summary of the execution plan.
[[1]](diffhunk://#diff-de7fdd7e68c95ea9813c704a89fffb8fd6de34e81b43a484623fdff7683e18f3L87-R93)
[[2]](diffhunk://#diff-de7fdd7e68c95ea9813c704a89fffb8fd6de34e81b43a484623fdff7683e18f3R155-R188)
[[3]](diffhunk://#diff-de7fdd7e68c95ea9813c704a89fffb8fd6de34e81b43a484623fdff7683e18f3R219-R236)
[[4]](diffhunk://#diff-1dca93fc9450e9b9ea64bc1ae02774c3198ea6f8310b2437815bd1a5eae11e79L30-R32)
* Updated integration tests to cover the new `dry_run` functionality,
including successful dry runs, error handling for invalid syntax, and
enforcement of read-only mode.
[[1]](diffhunk://#diff-b07de4a304bc72964b5de9481cbc6aec6cf9bb9dabd903a837eb8974e7100a90R163-R169)
[[2]](diffhunk://#diff-b07de4a304bc72964b5de9481cbc6aec6cf9bb9dabd903a837eb8974e7100a90R250-R291)

### Improved error handling

* Enhanced error messages for parameter casting in the tool's `Invoke`
method to clarify issues with input parameters.

### Neo4j driver configuration

* Set a custom user agent (`genai-toolbox/neo4j-source`) for Neo4j
driver connections to help identify requests from this tool.
[[1]](diffhunk://#diff-3f0444add0913f1722d678118ffedc70039cca3603f31c9927c06be5e00ffb29R24-R29)
[[2]](diffhunk://#diff-3f0444add0913f1722d678118ffedc70039cca3603f31c9927c06be5e00ffb29L109-R113)

### Documentation updates

* Updated the documentation to describe the new `dry_run` parameter and
its usage for query validation.

---------

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-10-23 15:22:13 -07:00
Mend Renovate
eb04e0d595 chore(deps): update module github.com/redis/go-redis/v9 to v9.16.0 (#1778)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[github.com/redis/go-redis/v9](https://redirect.github.com/redis/go-redis)
| `v9.14.1` -> `v9.16.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fredis%2fgo-redis%2fv9/v9.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fredis%2fgo-redis%2fv9/v9.14.1/v9.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>redis/go-redis (github.com/redis/go-redis/v9)</summary>

###
[`v9.16.0`](https://redirect.github.com/redis/go-redis/releases/tag/v9.16.0):
9.16.0

[Compare
Source](https://redirect.github.com/redis/go-redis/compare/v9.15.1...v9.16.0)

#### 🚀 Highlights

##### Maintenance Notifications Support

This release introduces comprehensive support for Redis maintenance
notifications, enabling applications to handle server maintenance events
gracefully. The new `maintnotifications` package provides:

- **RESP3 Push Notifications**: Full support for Redis RESP3 protocol
push notifications
- **Connection Handoff**: Automatic connection migration during server
maintenance with configurable retry policies and circuit breakers
- **Graceful Degradation**: Configurable timeout relaxation during
maintenance windows to prevent false failures
- **Event-Driven Architecture**: Background workers with on-demand
scaling for efficient handoff processing

For detailed usage examples and configuration options, see the
[maintenance notifications
documentation](https://redirect.github.com/redis/go-redis/tree/master/maintnotifications).

####  New Features

- **Trace Filtering**: Add support for filtering traces for specific
commands, including pipeline operations and dial operations
([#&#8203;3519](https://redirect.github.com/redis/go-redis/pull/3519),
[#&#8203;3550](https://redirect.github.com/redis/go-redis/pull/3550))
  - New `TraceCmdFilter` option to selectively trace commands
- Reduces overhead by excluding high-frequency or low-value commands
from traces

#### 🐛 Bug Fixes

- **Pipeline Error Handling**: Fix issue where pipeline repeatedly sets
the same error
([#&#8203;3525](https://redirect.github.com/redis/go-redis/pull/3525))
- **Connection Pool**: Ensure re-authentication does not interfere with
connection handoff operations
([#&#8203;3547](https://redirect.github.com/redis/go-redis/pull/3547))

#### 🔧 Improvements

- **Hash Commands**: Update hash command implementations
([#&#8203;3523](https://redirect.github.com/redis/go-redis/pull/3523))
- **OpenTelemetry**: Use `metric.WithAttributeSet` to avoid unnecessary
attribute copying in redisotel
([#&#8203;3552](https://redirect.github.com/redis/go-redis/pull/3552))

#### 📚 Documentation

- **Cluster Client**: Add explanation for why `MaxRetries` is disabled
for `ClusterClient`
([#&#8203;3551](https://redirect.github.com/redis/go-redis/pull/3551))

#### 🧪 Testing & Infrastructure

- **E2E Testing**: Upgrade E2E testing framework with improved
reliability and coverage
([#&#8203;3541](https://redirect.github.com/redis/go-redis/pull/3541))
- **Release Process**: Improved resiliency of the release process
([#&#8203;3530](https://redirect.github.com/redis/go-redis/pull/3530))

#### 📦 Dependencies

- Bump `rojopolis/spellcheck-github-actions` from 0.51.0 to 0.52.0
([#&#8203;3520](https://redirect.github.com/redis/go-redis/pull/3520))
- Bump `github/codeql-action` from 3 to 4
([#&#8203;3544](https://redirect.github.com/redis/go-redis/pull/3544))

#### 👥 Contributors

We'd like to thank all the contributors who worked on this release!

[@&#8203;ndyakov](https://redirect.github.com/ndyakov),
[@&#8203;htemelski-redis](https://redirect.github.com/htemelski-redis),
[@&#8203;Sovietaced](https://redirect.github.com/Sovietaced),
[@&#8203;Udhayarajan](https://redirect.github.com/Udhayarajan),
[@&#8203;boekkooi-impossiblecloud](https://redirect.github.com/boekkooi-impossiblecloud),
[@&#8203;Pika-Gopher](https://redirect.github.com/Pika-Gopher),
[@&#8203;cxljs](https://redirect.github.com/cxljs),
[@&#8203;huiyifyj](https://redirect.github.com/huiyifyj),
[@&#8203;omid-h70](https://redirect.github.com/omid-h70)

***

**Full Changelog**:
<https://github.com/redis/go-redis/compare/v9.14.0...v9.16.0>

###
[`v9.15.1`](https://redirect.github.com/redis/go-redis/releases/tag/v9.15.1):
Retract v9.15.0 and v9.15.1

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTYuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE1Ni4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-10-23 14:52:05 -07:00
Ajaykumar Yadav
7a88161f02 feat(server): Expand init logs to list names of sources,toolsets,tools,authservices (#1117)
Description
Expanded init/startup logs
<img width="2248" height="291" alt="image"
src="https://github.com/user-attachments/assets/026d0382-a752-4b8f-b5fd-ba59a8d9e8cf"
/>

Related issue(s)
fixed: https://github.com/googleapis/genai-toolbox/issues/1089

Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-23 17:01:11 -04:00
release-please[bot]
3ca58b1349 chore(main): release 0.18.0 (#1719)
🤖 I have created a release *beep* *boop*
---


##
[0.18.0](https://github.com/googleapis/genai-toolbox/compare/v0.17.0...v0.18.0)
(2025-10-23)


### Features

* Support `allowedValues`, `escape`, `minValue` and `maxValue` for
parameters
([#1770](https://github.com/googleapis/genai-toolbox/issues/1770))
([eaf7740](eaf77406fd))
* **tools/looker:** Tools to allow the agent to retrieve, create,
modify, and delete LookML project files.
([#1673](https://github.com/googleapis/genai-toolbox/issues/1673))
([089081f](089081feb0))


### Bug Fixes

* **sources/mysql:** Escape mysql user agent
([#1707](https://github.com/googleapis/genai-toolbox/issues/1707))
([eeb694c](eeb694c20f))
* **sources/mysql:** Escape program_name for MySQL
([#1717](https://github.com/googleapis/genai-toolbox/issues/1717))
([02f7f8a](02f7f8af97))
* **tools/http:** Allow 2xx status code on tool invocation
([#1761](https://github.com/googleapis/genai-toolbox/issues/1761))
([a06d0d8](a06d0d8735))
* **tools/http:** Omit optional nil query parameters
([#1762](https://github.com/googleapis/genai-toolbox/issues/1762))
([bd16ba3](bd16ba3921))
* **tools/looker:** Looker file content calls should not use
url.QueryEscape
([#1758](https://github.com/googleapis/genai-toolbox/issues/1758))
([336de1b](336de1bd04))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-23 18:14:44 +00:00
Wenxin Du
72a94c083e ci: add v0.18.0 docs version (#1775) 2025-10-23 17:48:34 +00:00
Wenxin Du
d95bbb58cd chore: release 0.18.0 (#1776)
Release-As: 0.18.0
2025-10-23 13:33:52 -04:00
Wenxin Du
bd16ba3921 fix(tools/http): omit optional nil query parameters (#1762)
🛠️ Fixes https://github.com/googleapis/genai-toolbox/issues/1737
2025-10-23 02:56:12 +00:00
Yuan Teoh
eaf77406fd feat: support allowedValues, escape, minValue and maxValue for parameters (#1770)
## Description

To minimize SQL injection risks when using template parameters, it is
highly recommended that user utilizes the following added fields for
parameters.

### Allow user to indicate allowed values via list or regex
Add new `allowedValues` field to all parameter type. It can be used as
follows (can be used in the `parameter` field or `templateParameter`
field):

```
templateParameters:
    - name: tableName
       type: string
       description: table name.
       allowedValues:
            - flights_table
            - tickets_table
            - "^h.*" # support any words starting with the letter h
```

### Support escaping delimiters for identifiers in string parameters
Supporting `backticks`, `double-quotes`, `single-quotes`,
`square-brackets` as escaping delimiters. Example to apply escaping
delimiters:
```
# other fields
statement: SELECT {{array .columnName}} FROM {{ .tableName }}
templateParameters:
      - name: tableName
        type: string
        description: table name.
        escape: double-quotes
      - name: columnName
        type: array
        description: column names.
        items:
          name: column
          type: string
          description: Name of the column to select
          escape: double-quotes
```
This example will resolve to following: - 
* Data provided: `{"tableName": "table_name", "columnName": ["foo",
"bar"]}`
* Statement with escape: `SELECT "foo", "bar" FROM "table_name"`
* Statement without escape: `SELECT foo, bar FROM table_name`

Escaping delimiters can be used for identifiers (in template parameters)
or string literals. If `allowedValues` were used, Toolbox will check for
allowed values before applying delimiters.

### Support value range in numeric parameters
Supporting `minValue` and `maxValue` for parameters of type `integer`
and `float`. Example:
```
parameters:
      - name: price
        type: integer
        description: price of item
        minValue: 1
        maxValue: 50
```

If `allowedValues` were used, Toolbox will check for allowed values
before checking for min and max values.

### References


| parameter name | type | required | description |
|------------------|-----|---------|-------------|
| allowedValues | []string | true | We will check input value against
this. User can either provide a list of allowed values or regex string.
|
| escape | string | false | Only available for type `string`. Indicate
the escaping delimiters used for the parameter. This field is intended
to be used with templateParameters. Must be one of "single-quotes",
"double-quotes", "backticks", "square-brackets". |
| minValue | int or float | false | Only available for type `integer`
and `float`. Indicate the minimum value allowed. |
| maxValue | int or float | false | Only available for type `integer`
and `float`. Indicate the maximum value allowed. |

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #779
2025-10-22 22:36:53 -04:00
Wenxin Du
a06d0d8735 fix(tools/http): allow 2xx status code on tool invocation (#1761)
🛠️ Fixes https://github.com/googleapis/genai-toolbox/issues/1759
2025-10-22 20:15:59 +00:00
Mend Renovate
2b2bb36771 chore(deps): update module golang.org/x/oauth2 to v0.32.0 (#1657)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
| golang.org/x/oauth2 | `v0.31.0` -> `v0.32.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/golang.org%2fx%2foauth2/v0.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/golang.org%2fx%2foauth2/v0.31.0/v0.32.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQxLjEzMS45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-22 12:17:56 -07:00
Dr. Strangelove
336de1bd04 fix(tools/looker): looker file content calls should not use url.QueryEscape (#1758)
## Description

The file_path parameter for the get_project_file and delete_project_file
calls should not be url encoded.
2025-10-21 18:29:38 +00:00
Mend Renovate
5010a69a0e chore(deps): update module cloud.google.com/go/firestore to v1.20.0 (#1740)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[cloud.google.com/go/firestore](https://redirect.github.com/googleapis/google-cloud-go)
| `v1.19.0` -> `v1.20.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/cloud.google.com%2fgo%2ffirestore/v1.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/cloud.google.com%2fgo%2ffirestore/v1.19.0/v1.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
2025-10-20 21:25:18 -07:00
Mend Renovate
9b95dd9cbc chore(deps): update module github.com/redis/go-redis/v9 to v9.14.1 (#1736)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[github.com/redis/go-redis/v9](https://redirect.github.com/redis/go-redis)
| `v9.14.0` -> `v9.14.1` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fredis%2fgo-redis%2fv9/v9.14.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fredis%2fgo-redis%2fv9/v9.14.0/v9.14.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>redis/go-redis (github.com/redis/go-redis/v9)</summary>

###
[`v9.14.1`](https://redirect.github.com/redis/go-redis/releases/tag/v9.14.1):
9.14.1

[Compare
Source](https://redirect.github.com/redis/go-redis/compare/v9.14.0...v9.14.1)

#### Changes

- fix(otel): Add support for filtering traces for certain commands
([#&#8203;3519](https://redirect.github.com/redis/go-redis/pull/3519))
- fix(pool): remove conn from idleConns if present
([#&#8203;3546](https://redirect.github.com/redis/go-redis/pull/3546))

#### Contributors

We'd like to thank all the contributors who worked on this release!

[@&#8203;Sovietaced](https://redirect.github.com/Sovietaced),
[@&#8203;ndyakov](https://redirect.github.com/ndyakov)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-10-20 20:52:35 -07:00
Mend Renovate
40e8192ffa chore(deps): update module modernc.org/sqlite to v1.39.1 (#1700)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
| [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) | `v1.39.0` ->
`v1.39.1` |
[![age](https://developer.mend.io/api/mc/badges/age/go/modernc.org%2fsqlite/v1.39.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/modernc.org%2fsqlite/v1.39.0/v1.39.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>cznic/sqlite (modernc.org/sqlite)</summary>

###
[`v1.39.1`](https://gitlab.com/cznic/sqlite/compare/v1.39.0...v1.39.1)

[Compare
Source](https://gitlab.com/cznic/sqlite/compare/v1.39.0...v1.39.1)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-10-20 20:30:18 -07:00
Dr. Strangelove
089081feb0 feat(tools/looker): Tools to allow the agent to retrieve, create, modify, and delete LookML project files. (#1673)
## Description

- **looker-dev-mode:** Turn dev mode on or off for the session.
- **looker-get-projects:** Retrieve the list of LookML projects on the
server.
- **looker-get-project-files:** Retrieve the list of LookML project
files in a project.
- **looker-get-project-file:** Get the contents of a LookML project
file.
- **looker-create-project-file:** Create a new LookML project file.
- **looker-update-project-file:** Modify a LookML project file.
- **looker-delete-project-file:** Delete a LookML project file.
2025-10-20 14:47:44 -04:00
gRedHeadphone
4976461056 chore(docs): Improve notes inside details tags in README (#1591)
## Description

### before:

<img height="500" alt="image"
src="https://github.com/user-attachments/assets/3f63fece-d4cc-4353-9670-4cdb691f0eb8"
/>

### after:

<img height="500" alt="image"
src="https://github.com/user-attachments/assets/7df982fd-a08f-4c47-b40d-474f50bc73a4"
/>


## PR Checklist

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-10-17 16:12:13 +00:00
Averi Kitsch
c91eca9b54 chore: add gemini cli extension configuration (#1727)
## Description

Create a Gemini CLI extension for the repo to recommend other
extensions.

Notes
* Since the repo has releases. The new release will trigger an extension
update rather than a version update in the JSON.
* MCP-TOOLBOX-EXTENSION.md is used in order to keep GEMINI.md free for
the project context.

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [ ] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>

---------

Co-authored-by: Kurtis Van Gent <31518063+kurtisvg@users.noreply.github.com>
2025-10-16 22:18:08 +00:00
Averi Kitsch
0e9ba8d8a5 ci: Update blunderbuss.yml for OOO (#1726)
## Description

> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [ ] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>
2025-10-16 14:39:55 -07:00
Mend Renovate
530f1cc406 chore(deps): update dependency llama-index-llms-google-genai to v0.6.1 (#1562)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
| llama-index-llms-google-genai | `==0.6.0` -> `==0.6.1` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/llama-index-llms-google-genai/0.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/llama-index-llms-google-genai/0.6.0/0.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQxLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Harsh Jha <83023263+rapid-killer-9@users.noreply.github.com>
Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-16 16:55:22 -04:00
Mend Renovate
612ed10d4f chore(deps): update github.com/googleapis/mcp-toolbox-sdk-go digest to eae3dce (#1720)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[github.com/googleapis/mcp-toolbox-sdk-go](https://redirect.github.com/googleapis/mcp-toolbox-sdk-go)
| require | digest | `5bb8a29` -> `eae3dce` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
2025-10-16 18:05:25 +00:00
Mend Renovate
67726e68bd chore(deps): update module google.golang.org/genai to v1.31.0 (#1662)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[google.golang.org/genai](https://redirect.github.com/googleapis/go-genai)
| `v1.28.0` -> `v1.31.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/google.golang.org%2fgenai/v1.31.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/google.golang.org%2fgenai/v1.28.0/v1.31.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>googleapis/go-genai (google.golang.org/genai)</summary>

###
[`v1.31.0`](https://redirect.github.com/googleapis/go-genai/releases/tag/v1.31.0)

[Compare
Source](https://redirect.github.com/googleapis/go-genai/compare/v1.30.0...v1.31.0)

##### Features

- support CreateEmebddings in batches.go
([a488476](a488476053))
- Support video extension for Veo on Gemini Developer API
([14ecba9](14ecba9e08))

###
[`v1.30.0`](https://redirect.github.com/googleapis/go-genai/releases/tag/v1.30.0)

[Compare
Source](https://redirect.github.com/googleapis/go-genai/compare/v1.29.0...v1.30.0)

##### Features

- Enable Google Maps tool for Genai.
([9aba5c7](9aba5c7ee9))
- Support enableWidget feature in GoogleMaps
([cd1e6b7](cd1e6b7b1b))
- Support Gemini batch inline request's metadata and add test coverage
to safety setting
([f12f353](f12f353005))

###
[`v1.29.0`](https://redirect.github.com/googleapis/go-genai/releases/tag/v1.29.0)

[Compare
Source](https://redirect.github.com/googleapis/go-genai/compare/v1.28.0...v1.29.0)

##### Features

- Add labels field to Imagen configs
([d01fe5e](d01fe5e157))
- Add utility methods for creating `FunctionResponsePart` and creating
FunctionResponse `Part` with `FunctionResponseParts`
([10de2ab](10de2ab112))
- Enable Ingredients to Video and Advanced Controls for Veo on Gemini
Developer API (Early Access Program)
([3165554](31655546a8))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: dishaprakash <57954147+dishaprakash@users.noreply.github.com>
2025-10-16 07:10:51 +05:30
Averi Kitsch
eeb694c20f fix: escape mysql user agent (#1707)
## Description

> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [ ] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #1695
2025-10-15 21:30:37 +00:00
Averi Kitsch
b4798be572 docs: Update branding for Apache Cassandra (#1661)
## Description

---
Brand Manager mentioned the first mention should use prefix Apache.

## PR Checklist

---
> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [ ] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>
2025-10-15 21:08:16 +00:00
Averi Kitsch
02f7f8af97 fix: escape program_name for MySQL (#1717)
## Description

> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [ ] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>
2025-10-15 20:54:08 +00:00
Wenxin Du
9c722537a8 docs: remove Oracle OIC requirement (#1718) 2025-10-15 19:37:12 +00:00
Mend Renovate
81764530f3 chore(deps): update github.com/googleapis/mcp-toolbox-sdk-go digest to 5bb8a29 (#1706)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[github.com/googleapis/mcp-toolbox-sdk-go](https://redirect.github.com/googleapis/mcp-toolbox-sdk-go)
| require | digest | `f99f1ed` -> `5bb8a29` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
2025-10-16 00:28:11 +05:30
Anmol Shukla
a1a4278789 docs: updated genkit sample code and readme code for Go (#1655) 2025-10-14 00:38:39 +05:30
Mend Renovate
a917b63ab7 chore(deps): update module github.com/openai/openai-go to v3 (#1698)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[github.com/openai/openai-go](https://redirect.github.com/openai/openai-go)
| `v1.12.0` -> `v3.3.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fopenai%2fopenai-go/v3.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fopenai%2fopenai-go/v1.12.0/v3.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>openai/openai-go (github.com/openai/openai-go)</summary>

###
[`v3.3.0`](https://redirect.github.com/openai/openai-go/releases/tag/v3.3.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v3.2.0...v3.3.0)

#### 3.3.0 (2025-10-10)

Full Changelog:
[v3.2.0...v3.3.0](https://redirect.github.com/openai/openai-\[go/compare/v3.2.0...v3.3.0]\(https://www.golinks.io/compare/v3.2.0...v3.3.0?trackSource=github\))

##### Features

- **api:** comparison filter in/not in
([d6daca0](d6daca0eed\)))

###
[`v3.2.0`](https://redirect.github.com/openai/openai-go/releases/tag/v3.2.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v3.1.0...v3.2.0)

#### 3.2.0 (2025-10-06)

Full Changelog:
[v3.1.0...v3.2.0](https://redirect.github.com/openai/openai-\[go/compare/v3.1.0...v3.2.0]\(https://www.golinks.io/compare/v3.1.0...v3.2.0?trackSource=github\))

##### Features

- **api:** dev day 2025 launches
([d40a768](d40a7689c7\)))

###
[`v3.1.0`](https://redirect.github.com/openai/openai-go/releases/tag/v3.1.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v3.0.1...v3.1.0)

#### 3.1.0 (2025-10-02)

Full Changelog:
[v3.0.1...v3.1.0](https://redirect.github.com/openai/openai-\[go/compare/v3.0.1...v3.1.0]\(https://www.golinks.io/compare/v3.0.1...v3.1.0?trackSource=github\))

##### Features

- **api:** add support for realtime calls
([565ca67](565ca67872\)))

###
[`v3.0.1`](https://redirect.github.com/openai/openai-go/releases/tag/v3.0.1)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v3.0.0...v3.0.1)

#### 3.0.1 (2025-10-01)

Full Changelog:
[v3.0.0...v3.0.1](https://redirect.github.com/openai/openai-\[go/compare/v3.0.0...v3.0.1]\(https://www.golinks.io/compare/v3.0.0...v3.0.1?trackSource=github\))

##### Bug Fixes

- **api:** add status, approval\_request\_id to MCP tool call
([a7f95e4](a7f95e4ef4\)))

###
[`v3.0.0`](https://redirect.github.com/openai/openai-go/releases/tag/v3.0.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.7.1...v3.0.0)

#### 3.0.0 (2025-09-30)

Full Changelog:
[v2.7.1...v3.0.0](https://redirect.github.com/openai/openai-\[go/compare/v2.7.1...v3.0.0]\(https://www.golinks.io/compare/v2.7.1...v3.0.0?trackSource=github\))

##### ⚠ BREAKING CHANGES

- **api:** `ResponseFunctionToolCallOutputItem.output` and
`ResponseCustomToolCallOutput.output` now return `string |
Array<ResponseInputText | ResponseInputImage | ResponseInputFile>`
instead of `string` only. This may break existing callsites that assume
`output` is always a string.

##### Features

- **api:** Support images and files for function call outputs in
responses, BatchUsage
([21901ef](21901ef84e\)))

###
[`v2.7.1`](https://redirect.github.com/openai/openai-go/releases/tag/v2.7.1)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.7.0...v2.7.1)

#### 2.7.1 (2025-09-29)

Full Changelog:
[v2.7.0...v2.7.1](https://redirect.github.com/openai/openai-go/compare/v2.7.0...v2.7.1)

##### Bug Fixes

- bugfix for setting JSON keys with special characters
([f9ae028](f9ae0283fe))

###
[`v2.7.0`](https://redirect.github.com/openai/openai-go/releases/tag/v2.7.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.6.1...v2.7.0)

#### 2.7.0 (2025-09-23)

Full Changelog:
[v2.6.1...v2.7.0](https://redirect.github.com/openai/openai-\[go/compare/v2.6.1...v2.7.0]\(https://www.golinks.io/compare/v2.6.1...v2.7.0?trackSource=github\))

##### Features

- **api:** gpt-5-codex
([b0eac3e](b0eac3ed2b\)))

###
[`v2.6.1`](https://redirect.github.com/openai/openai-go/releases/tag/v2.6.1)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.6.0...v2.6.1)

#### 2.6.1 (2025-09-22)

Full Changelog:
[v2.6.0...v2.6.1](https://redirect.github.com/openai/openai-go/compare/v2.6.0...v2.6.1)

##### Bug Fixes

- **api:** fix mcp tool name
([6de601a](6de601aa71))
- use slices.Concat instead of sometimes modifying r.Options
([7312ee7](7312ee73ef))

##### Chores

- **api:** openapi updates for conversations
([4a7d204](4a7d204a4e))
- bump minimum go version to 1.22
([8396ab5](8396ab5d91))
- do not install brew dependencies in ./scripts/bootstrap by default
([d519b81](d519b81000))
- update more docs for 1.22
([1b0514d](1b0514df95))

###
[`v2.6.0`](https://redirect.github.com/openai/openai-go/releases/tag/v2.6.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.5.0...v2.6.0)

#### 2.6.0 (2025-09-19)

Full Changelog:
[v2.5.0...v2.6.0](https://redirect.github.com/openai/openai-go/compare/v2.5.0...v2.6.0)

##### Features

- **api:** add reasoning\_text
([6ebf50d](6ebf50d756))

###
[`v2.5.0`](https://redirect.github.com/openai/openai-go/releases/tag/v2.5.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.4.3...v2.5.0)

#### 2.5.0 (2025-09-17)

Full Changelog:
[v2.4.3...v2.5.0](https://redirect.github.com/openai/openai-\[go/compare/v2.4.3...v2.5.0]\(https://www.golinks.io/compare/v2.4.3...v2.5.0?trackSource=github\))

##### Features

- **api:** type updates for conversations, reasoning\_effort and results
for evals
([3e68a60](3e68a60d76\)))

###
[`v2.4.3`](https://redirect.github.com/openai/openai-go/releases/tag/v2.4.3)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.4.2...v2.4.3)

#### 2.4.3 (2025-09-15)

Full Changelog:
[v2.4.2...v2.4.3](https://redirect.github.com/openai/openai-\[go/compare/v2.4.2...v2.4.3]\(https://www.golinks.io/compare/v2.4.2...v2.4.3?trackSource=github\))

##### Chores

- **api:** docs and spec refactoring
([e67af66](e67af66b35\)))

###
[`v2.4.2`](https://redirect.github.com/openai/openai-go/releases/tag/v2.4.2)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.4.1...v2.4.2)

#### 2.4.2 (2025-09-12)

Full Changelog:
[v2.4.1...v2.4.2](https://redirect.github.com/openai/openai-go/compare/v2.4.1...v2.4.2)

##### Chores

- **api:** Minor docs and type updates for realtime
([d92ea48](d92ea4850f))

###
[`v2.4.1`](https://redirect.github.com/openai/openai-go/releases/tag/v2.4.1)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.4.0...v2.4.1)

#### 2.4.1 (2025-09-10)

Full Changelog:
[v2.4.0...v2.4.1](https://redirect.github.com/openai/openai-\[go/compare/v2.4.0...v2.4.1]\(https://www.golinks.io/compare/v2.4.0...v2.4.1?trackSource=github\))

##### Chores

- **api:** fix realtime GA types
([012b83e](012b83e3fa\)))

###
[`v2.4.0`](https://redirect.github.com/openai/openai-go/releases/tag/v2.4.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.3.1...v2.4.0)

#### 2.4.0 (2025-09-08)

Full Changelog:
[v2.3.1...v2.4.0](https://redirect.github.com/openai/openai-go/compare/v2.3.1...v2.4.0)

##### Features

- **api:** ship the RealtimeGA API shape
([2b6c6db](2b6c6db63e))

###
[`v2.3.1`](https://redirect.github.com/openai/openai-go/releases/tag/v2.3.1)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.3.0...v2.3.1)

#### 2.3.1 (2025-09-05)

Full Changelog:
[v2.3.0...v2.3.1](https://redirect.github.com/openai/openai-\[go/compare/v2.3.0...v2.3.1]\(https://www.golinks.io/compare/v2.3.0...v2.3.1?trackSource=github\))

##### Bug Fixes

- **internal:** unmarshal correctly when there are multiple
discriminators
([98596b2](98596b2183\)))

###
[`v2.3.0`](https://redirect.github.com/openai/openai-go/releases/tag/v2.3.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.2.2...v2.3.0)

#### 2.3.0 (2025-09-03)

Full Changelog:
[v2.2.2...v2.3.0](https://redirect.github.com/openai/openai-\[go/compare/v2.2.2...v2.3.0]\(https://www.golinks.io/compare/v2.2.2...v2.3.0?trackSource=github\))

##### Features

- **api:** Add gpt-realtime models
([3cf6a34](3cf6a34841\)))

###
[`v2.2.2`](https://redirect.github.com/openai/openai-go/releases/tag/v2.2.2)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.2.1...v2.2.2)

#### 2.2.2 (2025-09-02)

Full Changelog:
[v2.2.1...v2.2.2](https://redirect.github.com/openai/openai-go/compare/v2.2.1...v2.2.2)

##### Bug Fixes

- update url to refresh pkg.go.dev
([edf94ce](edf94ce95a))
- use release please annotations on more places
([2ff82f9](2ff82f98ae))

###
[`v2.2.1`](https://redirect.github.com/openai/openai-go/releases/tag/v2.2.1)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.2.0...v2.2.1)

#### 2.2.1 (2025-09-02)

Full Changelog:
[v2.2.0...v2.2.1](https://redirect.github.com/openai/openai-\[go/compare/v2.2.0...v2.2.1]\(https://www.golinks.io/compare/v2.2.0...v2.2.1?trackSource=github\))

##### Chores

- **api:** manual updates for ResponseInputAudio
([8c0ebe5](8c0ebe566f\)))

###
[`v2.2.0`](https://redirect.github.com/openai/openai-go/releases/tag/v2.2.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.1.1...v2.2.0)

#### 2.2.0 (2025-09-02)

Full Changelog:
[v2.1.1...v2.2.0](https://redirect.github.com/openai/openai-go/compare/v2.1.1...v2.2.0)

##### Features

- **api:** Add connectors support for MCP tool
([35888bc](35888bcd26))
- **api:** add web search filters
([6f2c71d](6f2c71d4e2))
- **api:** adding support for /v1/conversations to the API
([5b7c31b](5b7c31bde9))
- **api:** realtime API updates
([130fc8e](130fc8ea5b))
- **client:** add support for verifying signatures on incoming webhooks
([f7c8dbb](f7c8dbb6b5))

##### Bug Fixes

- **azure:** compatibility with edit image endpoint
([#&#8203;477](https://redirect.github.com/openai/openai-go/issues/477))
([d156eec](d156eeca37))
- close body before retrying
([8dfed35](8dfed35f11))

##### Chores

- **internal/ci:** setup breaking change detection
([0af0cd0](0af0cd0130))
- **internal:** version bump
([3265795](3265795fff))

###
[`v2.1.1`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#220-2025-09-02)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.1.0...v2.1.1)

Full Changelog:
[v2.1.1...v2.2.0](https://redirect.github.com/openai/openai-go/compare/v2.1.1...v2.2.0)

##### Features

- **api:** Add connectors support for MCP tool
([35888bc](35888bcd26))
- **api:** add web search filters
([6f2c71d](6f2c71d4e2))
- **api:** adding support for /v1/conversations to the API
([5b7c31b](5b7c31bde9))
- **api:** realtime API updates
([130fc8e](130fc8ea5b))
- **client:** add support for verifying signatures on incoming webhooks
([f7c8dbb](f7c8dbb6b5))

##### Bug Fixes

- **azure:** compatibility with edit image endpoint
([#&#8203;477](https://redirect.github.com/openai/openai-go/issues/477))
([d156eec](d156eeca37))
- close body before retrying
([8dfed35](8dfed35f11))

##### Chores

- **internal/ci:** setup breaking change detection
([0af0cd0](0af0cd0130))
- **internal:** version bump
([3265795](3265795fff))

###
[`v2.1.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#211-2025-08-20)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.0.2...v2.1.0)

Full Changelog:
[v2.1.0...v2.1.1](https://redirect.github.com/openai/openai-go/compare/v2.1.0...v2.1.1)

##### Chores

- **api:** accurately represent shape for verbosity on Chat Completions
([f81197b](f81197b4b0))

###
[`v2.0.2`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#210-2025-08-18)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.0.1...v2.0.2)

Full Changelog:
[v2.0.2...v2.1.0](https://redirect.github.com/openai/openai-go/compare/v2.0.2...v2.1.0)

##### Features

- **api:** add new text parameters, expiration options
([323154c](323154ccec))

##### Documentation

- give https its missing "h" in Azure OpenAI REST API link
([#&#8203;480](https://redirect.github.com/openai/openai-go/issues/480))
([8a401c9](8a401c9eec))

###
[`v2.0.1`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#202-2025-08-09)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.0.0...v2.0.1)

Full Changelog:
[v2.0.1...v2.0.2](https://redirect.github.com/openai/openai-go/compare/v2.0.1...v2.0.2)

##### Chores

- **internal:** update comment in script
([4be24de](4be24dee6a))
- update
[@&#8203;stainless-api/prism-cli](https://redirect.github.com/stainless-api/prism-cli)
to v5.15.0
([eca22af](eca22af6f1))

###
[`v2.0.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#201-2025-08-08)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v1.12.0...v2.0.0)

Full Changelog:
[v2.0.0...v2.0.1](https://redirect.github.com/openai/openai-go/compare/v2.0.0...v2.0.1)

##### Bug Fixes

- **client:** fix verbosity parameter location in Responses
([6e2e903](6e2e903e7c))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-10-13 09:53:49 -07:00
dishaprakash
72bcbf2ced chore(docs): Add concurrency group to docs deployment workflows (#1696)
## Description

This PR adds a concurrency group to both the in-development docs and
versioned docs deployment workflows.
On the 0.17.0 release, both the workflows were run at the same time
causing a deployment issue and the second workflow (versioned doc
deploy) to fail (due to a git push error as they are both attempting to
push into the versioned-gh-pages branch). This PR adds both the
workflows into the same concurrency group to make sure the first
deployment is completed before running the second one.

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>
2025-10-12 23:33:10 +05:30
Mend Renovate
02154581c3 chore(deps): update module github.com/openai/openai-go to v3 (#1606)
This PR contains the following updates:

| Package | Change | Age | Confidence |
|---|---|---|---|
|
[github.com/openai/openai-go](https://redirect.github.com/openai/openai-go)
| `v1.12.0` -> `v3.0.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fopenai%2fopenai-go/v3.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fopenai%2fopenai-go/v1.12.0/v3.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>openai/openai-go (github.com/openai/openai-go)</summary>

###
[`v3.0.0`](https://redirect.github.com/openai/openai-go/releases/tag/v3.0.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.7.1...v3.0.0)

#### 3.0.0 (2025-09-30)

Full Changelog:
[v2.7.1...v3.0.0](https://redirect.github.com/openai/openai-\[go/compare/v2.7.1...v3.0.0]\(https://www.golinks.io/compare/v2.7.1...v3.0.0?trackSource=github\))

##### ⚠ BREAKING CHANGES

- **api:** `ResponseFunctionToolCallOutputItem.output` and
`ResponseCustomToolCallOutput.output` now return `string |
Array<ResponseInputText | ResponseInputImage | ResponseInputFile>`
instead of `string` only. This may break existing callsites that assume
`output` is always a string.

##### Features

- **api:** Support images and files for function call outputs in
responses, BatchUsage
([21901ef](21901ef84e\)))

###
[`v2.7.1`](https://redirect.github.com/openai/openai-go/releases/tag/v2.7.1)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.7.0...v2.7.1)

#### 2.7.1 (2025-09-29)

Full Changelog:
[v2.7.0...v2.7.1](https://redirect.github.com/openai/openai-go/compare/v2.7.0...v2.7.1)

##### Bug Fixes

- bugfix for setting JSON keys with special characters
([f9ae028](f9ae0283fe))

###
[`v2.7.0`](https://redirect.github.com/openai/openai-go/releases/tag/v2.7.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.6.1...v2.7.0)

#### 2.7.0 (2025-09-23)

Full Changelog:
[v2.6.1...v2.7.0](https://redirect.github.com/openai/openai-\[go/compare/v2.6.1...v2.7.0]\(https://www.golinks.io/compare/v2.6.1...v2.7.0?trackSource=github\))

##### Features

- **api:** gpt-5-codex
([b0eac3e](b0eac3ed2b\)))

###
[`v2.6.1`](https://redirect.github.com/openai/openai-go/releases/tag/v2.6.1)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.6.0...v2.6.1)

#### 2.6.1 (2025-09-22)

Full Changelog:
[v2.6.0...v2.6.1](https://redirect.github.com/openai/openai-go/compare/v2.6.0...v2.6.1)

##### Bug Fixes

- **api:** fix mcp tool name
([6de601a](6de601aa71))
- use slices.Concat instead of sometimes modifying r.Options
([7312ee7](7312ee73ef))

##### Chores

- **api:** openapi updates for conversations
([4a7d204](4a7d204a4e))
- bump minimum go version to 1.22
([8396ab5](8396ab5d91))
- do not install brew dependencies in ./scripts/bootstrap by default
([d519b81](d519b81000))
- update more docs for 1.22
([1b0514d](1b0514df95))

###
[`v2.6.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#261-2025-09-22)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.5.0...v2.6.0)

Full Changelog:
[v2.6.0...v2.6.1](https://redirect.github.com/openai/openai-go/compare/v2.6.0...v2.6.1)

##### Bug Fixes

- **api:** fix mcp tool name
([6de601a](6de601aa71))
- use slices.Concat instead of sometimes modifying r.Options
([7312ee7](7312ee73ef))

##### Chores

- **api:** openapi updates for conversations
([4a7d204](4a7d204a4e))
- bump minimum go version to 1.22
([8396ab5](8396ab5d91))
- do not install brew dependencies in ./scripts/bootstrap by default
([d519b81](d519b81000))
- update more docs for 1.22
([1b0514d](1b0514df95))

###
[`v2.5.0`](https://redirect.github.com/openai/openai-go/releases/tag/v2.5.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.4.3...v2.5.0)

#### 2.5.0 (2025-09-17)

Full Changelog:
[v2.4.3...v2.5.0](https://redirect.github.com/openai/openai-\[go/compare/v2.4.3...v2.5.0]\(https://www.golinks.io/compare/v2.4.3...v2.5.0?trackSource=github\))

##### Features

- **api:** type updates for conversations, reasoning\_effort and results
for evals
([3e68a60](3e68a60d76\)))

###
[`v2.4.3`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#250-2025-09-17)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.4.2...v2.4.3)

Full Changelog:
[v2.4.3...v2.5.0](https://redirect.github.com/openai/openai-go/compare/v2.4.3...v2.5.0)

##### Features

- **api:** type updates for conversations, reasoning\_effort and results
for evals
([3e68a60](3e68a60d76))

###
[`v2.4.2`](https://redirect.github.com/openai/openai-go/releases/tag/v2.4.2)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.4.1...v2.4.2)

#### 2.4.2 (2025-09-12)

Full Changelog:
[v2.4.1...v2.4.2](https://redirect.github.com/openai/openai-go/compare/v2.4.1...v2.4.2)

##### Chores

- **api:** Minor docs and type updates for realtime
([d92ea48](d92ea4850f))

###
[`v2.4.1`](https://redirect.github.com/openai/openai-go/releases/tag/v2.4.1)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.4.0...v2.4.1)

#### 2.4.1 (2025-09-10)

Full Changelog:
[v2.4.0...v2.4.1](https://redirect.github.com/openai/openai-\[go/compare/v2.4.0...v2.4.1]\(https://www.golinks.io/compare/v2.4.0...v2.4.1?trackSource=github\))

##### Chores

- **api:** fix realtime GA types
([012b83e](012b83e3fa\)))

###
[`v2.4.0`](https://redirect.github.com/openai/openai-go/releases/tag/v2.4.0)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.3.1...v2.4.0)

#### 2.4.0 (2025-09-08)

Full Changelog:
[v2.3.1...v2.4.0](https://redirect.github.com/openai/openai-go/compare/v2.3.1...v2.4.0)

##### Features

- **api:** ship the RealtimeGA API shape
([2b6c6db](2b6c6db63e))

###
[`v2.3.1`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#240-2025-09-08)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.3.0...v2.3.1)

Full Changelog:
[v2.3.1...v2.4.0](https://redirect.github.com/openai/openai-go/compare/v2.3.1...v2.4.0)

##### Features

- **api:** ship the RealtimeGA API shape
([2b6c6db](2b6c6db63e))

###
[`v2.3.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#231-2025-09-05)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.2.2...v2.3.0)

Full Changelog:
[v2.3.0...v2.3.1](https://redirect.github.com/openai/openai-go/compare/v2.3.0...v2.3.1)

##### Bug Fixes

- **internal:** unmarshal correctly when there are multiple
discriminators
([98596b2](98596b2183))

###
[`v2.2.2`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#230-2025-09-03)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.2.1...v2.2.2)

Full Changelog:
[v2.2.2...v2.3.0](https://redirect.github.com/openai/openai-go/compare/v2.2.2...v2.3.0)

##### Features

- **api:** Add gpt-realtime models
([3cf6a34](3cf6a34841))

###
[`v2.2.1`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#222-2025-09-02)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.2.0...v2.2.1)

Full Changelog:
[v2.2.1...v2.2.2](https://redirect.github.com/openai/openai-go/compare/v2.2.1...v2.2.2)

##### Bug Fixes

- update url to refresh pkg.go.dev
([edf94ce](edf94ce95a))
- use release please annotations on more places
([2ff82f9](2ff82f98ae))

###
[`v2.2.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#221-2025-09-02)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.1.1...v2.2.0)

Full Changelog:
[v2.2.0...v2.2.1](https://redirect.github.com/openai/openai-go/compare/v2.2.0...v2.2.1)

##### Chores

- **api:** manual updates for ResponseInputAudio
([8c0ebe5](8c0ebe566f))

###
[`v2.1.1`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#220-2025-09-02)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.1.0...v2.1.1)

Full Changelog:
[v2.1.1...v2.2.0](https://redirect.github.com/openai/openai-go/compare/v2.1.1...v2.2.0)

##### Features

- **api:** Add connectors support for MCP tool
([35888bc](35888bcd26))
- **api:** add web search filters
([6f2c71d](6f2c71d4e2))
- **api:** adding support for /v1/conversations to the API
([5b7c31b](5b7c31bde9))
- **api:** realtime API updates
([130fc8e](130fc8ea5b))
- **client:** add support for verifying signatures on incoming webhooks
([f7c8dbb](f7c8dbb6b5))

##### Bug Fixes

- **azure:** compatibility with edit image endpoint
([#&#8203;477](https://redirect.github.com/openai/openai-go/issues/477))
([d156eec](d156eeca37))
- close body before retrying
([8dfed35](8dfed35f11))

##### Chores

- **internal/ci:** setup breaking change detection
([0af0cd0](0af0cd0130))
- **internal:** version bump
([3265795](3265795fff))

###
[`v2.1.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#211-2025-08-20)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.0.2...v2.1.0)

Full Changelog:
[v2.1.0...v2.1.1](https://redirect.github.com/openai/openai-go/compare/v2.1.0...v2.1.1)

##### Chores

- **api:** accurately represent shape for verbosity on Chat Completions
([f81197b](f81197b4b0))

###
[`v2.0.2`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#210-2025-08-18)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.0.1...v2.0.2)

Full Changelog:
[v2.0.2...v2.1.0](https://redirect.github.com/openai/openai-go/compare/v2.0.2...v2.1.0)

##### Features

- **api:** add new text parameters, expiration options
([323154c](323154ccec))

##### Documentation

- give https its missing "h" in Azure OpenAI REST API link
([#&#8203;480](https://redirect.github.com/openai/openai-go/issues/480))
([8a401c9](8a401c9eec))

###
[`v2.0.1`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#202-2025-08-09)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v2.0.0...v2.0.1)

Full Changelog:
[v2.0.1...v2.0.2](https://redirect.github.com/openai/openai-go/compare/v2.0.1...v2.0.2)

##### Chores

- **internal:** update comment in script
([4be24de](4be24dee6a))
- update
[@&#8203;stainless-api/prism-cli](https://redirect.github.com/stainless-api/prism-cli)
to v5.15.0
([eca22af](eca22af6f1))

###
[`v2.0.0`](https://redirect.github.com/openai/openai-go/blob/HEAD/CHANGELOG.md#201-2025-08-08)

[Compare
Source](https://redirect.github.com/openai/openai-go/compare/v1.12.0...v2.0.0)

Full Changelog:
[v2.0.0...v2.0.1](https://redirect.github.com/openai/openai-go/compare/v2.0.0...v2.0.1)

##### Bug Fixes

- **client:** fix verbosity parameter location in Responses
([6e2e903](6e2e903e7c))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQxLjEzMS45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Averi Kitsch <akitsch@google.com>
Co-authored-by: Anmol Shukla <shuklaanmol@google.com>
Co-authored-by: dishaprakash <57954147+dishaprakash@users.noreply.github.com>
2025-10-11 14:14:19 +05:30
Wenxin Du
f073232505 docs: fix yugabytedb doc location (#1651) 2025-10-10 21:49:01 +00:00
Averi Kitsch
0ae9ff49b1 docs: update architecture diagram (#1688)
## Description

> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [ ] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>
2025-10-10 21:32:22 +00:00
release-please[bot]
de19d520ad chore(main): release 0.17.0 (#1682)
🤖 I have created a release *beep* *boop*
---


##
[0.17.0](https://github.com/googleapis/genai-toolbox/compare/v0.16.0...v0.17.0)
(2025-10-10)


### ⚠ BREAKING CHANGES

* **tools/bigquery-get-table-info:** add allowed dataset support
([#1093](https://github.com/googleapis/genai-toolbox/issues/1093))
* **tool/bigquery-list-dataset-ids:** add allowed datasets support
([#1573](https://github.com/googleapis/genai-toolbox/issues/1573))

### Features

* Add configs and workflows for docs versioning
([#1611](https://github.com/googleapis/genai-toolbox/issues/1611))
([21ac98b](21ac98bc06))
* Add metadata in MCP Manifest for Toolbox auth
([#1395](https://github.com/googleapis/genai-toolbox/issues/1395))
([0b3dac4](0b3dac4132))
* Add program name to MySQL connections
([#1617](https://github.com/googleapis/genai-toolbox/issues/1617))
([c4a22b8](c4a22b8d3b))
* **oracle:** Switch Oracle driver from godror to go-ora
([#1685](https://github.com/googleapis/genai-toolbox/issues/1685))
([8faf376](8faf37667e))
* **source/bigquery:** Add optional write mode config
([#1157](https://github.com/googleapis/genai-toolbox/issues/1157))
([63adc78](63adc78bea))
* **sources/alloydb,cloudsqlpg,cloudsqlmysql,cloudsqlmssql:** Support
PSC connection
([#1686](https://github.com/googleapis/genai-toolbox/issues/1686))
([9d2bf79](9d2bf79bec))
* **sources/mssql:** Add app name to MSSQL
([#1620](https://github.com/googleapis/genai-toolbox/issues/1620))
([1536d1f](1536d1fdab))
* **sources/oracle:** Add Oracle Source and Tool
([#1456](https://github.com/googleapis/genai-toolbox/issues/1456))
([3a19a50](3a19a50ff2))
* **tool/bigquery-list-dataset-ids:** Add allowed datasets support
([#1573](https://github.com/googleapis/genai-toolbox/issues/1573))
([1a44c67](1a44c671ec))
* **tools/bigquery-get-table-info:** Add allowed dataset support
([#1093](https://github.com/googleapis/genai-toolbox/issues/1093))
([acb205c](acb205ca47))
* **tools/dataform:** Add dataform compile tool
([#1470](https://github.com/googleapis/genai-toolbox/issues/1470))
([3be9b7b](3be9b7b3bd))
* **tools/looker:** Add support for pulse, vacuum and analyze audit and
performance functions on a Looker instance
([#1581](https://github.com/googleapis/genai-toolbox/issues/1581))
([5aed4e1](5aed4e136d))
* **tools/looker:** Enable access to the Conversational Analytics API
for Looker
([#1596](https://github.com/googleapis/genai-toolbox/issues/1596))
([2d5a93e](2d5a93e312))


### Bug Fixes

* Added google_ml_integration extension to use alloydb ai-nl support api
([#1445](https://github.com/googleapis/genai-toolbox/issues/1445))
([dbc477a](dbc477ab0f))
* Fix broken links
([#1625](https://github.com/googleapis/genai-toolbox/issues/1625))
([36c6584](36c658472c))
* Remove duplicated build type in Dockerfile
([#1598](https://github.com/googleapis/genai-toolbox/issues/1598))
([b43c945](b43c94575d))
* **source/bigquery:** Allowed datasets project id issue with client
oauth ([#1663](https://github.com/googleapis/genai-toolbox/issues/1663))
([f4cf486](f4cf486fa9))
* **sources/looker:** Allow Looker to be configured without setting a
Client Id or Secret
([#1496](https://github.com/googleapis/genai-toolbox/issues/1496))
([67d8221](67d8221a2e))
* **tools/looker:** Refactor run-inline-query logic to helper function
([#1497](https://github.com/googleapis/genai-toolbox/issues/1497))
([62af39d](62af39d751))
* **tools/mysql-list-tables:** Update sql query to resolve subquery
scope error
([#1629](https://github.com/googleapis/genai-toolbox/issues/1629))
([94e19d8](94e19d87e5))


### Miscellaneous Chores

* Release 0.17.0
([#1676](https://github.com/googleapis/genai-toolbox/issues/1676))
([7e22cb4](7e22cb455d))
* Release 0.17.0
([#1681](https://github.com/googleapis/genai-toolbox/issues/1681))
([18c92b5](18c92b51ab))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-10-10 16:34:23 -04:00
Wenxin Du
9d2bf79bec feat(sources/alloydb,cloudsqlpg,cloudsqlmysql,cloudsqlmssql): Support PSC connection (#1686)
Support PSC connection to these sources
2025-10-10 16:16:21 -04:00
Wenxin Du
8faf37667e feat(oracle): Switch Oracle driver from godror to go-ora (#1685)
This avoids CGO cross compilation.
- [godror](https://github.com/godror/godror) - depends on Oracle Client
Libraries & [requires C
compiler](https://github.com/godror/godror?tab=readme-ov-file#build-time-requirements)
- [ go-ora](https://github.com/sijms/go-ora) - pure Go driver
2025-10-10 16:00:15 -04:00
Wenxin Du
3851b3e8ec ci(tools/bigquerylistdatasetids): Make test independent of returned list order (#1687)
fix integration test
2025-10-10 15:11:19 -04:00
Mend Renovate
97895e7332 chore(deps): update github actions (#1546)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [actions/cache](https://redirect.github.com/actions/cache) | action |
digest | `0400d5f` -> `0057852` |
| [actions/checkout](https://redirect.github.com/actions/checkout) |
action | pinDigest | -> `08eba0b` |
| [actions/setup-node](https://redirect.github.com/actions/setup-node) |
action | pinDigest | -> `49933ea` |
|
[peaceiris/actions-gh-pages](https://redirect.github.com/peaceiris/actions-gh-pages)
| action | pinDigest | -> `4f9cc66` |
|
[peaceiris/actions-hugo](https://redirect.github.com/peaceiris/actions-hugo)
| action | pinDigest | -> `75d2e84` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/genai-toolbox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45Ny4xMCIsInVwZGF0ZWRJblZlciI6IjQxLjEzMS45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
2025-10-10 11:13:50 -04:00
Wenxin Du
18c92b51ab chore: release 0.17.0 (#1681)
Release-As: 0.17.0
2025-10-10 03:39:39 +00:00
208 changed files with 9278 additions and 859 deletions

View File

@@ -705,8 +705,8 @@ steps:
cassandra
- id: "oracle"
name: ghcr.io/oracle/oraclelinux8-instantclient:21
waitFor: ["install-dependencies"]
name: golang:1
waitFor: ["compile-test-binary"]
entrypoint: /bin/bash
env:
- "GOPATH=/gopath"
@@ -719,15 +719,29 @@ steps:
args:
- -c
- |
# Install the C compiler and Oracle SDK headers needed for cgo
dnf install -y gcc oracle-instantclient-devel
.ci/test_with_coverage.sh \
"Oracle" \
oracle \
oracle
# Install Go
curl -L -o go.tar.gz "https://go.dev/dl/go1.25.1.linux-amd64.tar.gz"
tar -C /usr/local -xzf go.tar.gz
export PATH="/usr/local/go/bin:$$PATH"
go test ./tests/oracle
- id: "serverless-spark"
name: golang:1
waitFor: ["compile-test-binary"]
entrypoint: /bin/bash
env:
- "GOPATH=/gopath"
- "SERVERLESS_SPARK_PROJECT=$PROJECT_ID"
- "SERVERLESS_SPARK_LOCATION=$_REGION"
secretEnv: ["CLIENT_ID"]
volumes:
- name: "go"
path: "/gopath"
args:
- -c
- |
.ci/test_with_coverage.sh \
"Serverless Spark" \
serverlessspark
availableSecrets:
secretManager:

View File

@@ -37,4 +37,5 @@ extraFiles: [
"docs/en/how-to/connect-ide/postgres_mcp.md",
"docs/en/how-to/connect-ide/neo4j_mcp.md",
"docs/en/how-to/connect-ide/sqlite_mcp.md",
"gemini-extension.json",
]

View File

@@ -4,7 +4,7 @@
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
@@ -35,9 +35,10 @@ jobs:
defaults:
run:
working-directory: .hugo
# This shared concurrency group ensures only one docs deployment runs at a time.
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
group: docs-deployment
cancel-in-progress: false
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
with:
@@ -50,12 +51,12 @@ jobs:
extended: true
- name: Setup Node
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6
with:
node-version: "22"
- name: Cache dependencies
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
@@ -81,4 +82,4 @@ jobs:
publish_dir: ./.hugo/staging
publish_branch: versioned-gh-pages
keep_files: true
commit_message: "deploy: ${{ github.event.head_commit.message }}"
commit_message: "deploy: ${{ github.event.head_commit.message }}"

View File

@@ -30,14 +30,14 @@ jobs:
steps:
- name: Checkout main branch (for latest templates and theme)
uses: actions/checkout@v4
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
with:
ref: 'main'
submodules: 'recursive'
fetch-depth: 0
- name: Checkout old content from tag into a temporary directory
uses: actions/checkout@v4
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
with:
ref: ${{ github.event.inputs.version_tag }}
path: 'old_version_source' # Checkout into a temp subdir
@@ -53,11 +53,11 @@ jobs:
mv ./old_version_source/docs docs
- name: Setup Hugo and Node
uses: peaceiris/actions-hugo@v3
uses: peaceiris/actions-hugo@75d2e84710de30f6ff7268e08f310b60ef14033f # v3
with:
hugo-version: "0.145.0"
extended: true
- uses: actions/setup-node@v4
- uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6
with:
node-version: "22"
@@ -73,7 +73,7 @@ jobs:
HUGO_RELATIVEURLS: false
- name: Deploy to gh-pages
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@4f9cc6602d3f66b9c108549d475ec49e8ef4d45e # v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: .hugo/public
@@ -94,7 +94,7 @@ jobs:
HUGO_RELATIVEURLS: false
- name: Deploy to root
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@4f9cc6602d3f66b9c108549d475ec49e8ef4d45e # v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: .hugo/public

View File

@@ -4,7 +4,7 @@
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
@@ -24,9 +24,13 @@ on:
jobs:
deploy:
runs-on: ubuntu-24.04
# This shared concurrency group ensures only one docs deployment runs at a time.
concurrency:
group: docs-deployment
cancel-in-progress: false
steps:
- name: Checkout Code at Tag
uses: actions/checkout@v4
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
with:
ref: ${{ github.event.release.tag_name }}
@@ -34,13 +38,13 @@ jobs:
run: echo "VERSION=${{ github.event.release.tag_name }}" >> $GITHUB_ENV
- name: Setup Hugo
uses: peaceiris/actions-hugo@v3
uses: peaceiris/actions-hugo@75d2e84710de30f6ff7268e08f310b60ef14033f # v3
with:
hugo-version: "0.145.0"
extended: true
- name: Setup Node
uses: actions/setup-node@v4
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6
with:
node-version: "22"
@@ -56,7 +60,7 @@ jobs:
HUGO_RELATIVEURLS: false
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@4f9cc6602d3f66b9c108549d475ec49e8ef4d45e # v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: .hugo/public
@@ -76,11 +80,11 @@ jobs:
HUGO_RELATIVEURLS: false
- name: Deploy to root
uses: peaceiris/actions-gh-pages@v4
uses: peaceiris/actions-gh-pages@4f9cc6602d3f66b9c108549d475ec49e8ef4d45e # v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: .hugo/public
publish_branch: versioned-gh-pages
keep_files: true
allow_empty_commit: true
commit_message: "deploy: docs to root for ${{ env.VERSION }}"
commit_message: "deploy: docs to root for ${{ env.VERSION }}"

View File

@@ -50,12 +50,12 @@ jobs:
extended: true
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6
with:
node-version: "22"
- name: Cache dependencies
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}

View File

@@ -62,12 +62,12 @@ jobs:
extended: true
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6
with:
node-version: "22"
- name: Cache dependencies
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}

View File

@@ -51,6 +51,10 @@ ignoreFiles = ["quickstart/shared", "quickstart/python", "quickstart/js", "quick
# Add a new version block here before every release
# The order of versions in this file is mirrored into the dropdown
[[params.versions]]
version = "v0.18.0"
url = "https://googleapis.github.io/genai-toolbox/v0.18.0/"
[[params.versions]]
version = "v0.17.0"
url = "https://googleapis.github.io/genai-toolbox/v0.17.0/"

View File

@@ -1,5 +1,58 @@
# Changelog
## [0.18.0](https://github.com/googleapis/genai-toolbox/compare/v0.17.0...v0.18.0) (2025-10-23)
### Features
* Support `allowedValues`, `escape`, `minValue` and `maxValue` for parameters ([#1770](https://github.com/googleapis/genai-toolbox/issues/1770)) ([eaf7740](https://github.com/googleapis/genai-toolbox/commit/eaf77406fd386c12315d67eb685dc69e0415c516))
* **tools/looker:** Tools to allow the agent to retrieve, create, modify, and delete LookML project files. ([#1673](https://github.com/googleapis/genai-toolbox/issues/1673)) ([089081f](https://github.com/googleapis/genai-toolbox/commit/089081feb0e32f9eb65d00df5987392d413a4081))
### Bug Fixes
* **sources/mysql:** Escape mysql user agent ([#1707](https://github.com/googleapis/genai-toolbox/issues/1707)) ([eeb694c](https://github.com/googleapis/genai-toolbox/commit/eeb694c20facc40a38bfa67073c4cb1f3dd657ff))
* **sources/mysql:** Escape program_name for MySQL ([#1717](https://github.com/googleapis/genai-toolbox/issues/1717)) ([02f7f8a](https://github.com/googleapis/genai-toolbox/commit/02f7f8af979057efe99fd138cb1b958130355b68))
* **tools/http:** Allow 2xx status code on tool invocation ([#1761](https://github.com/googleapis/genai-toolbox/issues/1761)) ([a06d0d8](https://github.com/googleapis/genai-toolbox/commit/a06d0d8735fbec29bea97457248845a8c6b4aa3c))
* **tools/http:** Omit optional nil query parameters ([#1762](https://github.com/googleapis/genai-toolbox/issues/1762)) ([bd16ba3](https://github.com/googleapis/genai-toolbox/commit/bd16ba3921e6177065780e5f29870859b8e18e4f))
* **tools/looker:** Looker file content calls should not use url.QueryEscape ([#1758](https://github.com/googleapis/genai-toolbox/issues/1758)) ([336de1b](https://github.com/googleapis/genai-toolbox/commit/336de1bd04b869d322c0fd1f4667eb652159d791))
## [0.17.0](https://github.com/googleapis/genai-toolbox/compare/v0.16.0...v0.17.0) (2025-10-10)
### ⚠ BREAKING CHANGES
* **tools/bigquery-get-table-info:** add allowed dataset support ([#1093](https://github.com/googleapis/genai-toolbox/issues/1093))
* **tools/bigquery-list-dataset-ids:** add allowed datasets support ([#1573](https://github.com/googleapis/genai-toolbox/issues/1573))
### Features
* Add configs and workflows for docs versioning ([#1611](https://github.com/googleapis/genai-toolbox/issues/1611)) ([21ac98b](https://github.com/googleapis/genai-toolbox/commit/21ac98bc065e95bde911d66185c67d8380891bf8))
* Add metadata in MCP Manifest for Toolbox auth ([#1395](https://github.com/googleapis/genai-toolbox/issues/1395)) ([0b3dac4](https://github.com/googleapis/genai-toolbox/commit/0b3dac41322f7aaa5a19df571686fa8fd4338ca5))
* Add program name to MySQL connections ([#1617](https://github.com/googleapis/genai-toolbox/issues/1617)) ([c4a22b8](https://github.com/googleapis/genai-toolbox/commit/c4a22b8d3bd0307325215ebd2f30ba37927cd37e))
* **source/bigquery:** Add optional write mode config ([#1157](https://github.com/googleapis/genai-toolbox/issues/1157)) ([63adc78](https://github.com/googleapis/genai-toolbox/commit/63adc78beae949dfe5e300c50e5ceef073e9652c))
* **sources/alloydb,cloudsqlpg,cloudsqlmysql,cloudsqlmssql:** Support PSC connection ([#1686](https://github.com/googleapis/genai-toolbox/issues/1686)) ([9d2bf79](https://github.com/googleapis/genai-toolbox/commit/9d2bf79becfda104ef77f34b8d4b22cbedbc4bf3))
* **sources/mssql:** Add app name to MSSQL ([#1620](https://github.com/googleapis/genai-toolbox/issues/1620)) ([1536d1f](https://github.com/googleapis/genai-toolbox/commit/1536d1fdabb9d7f73dbdeebeb05a83d9a3b78e1c))
* **sources/oracle:** Add Oracle Source and Tool ([#1456](https://github.com/googleapis/genai-toolbox/issues/1456)) ([3a19a50](https://github.com/googleapis/genai-toolbox/commit/3a19a50ff211e33429de1d05338d353359a52987))
* **sources/oracle:** Switch Oracle driver from godror to go-ora ([#1685](https://github.com/googleapis/genai-toolbox/issues/1685)) ([8faf376](https://github.com/googleapis/genai-toolbox/commit/8faf37667e371b4ed88ebb892e8784b67611ba64))
* **tool/bigquery-list-dataset-ids:** Add allowed datasets support ([#1573](https://github.com/googleapis/genai-toolbox/issues/1573)) ([1a44c67](https://github.com/googleapis/genai-toolbox/commit/1a44c671ec593e764a2d2f67f70a98ceec20a168))
* **tools/bigquery-get-table-info:** Add allowed dataset support ([#1093](https://github.com/googleapis/genai-toolbox/issues/1093)) ([acb205c](https://github.com/googleapis/genai-toolbox/commit/acb205ca4761d59ce97b804827230978c8c98ede))
* **tools/dataform:** Add dataform compile tool ([#1470](https://github.com/googleapis/genai-toolbox/issues/1470)) ([3be9b7b](https://github.com/googleapis/genai-toolbox/commit/3be9b7b3bdf112fe7303706e56e9f39935cde661))
* **tools/looker:** Add support for pulse, vacuum and analyze audit and performance functions on a Looker instance ([#1581](https://github.com/googleapis/genai-toolbox/issues/1581)) ([5aed4e1](https://github.com/googleapis/genai-toolbox/commit/5aed4e136d0091731d2ded10ec076ee789e1987c))
* **tools/looker:** Enable access to the Conversational Analytics API for Looker ([#1596](https://github.com/googleapis/genai-toolbox/issues/1596)) ([2d5a93e](https://github.com/googleapis/genai-toolbox/commit/2d5a93e312990c8a9f3170c7e9c655f97cf11712))
### Bug Fixes
* Added google_ml_integration extension to use alloydb ai-nl support api ([#1445](https://github.com/googleapis/genai-toolbox/issues/1445)) ([dbc477a](https://github.com/googleapis/genai-toolbox/commit/dbc477ab0f832495cf51f73ea16ae363472d6eed))
* Fix broken links ([#1625](https://github.com/googleapis/genai-toolbox/issues/1625)) ([36c6584](https://github.com/googleapis/genai-toolbox/commit/36c658472ccdeb6cddd8a4452a8b3438aeb0a744))
* Remove duplicated build type in Dockerfile ([#1598](https://github.com/googleapis/genai-toolbox/issues/1598)) ([b43c945](https://github.com/googleapis/genai-toolbox/commit/b43c94575d86aa65b0528d59f9b41d30b439fee5))
* **source/bigquery:** Allowed datasets project id issue with client oauth ([#1663](https://github.com/googleapis/genai-toolbox/issues/1663)) ([f4cf486](https://github.com/googleapis/genai-toolbox/commit/f4cf486fa929299fef076cf71689776e5dec19c1))
* **sources/looker:** Allow Looker to be configured without setting a Client Id or Secret ([#1496](https://github.com/googleapis/genai-toolbox/issues/1496)) ([67d8221](https://github.com/googleapis/genai-toolbox/commit/67d8221a2e780df54a81f0f7e8f7e41e4bf1a82e))
* **tools/looker:** Refactor run-inline-query logic to helper function ([#1497](https://github.com/googleapis/genai-toolbox/issues/1497)) ([62af39d](https://github.com/googleapis/genai-toolbox/commit/62af39d751443eb758586663969b162c868a233f))
* **tools/mysql-list-tables:** Update sql query to resolve subquery scope error ([#1629](https://github.com/googleapis/genai-toolbox/issues/1629)) ([94e19d8](https://github.com/googleapis/genai-toolbox/commit/94e19d87e54e831b80eb766572e48bc7370305d8))
## [0.16.0](https://github.com/googleapis/genai-toolbox/compare/v0.15.0...v0.16.0) (2025-09-25)

View File

@@ -156,6 +156,8 @@ go test -race -v ./...
* **Internal Contributors:** Testing workflows should trigger automatically.
* **External Contributors:** Request Toolbox maintainers to trigger the testing
workflows on your PR.
* Maintainers can comment `/gcbrun` to execute the integration tests.
* Maintainers can add the label `tests:run` to execute the unit tests.
#### Test Resources
@@ -183,6 +185,9 @@ variables for each source.
* Couchbase - setup in the test project via the Marketplace
* DGraph - using the public dgraph interface <https://play.dgraph.io> for
testing
* Looker
* The Cloud Build service account is a user for conversational analytics
* The Looker instance runs under google.com:looker-sandbox.
* Memorystore Redis - setup in the test project using a Memorystore for Redis
standalone instance
* Memorystore Redis Cluster, Memorystore Valkey standalone, and Memorystore
@@ -330,10 +335,16 @@ for instructions on developing Toolbox SDKs.
### Team
Team, `@googleapis/senseai-eco`, has been set as
Team `@googleapis/senseai-eco` has been set as
[CODEOWNERS](.github/CODEOWNERS). The GitHub TeamSync tool is used to create
this team from MDB Group, `senseai-eco`.
Team `@googleapis/toolbox-contributors` has write access to this repo. They
can create branches and approve test runs. But they do not have the ability
to approve PRs for main. TeamSync is used to create this team from the MDB
Group `toolbox-contributors`. Googlers who are developing for MCP-Toolbox
but aren't part of the core team should join this group.
### Releasing
Toolbox has two types of releases: versioned and continuous. It uses Google

189
MCP-TOOLBOX-EXTENSION.md Normal file
View File

@@ -0,0 +1,189 @@
This document helps you find and install the right Gemini CLI extension to interact with your databases.
## How to Install an Extension
To install any of the extensions listed below, use the `gemini extensions install` command followed by the extension's GitHub repository URL.
For complete instructions on finding, installing, and managing extensions, please see the [official Gemini CLI extensions documentation](https://github.com/google-gemini/gemini-cli/blob/main/docs/extensions/index.md).
**Example Installation Command:**
```bash
gemini extensions install https://github.com/gemini-cli-extensions/EXTENSION_NAME
```
Make sure the user knows:
* These commands are not supported from within the CLI
* These commands will only be reflected in active CLI sessions on restart
* Extensions require Application Default Credentials in your environment. See [Set up ADC for a local development environment](https://cloud.google.com/docs/authentication/set-up-adc-local-dev-environment) to learn how you can provide either your user credentials or service account credentials to ADC in a local development environment.
* Most extensions require you to set environment variables to connect to a database. If there is a link provided for the configuration, fetch the web page and return the configuration.
-----
## Find Your Database Extension
Find your database or service in the list below to get the correct installation command.
**Note on Observability:** Extensions with `-observability` in their name are designed to help you understand the health and performance of your database instances, often by analyzing metrics and logs.
### Google Cloud Managed Databases
#### BigQuery
* For data analytics and querying:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/bigquery-data-analytics
```
Configuration: https://github.com/gemini-cli-extensions/bigquery-data-analytics/tree/main?tab=readme-ov-file#configuration
* For conversational analytics (using natural language):
```bash
gemini extensions install https://github.com/gemini-cli-extensions/bigquery-conversational-analytics
```
Configuration: https://github.com/gemini-cli-extensions/bigquery-conversational-analytics/tree/main?tab=readme-ov-file#configuration
#### Cloud SQL for MySQL
* Main Extension:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/cloud-sql-mysql
```
Configuration: https://github.com/gemini-cli-extensions/cloud-sql-mysql/tree/main?tab=readme-ov-file#configuration
* Observability:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/cloud-sql-mysql-observability
```
If you are looking for self-hosted MySQL, consider the `mysql` extension.
#### Cloud SQL for PostgreSQL
* Main Extension:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/cloud-sql-postgresql
```
Configuration: https://github.com/gemini-cli-extensions/cloud-sql-postgresql/tree/main?tab=readme-ov-file#configuration
* Observability:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/cloud-sql-postgresql-observability
```
If you are looking for other PostgreSQL options, consider the `postgres` extension for self-hosted instances, or the `alloydb` extension for AlloyDB for PostgreSQL.
#### Cloud SQL for SQL Server
* Main Extension:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/cloud-sql-sqlserver
```
Configuration: https://github.com/gemini-cli-extensions/cloud-sql-sqlserver/tree/main?tab=readme-ov-file#configuration
* Observability:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/cloud-sql-sqlserver-observability
```
If you are looking for self-hosted SQL Server, consider the `sql-server` extension.
#### AlloyDB for PostgreSQL
* Main Extension:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/alloydb
```
Configuration: https://github.com/gemini-cli-extensions/alloydb/tree/main?tab=readme-ov-file#configuration
* Observability:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/alloydb-observability
```
If you are looking for other PostgreSQL options, consider the `postgres` extension for self-hosted instances, or the `cloud-sql-postgresql` extension for Cloud SQL for PostgreSQL.
#### Spanner
* For querying Spanner databases:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/spanner
```
Configuration: https://github.com/gemini-cli-extensions/spanner/tree/main?tab=readme-ov-file#configuration
#### Firestore
* For querying Firestore in Native Mode:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/firestore-native
```
Configuration: https://github.com/gemini-cli-extensions/firestore-native/tree/main?tab=readme-ov-file#configuration
### Other Google Cloud Data Services
#### Dataplex
* For interacting with Dataplex data lakes and assets:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/dataplex
```
Configuration: https://github.com/gemini-cli-extensions/dataplex/tree/main?tab=readme-ov-file#configuration
#### Looker
* For querying Looker instances:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/looker
```
Configuration: https://github.com/gemini-cli-extensions/looker/tree/main?tab=readme-ov-file#configuration
### Other Database Engines
These extensions are for connecting to database instances not managed by Cloud SQL (e.g., self-hosted on-prem, on a VM, or in another cloud).
* MySQL:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/mysql
```
Configuration: https://github.com/gemini-cli-extensions/mysql/tree/main?tab=readme-ov-file#configuration
If you are looking for Google Cloud managed MySQL, consider the `cloud-sql-mysql` extension.
* PostgreSQL:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/postgres
```
Configuration: https://github.com/gemini-cli-extensions/postgres/tree/main?tab=readme-ov-file#configuration
If you are looking for Google Cloud managed PostgreSQL, consider the `cloud-sql-postgresql` or `alloydb` extensions.
* SQL Server:
```bash
gemini extensions install https://github.com/gemini-cli-extensions/sql-server
```
Configuration: https://github.com/gemini-cli-extensions/sql-server/tree/main?tab=readme-ov-file#configuration
If you are looking for Google Cloud managed SQL Server, consider the `cloud-sql-sqlserver` extension.
### Custom Tools
#### MCP Toolbox
* For connecting to MCP Toolbox servers:
This extension can be used with any Google Cloud database to build custom tools. For more information, see the [MCP Toolbox documentation](https://googleapis.github.io/genai-toolbox/getting-started/introduction/).
```bash
gemini extensions install https://github.com/gemini-cli-extensions/mcp-toolbox
```
Configuration: https://github.com/gemini-cli-extensions/mcp-toolbox/tree/main?tab=readme-ov-file#configuration

View File

@@ -34,6 +34,7 @@ documentation](https://googleapis.github.io/genai-toolbox/).
- [Installing the server](#installing-the-server)
- [Running the server](#running-the-server)
- [Integrating your application](#integrating-your-application)
- [Using Toolbox with Gemini CLI Extensions](#using-toolbox-with-gemini-cli-extensions)
- [Configuration](#configuration)
- [Sources](#sources)
- [Tools](#tools)
@@ -121,7 +122,7 @@ To install Toolbox as a binary:
>
> ```sh
> # see releases page for other versions
> export VERSION=0.16.0
> export VERSION=0.18.0
> curl -L -o toolbox https://storage.googleapis.com/genai-toolbox/v$VERSION/linux/amd64/toolbox
> chmod +x toolbox
> ```
@@ -134,7 +135,7 @@ To install Toolbox as a binary:
>
> ```sh
> # see releases page for other versions
> export VERSION=0.16.0
> export VERSION=0.18.0
> curl -L -o toolbox https://storage.googleapis.com/genai-toolbox/v$VERSION/darwin/arm64/toolbox
> chmod +x toolbox
> ```
@@ -147,7 +148,7 @@ To install Toolbox as a binary:
>
> ```sh
> # see releases page for other versions
> export VERSION=0.16.0
> export VERSION=0.18.0
> curl -L -o toolbox https://storage.googleapis.com/genai-toolbox/v$VERSION/darwin/amd64/toolbox
> chmod +x toolbox
> ```
@@ -160,7 +161,7 @@ To install Toolbox as a binary:
>
> ```powershell
> # see releases page for other versions
> $VERSION = "0.16.0"
> $VERSION = "0.18.0"
> Invoke-WebRequest -Uri "https://storage.googleapis.com/genai-toolbox/v$VERSION/windows/amd64/toolbox.exe" -OutFile "toolbox.exe"
> ```
>
@@ -173,7 +174,7 @@ You can also install Toolbox as a container:
```sh
# see releases page for other versions
export VERSION=0.16.0
export VERSION=0.18.0
docker pull us-central1-docker.pkg.dev/database-toolbox/toolbox/toolbox:$VERSION
```
@@ -197,7 +198,7 @@ To install from source, ensure you have the latest version of
[Go installed](https://go.dev/doc/install), and then run the following command:
```sh
go install github.com/googleapis/genai-toolbox@v0.16.0
go install github.com/googleapis/genai-toolbox@v0.18.0
```
<!-- {x-release-please-end} -->
@@ -228,9 +229,9 @@ To run Toolbox from binary:
./toolbox --tools-file "tools.yaml"
```
**NOTE:**
Toolbox enables dynamic reloading by default. To disable, use the
`--disable-reload` flag.
> ⓘ Note
> Toolbox enables dynamic reloading by default. To disable, use the
> `--disable-reload` flag.
</details>
@@ -248,9 +249,9 @@ us-central1-docker.pkg.dev/database-toolbox/toolbox/toolbox:$VERSION \
--tools-file "/app/tools.yaml"
```
**NOTE:**
The `-v` flag mounts your local `tools.yaml` into the container, and `-p` maps
the container's port `5000` to your host's port `5000`.
> ⓘ Note
> The `-v` flag mounts your local `tools.yaml` into the container, and `-p` maps
> the container's port `5000` to your host's port `5000`.
</details>
@@ -265,11 +266,11 @@ and run:
go run .
```
**NOTE:**
This command runs the project from source, and is more suitable for development
and testing. It does **not** compile a binary into your `$GOPATH`. If you want
to compile a binary instead, refer the [Developer
Documentation](./DEVELOPER.md#building-the-binary).
> ⓘ Note
> This command runs the project from source, and is more suitable for development
> and testing. It does **not** compile a binary into your `$GOPATH`. If you want
> to compile a binary instead, refer the [Developer
> Documentation](./DEVELOPER.md#building-the-binary).
</details>
@@ -625,13 +626,11 @@ For more detailed instructions on using the Toolbox Core SDK, see the
package main
import (
"context"
"encoding/json"
"log"
"github.com/firebase/genkit/go/ai"
"github.com/firebase/genkit/go/genkit"
"github.com/googleapis/mcp-toolbox-sdk-go/core"
"github.com/googleapis/mcp-toolbox-sdk-go/tbgenkit"
"github.com/invopop/jsonschema"
)
func main() {
@@ -639,7 +638,7 @@ For more detailed instructions on using the Toolbox Core SDK, see the
// Update the url to point to your server
URL := "http://127.0.0.1:5000"
ctx := context.Background()
g, err := genkit.Init(ctx)
g := genkit.Init(ctx)
client, err := core.NewToolboxClient(URL)
@@ -652,6 +651,7 @@ For more detailed instructions on using the Toolbox Core SDK, see the
if err != nil {
log.Fatalf("Failed to convert tool: %v\n", err)
}
log.Printf("Successfully converted tool: %s", genkitTool.Name())
}
```
@@ -765,6 +765,51 @@ For more detailed instructions on using the Toolbox Core SDK, see the
</blockquote>
</details>
### Using Toolbox with Gemini CLI Extensions
[Gemini CLI extensions][gemini-cli-extensions] provide tools to interact
directly with your data sources from command line. Below is a list of Gemini CLI
extensions that are built on top of **Toolbox**. They allow you to interact with
your data sources through pre-defined or custom tools with natural language.
Click into the link to see detailed instructions on their usage.
To use **custom** tools with Gemini CLI:
- [MCP Toolbox](https://github.com/gemini-cli-extensions/mcp-toolbox)
To use [prebuilt tools][prebuilt] with Gemini CLI:
- [AlloyDB for PostgreSQL](https://github.com/gemini-cli-extensions/alloydb)
- [AlloyDB for PostgreSQL
Observability](https://github.com/gemini-cli-extensions/alloydb-observability)
- [BigQuery Data
Analytics](https://github.com/gemini-cli-extensions/bigquery-data-analytics)
- [BigQuery Conversational
Analytics](https://github.com/gemini-cli-extensions/bigquery-conversational-analytics)
- [Cloud SQL for
MySQL](https://github.com/gemini-cli-extensions/cloud-sql-mysql)
- [Cloud SQL for MySQL
Observability](https://github.com/gemini-cli-extensions/cloud-sql-mysql-observability)
- [Cloud SQL for
PostgreSQL](https://github.com/gemini-cli-extensions/cloud-sql-postgresql)
- [Cloud SQL for PostgreSQL
Observability](https://github.com/gemini-cli-extensions/cloud-sql-postgresql-observability)
- [Cloud SQL for SQL
Server](https://github.com/gemini-cli-extensions/cloud-sql-sqlserver)
- [Cloud SQL for SQL Server
Observability](https://github.com/gemini-cli-extensions/cloud-sql-sqlserver-observability)
- [Looker](https://github.com/gemini-cli-extensions/looker)
- [Dataplex](https://github.com/gemini-cli-extensions/dataplex)
- [MySQL](https://github.com/gemini-cli-extensions/mysql)
- [PostgreSQL](https://github.com/gemini-cli-extensions/postgres)
- [Spanner](https://github.com/gemini-cli-extensions/spanner)
- [Firestore](https://github.com/gemini-cli-extensions/firestore-native)
- [SQL Server](https://github.com/gemini-cli-extensions/sql-server)
[prebuilt]: https://googleapis.github.io/genai-toolbox/reference/prebuilt-tools/
[gemini-cli-extensions]:
https://github.com/google-gemini/gemini-cli/blob/main/docs/extensions/index.md
## Configuration
The primary way to configure Toolbox is through the `tools.yaml` file. If you

View File

@@ -98,7 +98,15 @@ 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/lookergetconnectiondatabases"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookergetconnections"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookergetconnectionschemas"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookergetconnectiontables"
_ "github.com/googleapis/genai-toolbox/internal/tools/looker/lookergetconnectiontablecolumns"
_ "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"
@@ -107,6 +115,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"
@@ -116,6 +127,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"
@@ -146,8 +158,11 @@ import (
_ "github.com/googleapis/genai-toolbox/internal/tools/postgres/postgreslistavailableextensions"
_ "github.com/googleapis/genai-toolbox/internal/tools/postgres/postgreslistinstalledextensions"
_ "github.com/googleapis/genai-toolbox/internal/tools/postgres/postgreslisttables"
_ "github.com/googleapis/genai-toolbox/internal/tools/postgres/postgreslistviews"
_ "github.com/googleapis/genai-toolbox/internal/tools/postgres/postgressql"
_ "github.com/googleapis/genai-toolbox/internal/tools/redis"
_ "github.com/googleapis/genai-toolbox/internal/tools/serverlessspark/serverlesssparkgetbatch"
_ "github.com/googleapis/genai-toolbox/internal/tools/serverlessspark/serverlesssparklistbatches"
_ "github.com/googleapis/genai-toolbox/internal/tools/spanner/spannerexecutesql"
_ "github.com/googleapis/genai-toolbox/internal/tools/spanner/spannerlisttables"
_ "github.com/googleapis/genai-toolbox/internal/tools/spanner/spannersql"
@@ -189,6 +204,7 @@ import (
_ "github.com/googleapis/genai-toolbox/internal/sources/oracle"
_ "github.com/googleapis/genai-toolbox/internal/sources/postgres"
_ "github.com/googleapis/genai-toolbox/internal/sources/redis"
_ "github.com/googleapis/genai-toolbox/internal/sources/serverlessspark"
_ "github.com/googleapis/genai-toolbox/internal/sources/spanner"
_ "github.com/googleapis/genai-toolbox/internal/sources/sqlite"
_ "github.com/googleapis/genai-toolbox/internal/sources/tidb"

View File

@@ -1254,6 +1254,7 @@ func TestPrebuiltTools(t *testing.T) {
cloudsqlpgobsvconfig, _ := prebuiltconfigs.Get("cloud-sql-postgres-observability")
cloudsqlmysqlobsvconfig, _ := prebuiltconfigs.Get("cloud-sql-mysql-observability")
cloudsqlmssqlobsvconfig, _ := prebuiltconfigs.Get("cloud-sql-mssql-observability")
serverless_spark_config, _ := prebuiltconfigs.Get("serverless-spark")
// Set environment variables
t.Setenv("API_KEY", "your_api_key")
@@ -1305,6 +1306,9 @@ func TestPrebuiltTools(t *testing.T) {
t.Setenv("CLOUD_SQL_MSSQL_PASSWORD", "your_cloudsql_mssql_password")
t.Setenv("CLOUD_SQL_POSTGRES_PASSWORD", "your_cloudsql_pg_password")
t.Setenv("SERVERLESS_SPARK_PROJECT", "your_gcp_project_id")
t.Setenv("SERVERLESS_SPARK_LOCATION", "your_gcp_location")
t.Setenv("POSTGRES_HOST", "localhost")
t.Setenv("POSTGRES_PORT", "5432")
t.Setenv("POSTGRES_DATABASE", "your_postgres_db")
@@ -1393,7 +1397,7 @@ func TestPrebuiltTools(t *testing.T) {
wantToolset: server.ToolsetConfigs{
"alloydb_postgres_database_tools": tools.ToolsetConfig{
Name: "alloydb_postgres_database_tools",
ToolNames: []string{"execute_sql", "list_tables", "list_active_queries", "list_available_extensions", "list_installed_extensions", "list_autovacuum_configurations", "list_memory_configurations", "list_top_bloated_tables", "list_replication_slots", "list_invalid_indexes", "get_query_plan"},
ToolNames: []string{"execute_sql", "list_tables", "list_active_queries", "list_available_extensions", "list_installed_extensions", "list_autovacuum_configurations", "list_memory_configurations", "list_top_bloated_tables", "list_replication_slots", "list_invalid_indexes", "get_query_plan", "list_views"},
},
},
},
@@ -1423,7 +1427,7 @@ func TestPrebuiltTools(t *testing.T) {
wantToolset: server.ToolsetConfigs{
"cloud_sql_postgres_database_tools": tools.ToolsetConfig{
Name: "cloud_sql_postgres_database_tools",
ToolNames: []string{"execute_sql", "list_tables", "list_active_queries", "list_available_extensions", "list_installed_extensions", "list_autovacuum_configurations", "list_memory_configurations", "list_top_bloated_tables", "list_replication_slots", "list_invalid_indexes", "get_query_plan"},
ToolNames: []string{"execute_sql", "list_tables", "list_active_queries", "list_available_extensions", "list_installed_extensions", "list_autovacuum_configurations", "list_memory_configurations", "list_top_bloated_tables", "list_replication_slots", "list_invalid_indexes", "get_query_plan", "list_views"},
},
},
},
@@ -1457,6 +1461,16 @@ func TestPrebuiltTools(t *testing.T) {
},
},
},
{
name: "serverless spark prebuilt tools",
in: serverless_spark_config,
wantToolset: server.ToolsetConfigs{
"serverless_spark_tools": tools.ToolsetConfig{
Name: "serverless_spark_tools",
ToolNames: []string{"list_batches", "get_batch"},
},
},
},
{
name: "firestore prebuilt tools",
in: firestoreconfig,
@@ -1493,7 +1507,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", "get_connections", "get_connection_schemas", "get_connection_databases", "get_connection_tables", "get_connection_table_columns"},
},
},
},
@@ -1513,7 +1527,7 @@ func TestPrebuiltTools(t *testing.T) {
wantToolset: server.ToolsetConfigs{
"postgres_database_tools": tools.ToolsetConfig{
Name: "postgres_database_tools",
ToolNames: []string{"execute_sql", "list_tables", "list_active_queries", "list_available_extensions", "list_installed_extensions", "list_autovacuum_configurations", "list_memory_configurations", "list_top_bloated_tables", "list_replication_slots", "list_invalid_indexes", "get_query_plan"},
ToolNames: []string{"execute_sql", "list_tables", "list_active_queries", "list_available_extensions", "list_installed_extensions", "list_autovacuum_configurations", "list_memory_configurations", "list_top_bloated_tables", "list_replication_slots", "list_invalid_indexes", "get_query_plan", "list_views"},
},
},
},
@@ -1611,3 +1625,72 @@ func TestPrebuiltTools(t *testing.T) {
})
}
}
func TestMutuallyExclusiveFlags(t *testing.T) {
testCases := []struct {
desc string
args []string
errString string
}{
{
desc: "--prebuilt and --tools-file",
args: []string{"--prebuilt", "alloydb", "--tools-file", "my.yaml"},
errString: "--prebuilt and --tools-file/--tools-files/--tools-folder flags cannot be used simultaneously",
},
{
desc: "--tools-file and --tools-files",
args: []string{"--tools-file", "my.yaml", "--tools-files", "a.yaml,b.yaml"},
errString: "--tools-file, --tools-files, and --tools-folder flags cannot be used simultaneously",
},
{
desc: "--tools-folder and --tools-files",
args: []string{"--tools-folder", "./", "--tools-files", "a.yaml,b.yaml"},
errString: "--tools-file, --tools-files, and --tools-folder flags cannot be used simultaneously",
},
}
for _, tc := range testCases {
t.Run(tc.desc, func(t *testing.T) {
cmd := NewCommand()
cmd.SetArgs(tc.args)
err := cmd.Execute()
if err == nil {
t.Fatalf("expected an error but got none")
}
if !strings.Contains(err.Error(), tc.errString) {
t.Errorf("expected error message to contain %q, but got %q", tc.errString, err.Error())
}
})
}
}
func TestFileLoadingErrors(t *testing.T) {
t.Run("non-existent tools-file", func(t *testing.T) {
cmd := NewCommand()
// Use a file that is guaranteed not to exist
nonExistentFile := filepath.Join(t.TempDir(), "non-existent-tools.yaml")
cmd.SetArgs([]string{"--tools-file", nonExistentFile})
err := cmd.Execute()
if err == nil {
t.Fatal("expected an error for non-existent file but got none")
}
if !strings.Contains(err.Error(), "unable to read tool file") {
t.Errorf("expected error about reading file, but got: %v", err)
}
})
t.Run("non-existent tools-folder", func(t *testing.T) {
cmd := NewCommand()
nonExistentFolder := filepath.Join(t.TempDir(), "non-existent-folder")
cmd.SetArgs([]string{"--tools-folder", nonExistentFolder})
err := cmd.Execute()
if err == nil {
t.Fatal("expected an error for non-existent folder but got none")
}
if !strings.Contains(err.Error(), "unable to access tools folder") {
t.Errorf("expected error about accessing folder, but got: %v", err)
}
})
}

View File

@@ -1 +1 @@
0.16.0
0.18.0

View File

@@ -234,7 +234,7 @@
},
"outputs": [],
"source": [
"version = \"0.16.0\" # x-release-please-version\n",
"version = \"0.18.0\" # x-release-please-version\n",
"! curl -O https://storage.googleapis.com/genai-toolbox/v{version}/linux/amd64/toolbox\n",
"\n",
"# Make the binary executable\n",

View File

@@ -86,7 +86,7 @@ following instructions for your OS and CPU architecture.
To install Toolbox as a binary on Linux (AMD64):
```sh
# see releases page for other versions
export VERSION=0.16.0
export VERSION=0.18.0
curl -L -o toolbox https://storage.googleapis.com/genai-toolbox/v$VERSION/linux/amd64/toolbox
chmod +x toolbox
```
@@ -95,7 +95,7 @@ chmod +x toolbox
To install Toolbox as a binary on macOS (Apple Silicon):
```sh
# see releases page for other versions
export VERSION=0.16.0
export VERSION=0.18.0
curl -L -o toolbox https://storage.googleapis.com/genai-toolbox/v$VERSION/darwin/arm64/toolbox
chmod +x toolbox
```
@@ -104,7 +104,7 @@ chmod +x toolbox
To install Toolbox as a binary on macOS (Intel):
```sh
# see releases page for other versions
export VERSION=0.16.0
export VERSION=0.18.0
curl -L -o toolbox https://storage.googleapis.com/genai-toolbox/v$VERSION/darwin/amd64/toolbox
chmod +x toolbox
```
@@ -113,7 +113,7 @@ chmod +x toolbox
To install Toolbox as a binary on Windows (AMD64):
```powershell
# see releases page for other versions
$VERSION = "0.16.0"
$VERSION = "0.18.0"
Invoke-WebRequest -Uri "https://storage.googleapis.com/genai-toolbox/v$VERSION/windows/amd64/toolbox.exe" -OutFile "toolbox.exe"
```
{{% /tab %}}
@@ -124,7 +124,7 @@ You can also install Toolbox as a container:
```sh
# see releases page for other versions
export VERSION=0.16.0
export VERSION=0.18.0
docker pull us-central1-docker.pkg.dev/database-toolbox/toolbox/toolbox:$VERSION
```
@@ -143,7 +143,7 @@ To install from source, ensure you have the latest version of
[Go installed](https://go.dev/doc/install), and then run the following command:
```sh
go install github.com/googleapis/genai-toolbox@v0.16.0
go install github.com/googleapis/genai-toolbox@v0.18.0
```
{{% /tab %}}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 90 KiB

View File

@@ -105,7 +105,7 @@ In this section, we will download Toolbox, configure our tools in a
<!-- {x-release-please-start-version} -->
```bash
export OS="linux/amd64" # one of linux/amd64, darwin/arm64, darwin/amd64, or windows/amd64
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/$OS/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/$OS/toolbox
```
<!-- {x-release-please-end} -->

View File

@@ -4,7 +4,7 @@ go 1.24.6
require (
github.com/googleapis/mcp-toolbox-sdk-go v0.3.0
google.golang.org/genai v1.28.0
google.golang.org/genai v1.33.0
)
require (

View File

@@ -102,8 +102,8 @@ golang.org/x/time v0.12.0 h1:ScB/8o8olJvc+CQPWrK3fPZNfh7qgwCrY0zJmoEQLSE=
golang.org/x/time v0.12.0/go.mod h1:CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg=
google.golang.org/api v0.248.0 h1:hUotakSkcwGdYUqzCRc5yGYsg4wXxpkKlW5ryVqvC1Y=
google.golang.org/api v0.248.0/go.mod h1:yAFUAF56Li7IuIQbTFoLwXTCI6XCFKueOlS7S9e4F9k=
google.golang.org/genai v1.28.0 h1:6qpUWFH3PkHPhxNnu3wjaCVJ6Jri1EIR7ks07f9IpIk=
google.golang.org/genai v1.28.0/go.mod h1:7pAilaICJlQBonjKKJNhftDFv3SREhZcTe9F6nRcjbg=
google.golang.org/genai v1.33.0 h1:DExzJZbSbxSRmwX2gCsZ+V9vb6rjdmsOAy47ASBgKvg=
google.golang.org/genai v1.33.0/go.mod h1:7pAilaICJlQBonjKKJNhftDFv3SREhZcTe9F6nRcjbg=
google.golang.org/genproto v0.0.0-20250603155806-513f23925822 h1:rHWScKit0gvAPuOnu87KpaYtjK5zBMLcULh7gxkCXu4=
google.golang.org/genproto v0.0.0-20250603155806-513f23925822/go.mod h1:HubltRL7rMh0LfnQPkMH4NPDFEWp0jw3vixw7jEM53s=
google.golang.org/genproto/googleapis/api v0.0.0-20250818200422-3122310a409c h1:AtEkQdl5b6zsybXcbz00j1LwNodDuH6hVifIaNqk7NQ=

View File

@@ -3,22 +3,22 @@ module genkit-quickstart
go 1.24.6
require (
github.com/firebase/genkit/go v0.6.2
github.com/googleapis/mcp-toolbox-sdk-go v0.3.0
github.com/firebase/genkit/go v1.1.0
github.com/googleapis/mcp-toolbox-sdk-go v0.3.1-0.20251031124047-f1f6a9faa2a1
)
require (
cloud.google.com/go v0.121.6 // indirect
cloud.google.com/go/auth v0.16.5 // indirect
cloud.google.com/go/auth v0.17.0 // indirect
cloud.google.com/go/auth/oauth2adapt v0.2.8 // indirect
cloud.google.com/go/compute/metadata v0.8.0 // indirect
cloud.google.com/go/compute/metadata v0.9.0 // indirect
github.com/bahlo/generic-list-go v0.2.0 // indirect
github.com/buger/jsonparser v1.1.1 // indirect
github.com/felixge/httpsnoop v1.0.4 // indirect
github.com/go-logr/logr v1.4.3 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
github.com/goccy/go-yaml v1.17.1 // indirect
github.com/google/dotprompt/go v0.0.0-20250611200215-bb73406b05ca // indirect
github.com/google/dotprompt/go v0.0.0-20251014011017-8d056e027254 // indirect
github.com/google/go-cmp v0.7.0 // indirect
github.com/google/s2a-go v0.1.9 // indirect
github.com/google/uuid v1.6.0 // indirect
@@ -32,21 +32,22 @@ require (
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
github.com/xeipuuv/gojsonschema v1.2.0 // indirect
github.com/yosida95/uritemplate/v3 v3.0.2 // indirect
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.61.0 // indirect
go.opentelemetry.io/otel v1.36.0 // indirect
go.opentelemetry.io/otel/metric v1.36.0 // indirect
go.opentelemetry.io/otel/sdk v1.36.0 // indirect
go.opentelemetry.io/otel/trace v1.36.0 // indirect
golang.org/x/crypto v0.41.0 // indirect
golang.org/x/net v0.43.0 // indirect
golang.org/x/oauth2 v0.30.0 // indirect
golang.org/x/sys v0.35.0 // indirect
golang.org/x/text v0.28.0 // indirect
google.golang.org/api v0.248.0 // indirect
google.golang.org/genai v1.11.1 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20250818200422-3122310a409c // indirect
google.golang.org/grpc v1.74.2 // indirect
google.golang.org/protobuf v1.36.7 // indirect
go.opentelemetry.io/otel v1.37.0 // indirect
go.opentelemetry.io/otel/metric v1.37.0 // indirect
go.opentelemetry.io/otel/sdk v1.37.0 // indirect
go.opentelemetry.io/otel/trace v1.37.0 // indirect
golang.org/x/crypto v0.43.0 // indirect
golang.org/x/net v0.46.0 // indirect
golang.org/x/oauth2 v0.32.0 // indirect
golang.org/x/sys v0.37.0 // indirect
golang.org/x/text v0.30.0 // indirect
google.golang.org/api v0.254.0 // indirect
google.golang.org/genai v1.30.0 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20251022142026-3a174f9686a8 // indirect
google.golang.org/grpc v1.76.0 // indirect
google.golang.org/protobuf v1.36.10 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
)

View File

@@ -2,22 +2,22 @@ cel.dev/expr v0.24.0 h1:56OvJKSH3hDGL0ml5uSxZmz3/3Pq4tJ+fb1unVLAFcY=
cel.dev/expr v0.24.0/go.mod h1:hLPLo1W4QUmuYdA72RBX06QTs6MXw941piREPl3Yfiw=
cloud.google.com/go v0.121.6 h1:waZiuajrI28iAf40cWgycWNgaXPO06dupuS+sgibK6c=
cloud.google.com/go v0.121.6/go.mod h1:coChdst4Ea5vUpiALcYKXEpR1S9ZgXbhEzzMcMR66vI=
cloud.google.com/go/auth v0.16.5 h1:mFWNQ2FEVWAliEQWpAdH80omXFokmrnbDhUS9cBywsI=
cloud.google.com/go/auth v0.16.5/go.mod h1:utzRfHMP+Vv0mpOkTRQoWD2q3BatTOoWbA7gCc2dUhQ=
cloud.google.com/go/auth v0.17.0 h1:74yCm7hCj2rUyyAocqnFzsAYXgJhrG26XCFimrc/Kz4=
cloud.google.com/go/auth v0.17.0/go.mod h1:6wv/t5/6rOPAX4fJiRjKkJCvswLwdet7G8+UGXt7nCQ=
cloud.google.com/go/auth/oauth2adapt v0.2.8 h1:keo8NaayQZ6wimpNSmW5OPc283g65QNIiLpZnkHRbnc=
cloud.google.com/go/auth/oauth2adapt v0.2.8/go.mod h1:XQ9y31RkqZCcwJWNSx2Xvric3RrU88hAYYbjDWYDL+c=
cloud.google.com/go/compute/metadata v0.8.0 h1:HxMRIbao8w17ZX6wBnjhcDkW6lTFpgcaobyVfZWqRLA=
cloud.google.com/go/compute/metadata v0.8.0/go.mod h1:sYOGTp851OV9bOFJ9CH7elVvyzopvWQFNNghtDQ/Biw=
cloud.google.com/go/compute/metadata v0.9.0 h1:pDUj4QMoPejqq20dK0Pg2N4yG9zIkYGdBtwLoEkH9Zs=
cloud.google.com/go/compute/metadata v0.9.0/go.mod h1:E0bWwX5wTnLPedCKqk3pJmVgCBSM6qQI1yTBdEb3C10=
cloud.google.com/go/iam v1.5.2 h1:qgFRAGEmd8z6dJ/qyEchAuL9jpswyODjA2lS+w234g8=
cloud.google.com/go/iam v1.5.2/go.mod h1:SE1vg0N81zQqLzQEwxL2WI6yhetBdbNQuTvIKCSkUHE=
cloud.google.com/go/monitoring v1.24.2 h1:5OTsoJ1dXYIiMiuL+sYscLc9BumrL3CarVLL7dd7lHM=
cloud.google.com/go/monitoring v1.24.2/go.mod h1:x7yzPWcgDRnPEv3sI+jJGBkwl5qINf+6qY4eq0I9B4U=
cloud.google.com/go/secretmanager v1.15.0 h1:RtkCMgTpaBMbzozcRUGfZe46jb9a3qh5EdEtVRUATF8=
cloud.google.com/go/secretmanager v1.15.0/go.mod h1:1hQSAhKK7FldiYw//wbR/XPfPc08eQ81oBsnRUHEvUc=
cloud.google.com/go/storage v1.56.1 h1:n6gy+yLnHn0hTwBFzNn8zJ1kqWfR91wzdM8hjRF4wP0=
cloud.google.com/go/storage v1.56.1/go.mod h1:C9xuCZgFl3buo2HZU/1FncgvvOgTAs/rnh4gF4lMg0s=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.27.0 h1:ErKg/3iS1AKcTkf3yixlZ54f9U1rljCkQyEXWUnIUxc=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.27.0/go.mod h1:yAZHSGnqScoU556rBOVkwLze6WP5N+U11RHuWaGVxwY=
cloud.google.com/go/secretmanager v1.16.0 h1:19QT7ZsLJ8FSP1k+4esQvuCD7npMJml6hYzilxVyT+k=
cloud.google.com/go/secretmanager v1.16.0/go.mod h1://C/e4I8D26SDTz1f3TQcddhcmiC3rMEl0S1Cakvs3Q=
cloud.google.com/go/storage v1.57.1 h1:gzao6odNJ7dR3XXYvAgPK+Iw4fVPPznEPPyNjbaVkq8=
cloud.google.com/go/storage v1.57.1/go.mod h1:329cwlpzALLgJuu8beyJ/uvQznDHpa2U5lGjWednkzg=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.29.0 h1:UQUsRi8WTzhZntp5313l+CHIAT95ojUI2lpP/ExlZa4=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.29.0/go.mod h1:Cz6ft6Dkn3Et6l2v2a9/RpN7epQ1GtDlO6lj8bEcOvw=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.53.0 h1:owcC2UnmsZycprQ5RfRgjydWhuoxg71LUfyiQdijZuM=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.53.0/go.mod h1:ZPpqegjbE99EPKsu3iUWV22A04wzGPcAY/ziSIQEEgs=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.53.0 h1:Ron4zCA/yk6U7WOBXhTJcDpsUBG9npumK6xw2auFltQ=
@@ -40,10 +40,10 @@ github.com/envoyproxy/protoc-gen-validate v1.2.1 h1:DEo3O99U8j4hBFwbJfrz9VtgcDfU
github.com/envoyproxy/protoc-gen-validate v1.2.1/go.mod h1:d/C80l/jxXLdfEIhX1W2TmLfsJ31lvEjwamM4DxlWXU=
github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg=
github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U=
github.com/firebase/genkit/go v0.6.2 h1:FaVJtcprfXZz0gXTtARJqUiovu/R2wuJycNn/18aNMc=
github.com/firebase/genkit/go v0.6.2/go.mod h1:blRYK6oNgwBDX6F+gInACru6q527itviv+xruiMSUuU=
github.com/go-jose/go-jose/v4 v4.1.0 h1:cYSYxd3pw5zd2FSXk2vGdn9igQU2PS8MuxrCOCl0FdY=
github.com/go-jose/go-jose/v4 v4.1.0/go.mod h1:GG/vqmYm3Von2nYiB2vGTXzdoNKE5tix5tuc6iAd+sw=
github.com/firebase/genkit/go v1.1.0 h1:SQqzQt19gEubvUUCFV98TARFAzD30zT3QhseF3oTKqo=
github.com/firebase/genkit/go v1.1.0/go.mod h1:ru1cIuxG1s3HeUjhnadVveDJ1yhinj+j+uUh0f0pyxE=
github.com/go-jose/go-jose/v4 v4.1.2 h1:TK/7NqRQZfgAh+Td8AlsrvtPoUyiHh0LqVvokh+1vHI=
github.com/go-jose/go-jose/v4 v4.1.2/go.mod h1:22cg9HWM1pOlnRiY+9cQYJ9XHmya1bYW8OeDM6Ku6Oo=
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI=
github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
@@ -53,8 +53,8 @@ github.com/goccy/go-yaml v1.17.1 h1:LI34wktB2xEE3ONG/2Ar54+/HJVBriAGJ55PHls4YuY=
github.com/goccy/go-yaml v1.17.1/go.mod h1:XBurs7gK8ATbW4ZPGKgcbrY1Br56PdM69F7LkFRi1kA=
github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek=
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
github.com/google/dotprompt/go v0.0.0-20250611200215-bb73406b05ca h1:LuQ8KS5N04c37jyaq6jelLdNi0GfI6QJb8lpnYaDW9Y=
github.com/google/dotprompt/go v0.0.0-20250611200215-bb73406b05ca/go.mod h1:dnIk+MSMnipm9uZyPIgptq7I39aDxyjBiaev/OG0W0Y=
github.com/google/dotprompt/go v0.0.0-20251014011017-8d056e027254 h1:okN800+zMJOGHLJCgry+OGzhhtH6YrjQh1rluHmOacE=
github.com/google/dotprompt/go v0.0.0-20251014011017-8d056e027254/go.mod h1:k8cjJAQWc//ac/bMnzItyOFbfT01tgRTZGgxELCuxEQ=
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
github.com/google/s2a-go v0.1.9 h1:LGD7gtMgezd8a/Xak7mEWL0PjoTQFvpRudN895yqKW0=
@@ -65,8 +65,8 @@ github.com/googleapis/enterprise-certificate-proxy v0.3.6 h1:GW/XbdyBFQ8Qe+YAmFU
github.com/googleapis/enterprise-certificate-proxy v0.3.6/go.mod h1:MkHOF77EYAE7qfSuSS9PU6g4Nt4e11cnsDUowfwewLA=
github.com/googleapis/gax-go/v2 v2.15.0 h1:SyjDc1mGgZU5LncH8gimWo9lW1DtIfPibOG81vgd/bo=
github.com/googleapis/gax-go/v2 v2.15.0/go.mod h1:zVVkkxAQHa1RQpg9z2AUCMnKhi0Qld9rcmyfL1OZhoc=
github.com/googleapis/mcp-toolbox-sdk-go v0.3.0 h1:m/en3Pp3iGc99SYejUS9iQ01QXsDKMVA+Z456P6mAxY=
github.com/googleapis/mcp-toolbox-sdk-go v0.3.0/go.mod h1:DYgNeEV9WHpesG9O2Esr0o+s7Nag0H3h3U2JstK1g6I=
github.com/googleapis/mcp-toolbox-sdk-go v0.3.1-0.20251031124047-f1f6a9faa2a1 h1:2tNgqscblFtzD0VB1VKqV4vVMveISvepf53GsVkOaaQ=
github.com/googleapis/mcp-toolbox-sdk-go v0.3.1-0.20251031124047-f1f6a9faa2a1/go.mod h1:ywzclXOfzsAb2Z3TJqNOi9dZej+VrF9QfuvFOOHjpX8=
github.com/gorilla/websocket v1.5.3 h1:saDtZ6Pbx/0u+bgYQ3q96pZgCzfhKXGPqt7kZ72aNNg=
github.com/gorilla/websocket v1.5.3/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
github.com/invopop/jsonschema v0.13.0 h1:KvpoAJWEjR3uD9Kbm2HWJmqsEaHt8lBUpd0qHcIi21E=
@@ -90,8 +90,8 @@ github.com/spiffe/go-spiffe/v2 v2.5.0 h1:N2I01KCUkv1FAjZXJMwh95KK1ZIQLYbPfhaxw8W
github.com/spiffe/go-spiffe/v2 v2.5.0/go.mod h1:P+NxobPc6wXhVtINNtFjNWGBTreew1GBUCwT2wPmb7g=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
github.com/wk8/go-ordered-map/v2 v2.1.8 h1:5h/BUHu93oj4gIdvHHHGsScSTMijfx5PeYkE/fJgbpc=
github.com/wk8/go-ordered-map/v2 v2.1.8/go.mod h1:5nJHM5DyteebpVlHnWMV0rPz6Zp7+xBAnxjb1X5vnTw=
github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU=
@@ -101,6 +101,8 @@ github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHo
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ=
github.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17UxZ74=
github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y=
github.com/yosida95/uritemplate/v3 v3.0.2 h1:Ed3Oyj9yrmi9087+NczuL5BwkIc4wvTb5zIM+UJPGz4=
github.com/yosida95/uritemplate/v3 v3.0.2/go.mod h1:ILOh0sOhIJR3+L/8afwt/kE++YT040gmv5BQTMR2HP4=
github.com/zeebo/errs v1.4.0 h1:XNdoD/RRMKP7HD0UhJnIzUy74ISdGGxURlYG8HSWSfM=
github.com/zeebo/errs v1.4.0/go.mod h1:sgbWHsvVuTPHcqJJGQ1WhI5KbWlHYz+2+2C/LSEtCw4=
go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA=
@@ -111,46 +113,48 @@ go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.6
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.61.0/go.mod h1:snMWehoOh2wsEwnvvwtDyFCxVeDAODenXHtn5vzrKjo=
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.61.0 h1:F7Jx+6hwnZ41NSFTO5q4LYDtJRXBf2PD0rNBkeB/lus=
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.61.0/go.mod h1:UHB22Z8QsdRDrnAtX4PntOl36ajSxcdUMt1sF7Y6E7Q=
go.opentelemetry.io/otel v1.36.0 h1:UumtzIklRBY6cI/lllNZlALOF5nNIzJVb16APdvgTXg=
go.opentelemetry.io/otel v1.36.0/go.mod h1:/TcFMXYjyRNh8khOAO9ybYkqaDBb/70aVwkNML4pP8E=
go.opentelemetry.io/otel/metric v1.36.0 h1:MoWPKVhQvJ+eeXWHFBOPoBOi20jh6Iq2CcCREuTYufE=
go.opentelemetry.io/otel/metric v1.36.0/go.mod h1:zC7Ks+yeyJt4xig9DEw9kuUFe5C3zLbVjV2PzT6qzbs=
go.opentelemetry.io/otel/sdk v1.36.0 h1:b6SYIuLRs88ztox4EyrvRti80uXIFy+Sqzoh9kFULbs=
go.opentelemetry.io/otel/sdk v1.36.0/go.mod h1:+lC+mTgD+MUWfjJubi2vvXWcVxyr9rmlshZni72pXeY=
go.opentelemetry.io/otel/sdk/metric v1.36.0 h1:r0ntwwGosWGaa0CrSt8cuNuTcccMXERFwHX4dThiPis=
go.opentelemetry.io/otel/sdk/metric v1.36.0/go.mod h1:qTNOhFDfKRwX0yXOqJYegL5WRaW376QbB7P4Pb0qva4=
go.opentelemetry.io/otel/trace v1.36.0 h1:ahxWNuqZjpdiFAyrIoQ4GIiAIhxAunQR6MUoKrsNd4w=
go.opentelemetry.io/otel/trace v1.36.0/go.mod h1:gQ+OnDZzrybY4k4seLzPAWNwVBBVlF2szhehOBB/tGA=
go.opentelemetry.io/otel v1.37.0 h1:9zhNfelUvx0KBfu/gb+ZgeAfAgtWrfHJZcAqFC228wQ=
go.opentelemetry.io/otel v1.37.0/go.mod h1:ehE/umFRLnuLa/vSccNq9oS1ErUlkkK71gMcN34UG8I=
go.opentelemetry.io/otel/metric v1.37.0 h1:mvwbQS5m0tbmqML4NqK+e3aDiO02vsf/WgbsdpcPoZE=
go.opentelemetry.io/otel/metric v1.37.0/go.mod h1:04wGrZurHYKOc+RKeye86GwKiTb9FKm1WHtO+4EVr2E=
go.opentelemetry.io/otel/sdk v1.37.0 h1:ItB0QUqnjesGRvNcmAcU0LyvkVyGJ2xftD29bWdDvKI=
go.opentelemetry.io/otel/sdk v1.37.0/go.mod h1:VredYzxUvuo2q3WRcDnKDjbdvmO0sCzOvVAiY+yUkAg=
go.opentelemetry.io/otel/sdk/metric v1.37.0 h1:90lI228XrB9jCMuSdA0673aubgRobVZFhbjxHHspCPc=
go.opentelemetry.io/otel/sdk/metric v1.37.0/go.mod h1:cNen4ZWfiD37l5NhS+Keb5RXVWZWpRE+9WyVCpbo5ps=
go.opentelemetry.io/otel/trace v1.37.0 h1:HLdcFNbRQBE2imdSEgm/kwqmQj1Or1l/7bW6mxVK7z4=
go.opentelemetry.io/otel/trace v1.37.0/go.mod h1:TlgrlQ+PtQO5XFerSPUYG0JSgGyryXewPGyayAWSBS0=
go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
golang.org/x/crypto v0.41.0 h1:WKYxWedPGCTVVl5+WHSSrOBT0O8lx32+zxmHxijgXp4=
golang.org/x/crypto v0.41.0/go.mod h1:pO5AFd7FA68rFak7rOAGVuygIISepHftHnr8dr6+sUc=
golang.org/x/net v0.43.0 h1:lat02VYK2j4aLzMzecihNvTlJNQUq316m2Mr9rnM6YE=
golang.org/x/net v0.43.0/go.mod h1:vhO1fvI4dGsIjh73sWfUVjj3N7CA9WkKJNQm2svM6Jg=
golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI=
golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU=
golang.org/x/sync v0.16.0 h1:ycBJEhp9p4vXvUZNszeOq0kGTPghopOL8q0fq3vstxw=
golang.org/x/sync v0.16.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
golang.org/x/sys v0.35.0 h1:vz1N37gP5bs89s7He8XuIYXpyY0+QlsKmzipCbUtyxI=
golang.org/x/sys v0.35.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
golang.org/x/text v0.28.0 h1:rhazDwis8INMIwQ4tpjLDzUhx6RlXqZNPEM0huQojng=
golang.org/x/text v0.28.0/go.mod h1:U8nCwOR8jO/marOQ0QbDiOngZVEBB7MAiitBuMjXiNU=
golang.org/x/time v0.12.0 h1:ScB/8o8olJvc+CQPWrK3fPZNfh7qgwCrY0zJmoEQLSE=
golang.org/x/time v0.12.0/go.mod h1:CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg=
google.golang.org/api v0.248.0 h1:hUotakSkcwGdYUqzCRc5yGYsg4wXxpkKlW5ryVqvC1Y=
google.golang.org/api v0.248.0/go.mod h1:yAFUAF56Li7IuIQbTFoLwXTCI6XCFKueOlS7S9e4F9k=
google.golang.org/genai v1.11.1 h1:MgI2JVDaIQ1YMuzKFwgPciB+K6kQ8MCBMVL9u7Oa8qw=
google.golang.org/genai v1.11.1/go.mod h1:HFXR1zT3LCdLxd/NW6IOSCczOYyRAxwaShvYbgPSeVw=
golang.org/x/crypto v0.43.0 h1:dduJYIi3A3KOfdGOHX8AVZ/jGiyPa3IbBozJ5kNuE04=
golang.org/x/crypto v0.43.0/go.mod h1:BFbav4mRNlXJL4wNeejLpWxB7wMbc79PdRGhWKncxR0=
golang.org/x/net v0.46.0 h1:giFlY12I07fugqwPuWJi68oOnpfqFnJIJzaIIm2JVV4=
golang.org/x/net v0.46.0/go.mod h1:Q9BGdFy1y4nkUwiLvT5qtyhAnEHgnQ/zd8PfU6nc210=
golang.org/x/oauth2 v0.32.0 h1:jsCblLleRMDrxMN29H3z/k1KliIvpLgCkE6R8FXXNgY=
golang.org/x/oauth2 v0.32.0/go.mod h1:lzm5WQJQwKZ3nwavOZ3IS5Aulzxi68dUSgRHujetwEA=
golang.org/x/sync v0.17.0 h1:l60nONMj9l5drqw6jlhIELNv9I0A4OFgRsG9k2oT9Ug=
golang.org/x/sync v0.17.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
golang.org/x/sys v0.37.0 h1:fdNQudmxPjkdUTPnLn5mdQv7Zwvbvpaxqs831goi9kQ=
golang.org/x/sys v0.37.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
golang.org/x/text v0.30.0 h1:yznKA/E9zq54KzlzBEAWn1NXSQ8DIp/NYMy88xJjl4k=
golang.org/x/text v0.30.0/go.mod h1:yDdHFIX9t+tORqspjENWgzaCVXgk0yYnYuSZ8UzzBVM=
golang.org/x/time v0.14.0 h1:MRx4UaLrDotUKUdCIqzPC48t1Y9hANFKIRpNx+Te8PI=
golang.org/x/time v0.14.0/go.mod h1:eL/Oa2bBBK0TkX57Fyni+NgnyQQN4LitPmob2Hjnqw4=
gonum.org/v1/gonum v0.16.0 h1:5+ul4Swaf3ESvrOnidPp4GZbzf0mxVQpDCYUQE7OJfk=
gonum.org/v1/gonum v0.16.0/go.mod h1:fef3am4MQ93R2HHpKnLk4/Tbh/s0+wqD5nfa6Pnwy4E=
google.golang.org/api v0.254.0 h1:jl3XrGj7lRjnlUvZAbAdhINTLbsg5dbjmR90+pTQvt4=
google.golang.org/api v0.254.0/go.mod h1:5BkSURm3D9kAqjGvBNgf0EcbX6Rnrf6UArKkwBzAyqQ=
google.golang.org/genai v1.30.0 h1:7021aneIvl24nEBLbtQFEWleHsMbjzpcQvkT4WcJ1dc=
google.golang.org/genai v1.30.0/go.mod h1:7pAilaICJlQBonjKKJNhftDFv3SREhZcTe9F6nRcjbg=
google.golang.org/genproto v0.0.0-20250603155806-513f23925822 h1:rHWScKit0gvAPuOnu87KpaYtjK5zBMLcULh7gxkCXu4=
google.golang.org/genproto v0.0.0-20250603155806-513f23925822/go.mod h1:HubltRL7rMh0LfnQPkMH4NPDFEWp0jw3vixw7jEM53s=
google.golang.org/genproto/googleapis/api v0.0.0-20250818200422-3122310a409c h1:AtEkQdl5b6zsybXcbz00j1LwNodDuH6hVifIaNqk7NQ=
google.golang.org/genproto/googleapis/api v0.0.0-20250818200422-3122310a409c/go.mod h1:ea2MjsO70ssTfCjiwHgI0ZFqcw45Ksuk2ckf9G468GA=
google.golang.org/genproto/googleapis/rpc v0.0.0-20250818200422-3122310a409c h1:qXWI/sQtv5UKboZ/zUk7h+mrf/lXORyI+n9DKDAusdg=
google.golang.org/genproto/googleapis/rpc v0.0.0-20250818200422-3122310a409c/go.mod h1:gw1tLEfykwDz2ET4a12jcXt4couGAm7IwsVaTy0Sflo=
google.golang.org/grpc v1.74.2 h1:WoosgB65DlWVC9FqI82dGsZhWFNBSLjQ84bjROOpMu4=
google.golang.org/grpc v1.74.2/go.mod h1:CtQ+BGjaAIXHs/5YS3i473GqwBBa1zGQNevxdeBEXrM=
google.golang.org/protobuf v1.36.7 h1:IgrO7UwFQGJdRNXH/sQux4R1Dj1WAKcLElzeeRaXV2A=
google.golang.org/protobuf v1.36.7/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
google.golang.org/genproto/googleapis/rpc v0.0.0-20251022142026-3a174f9686a8 h1:M1rk8KBnUsBDg1oPGHNCxG4vc1f49epmTO7xscSajMk=
google.golang.org/genproto/googleapis/rpc v0.0.0-20251022142026-3a174f9686a8/go.mod h1:7i2o+ce6H/6BluujYR+kqX3GKH+dChPTQU19wjRPiGk=
google.golang.org/grpc v1.76.0 h1:UnVkv1+uMLYXoIz6o7chp59WfQUYA2ex/BXQ9rHZu7A=
google.golang.org/grpc v1.76.0/go.mod h1:Ju12QI8M6iQJtbcsV+awF5a4hfJMLi4X0JLo94ULZ6c=
google.golang.org/protobuf v1.36.10 h1:AYd7cD/uASjIL6Q9LiTjz8JLcrh/88q5UObnmY3aOOE=
google.golang.org/protobuf v1.36.10/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=

View File

@@ -46,7 +46,7 @@ func main() {
}
// Initialize Genkit
g, err := genkit.Init(ctx,
g := genkit.Init(ctx,
genkit.WithPlugins(&googlegenai.GoogleAI{}),
genkit.WithDefaultModel("googleai/gemini-2.0-flash"),
)

View File

@@ -4,7 +4,7 @@ go 1.24.6
require (
github.com/googleapis/mcp-toolbox-sdk-go v0.3.0
github.com/tmc/langchaingo v0.1.13
github.com/tmc/langchaingo v0.1.14
)
require (

View File

@@ -76,10 +76,12 @@ github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRI
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/spiffe/go-spiffe/v2 v2.5.0 h1:N2I01KCUkv1FAjZXJMwh95KK1ZIQLYbPfhaxw8WS0hE=
github.com/spiffe/go-spiffe/v2 v2.5.0/go.mod h1:P+NxobPc6wXhVtINNtFjNWGBTreew1GBUCwT2wPmb7g=
github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY=
github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
github.com/tmc/langchaingo v0.1.13 h1:rcpMWBIi2y3B90XxfE4Ao8dhCQPVDMaNPnN5cGB1CaA=
github.com/tmc/langchaingo v0.1.13/go.mod h1:vpQ5NOIhpzxDfTZK9B6tf2GM/MoaHewPWM5KXXGh7hg=
github.com/tmc/langchaingo v0.1.14 h1:o1qWBPigAIuFvrG6cjTFo0cZPFEZ47ZqpOYMjM15yZc=
github.com/tmc/langchaingo v0.1.14/go.mod h1:aKKYXYoqhIDEv7WKdpnnCLRaqXic69cX9MnDUk72378=
github.com/zeebo/errs v1.4.0 h1:XNdoD/RRMKP7HD0UhJnIzUy74ISdGGxURlYG8HSWSfM=
github.com/zeebo/errs v1.4.0/go.mod h1:sgbWHsvVuTPHcqJJGQ1WhI5KbWlHYz+2+2C/LSEtCw4=
go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA=

View File

@@ -4,9 +4,10 @@ go 1.24.6
require (
github.com/googleapis/mcp-toolbox-sdk-go v0.3.0
github.com/openai/openai-go v1.12.0
github.com/openai/openai-go/v3 v3.3.0
)
require (
cloud.google.com/go/auth v0.16.5 // indirect
cloud.google.com/go/auth/oauth2adapt v0.2.8 // indirect

View File

@@ -1,15 +1,11 @@
cel.dev/expr v0.23.0 h1:wUb94w6OYQS4uXraxo9U+wUAs9jT47Xvl4iPgAwM2ss=
cel.dev/expr v0.23.0/go.mod h1:hLPLo1W4QUmuYdA72RBX06QTs6MXw941piREPl3Yfiw=
cloud.google.com/go v0.121.1 h1:S3kTQSydxmu1JfLRLpKtxRPA7rSrYPRPEUmL/PavVUw=
cloud.google.com/go v0.121.1/go.mod h1:nRFlrHq39MNVWu+zESP2PosMWA0ryJw8KUBZ2iZpxbw=
cloud.google.com/go/auth v0.16.2 h1:QvBAGFPLrDeoiNjyfVunhQ10HKNYuOwZ5noee0M5df4=
cloud.google.com/go/auth v0.16.2/go.mod h1:sRBas2Y1fB1vZTdurouM0AzuYQBMZinrUYL8EufhtEA=
cel.dev/expr v0.24.0 h1:56OvJKSH3hDGL0ml5uSxZmz3/3Pq4tJ+fb1unVLAFcY=
cel.dev/expr v0.24.0/go.mod h1:hLPLo1W4QUmuYdA72RBX06QTs6MXw941piREPl3Yfiw=
cloud.google.com/go v0.121.6 h1:waZiuajrI28iAf40cWgycWNgaXPO06dupuS+sgibK6c=
cloud.google.com/go v0.121.6/go.mod h1:coChdst4Ea5vUpiALcYKXEpR1S9ZgXbhEzzMcMR66vI=
cloud.google.com/go/auth v0.16.5 h1:mFWNQ2FEVWAliEQWpAdH80omXFokmrnbDhUS9cBywsI=
cloud.google.com/go/auth v0.16.5/go.mod h1:utzRfHMP+Vv0mpOkTRQoWD2q3BatTOoWbA7gCc2dUhQ=
cloud.google.com/go/auth/oauth2adapt v0.2.8 h1:keo8NaayQZ6wimpNSmW5OPc283g65QNIiLpZnkHRbnc=
cloud.google.com/go/auth/oauth2adapt v0.2.8/go.mod h1:XQ9y31RkqZCcwJWNSx2Xvric3RrU88hAYYbjDWYDL+c=
cloud.google.com/go/compute/metadata v0.7.0 h1:PBWF+iiAerVNe8UCHxdOt6eHLVc3ydFeOCw78U8ytSU=
cloud.google.com/go/compute/metadata v0.7.0/go.mod h1:j5MvL9PprKL39t166CoB1uVHfQMs4tFQZZcKwksXUjo=
cloud.google.com/go/compute/metadata v0.8.0 h1:HxMRIbao8w17ZX6wBnjhcDkW6lTFpgcaobyVfZWqRLA=
cloud.google.com/go/compute/metadata v0.8.0/go.mod h1:sYOGTp851OV9bOFJ9CH7elVvyzopvWQFNNghtDQ/Biw=
cloud.google.com/go/iam v1.5.2 h1:qgFRAGEmd8z6dJ/qyEchAuL9jpswyODjA2lS+w234g8=
@@ -18,18 +14,18 @@ cloud.google.com/go/monitoring v1.24.2 h1:5OTsoJ1dXYIiMiuL+sYscLc9BumrL3CarVLL7d
cloud.google.com/go/monitoring v1.24.2/go.mod h1:x7yzPWcgDRnPEv3sI+jJGBkwl5qINf+6qY4eq0I9B4U=
cloud.google.com/go/secretmanager v1.15.0 h1:RtkCMgTpaBMbzozcRUGfZe46jb9a3qh5EdEtVRUATF8=
cloud.google.com/go/secretmanager v1.15.0/go.mod h1:1hQSAhKK7FldiYw//wbR/XPfPc08eQ81oBsnRUHEvUc=
cloud.google.com/go/storage v1.55.0 h1:NESjdAToN9u1tmhVqhXCaCwYBuvEhZLLv0gBr+2znf0=
cloud.google.com/go/storage v1.55.0/go.mod h1:ztSmTTwzsdXe5syLVS0YsbFxXuvEmEyZj7v7zChEmuY=
cloud.google.com/go/storage v1.56.1 h1:n6gy+yLnHn0hTwBFzNn8zJ1kqWfR91wzdM8hjRF4wP0=
cloud.google.com/go/storage v1.56.1/go.mod h1:C9xuCZgFl3buo2HZU/1FncgvvOgTAs/rnh4gF4lMg0s=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.27.0 h1:ErKg/3iS1AKcTkf3yixlZ54f9U1rljCkQyEXWUnIUxc=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.27.0/go.mod h1:yAZHSGnqScoU556rBOVkwLze6WP5N+U11RHuWaGVxwY=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.52.0 h1:QFgWzcdmJlgEAwJz/zePYVJQxfoJGRtgIqZfIUFg5oQ=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.52.0/go.mod h1:ayYHuYU7iNcNtEs1K9k6D/Bju7u1VEHMQm5qQ1n3GtM=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.52.0 h1:wbMd4eG/fOhsCa6+IP8uEDvWF5vl7rNoUWmP5f72Tbs=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.52.0/go.mod h1:gdIm9TxRk5soClCwuB0FtdXsbqtw0aqPwBEurK9tPkw=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.53.0 h1:owcC2UnmsZycprQ5RfRgjydWhuoxg71LUfyiQdijZuM=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.53.0/go.mod h1:ZPpqegjbE99EPKsu3iUWV22A04wzGPcAY/ziSIQEEgs=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.53.0 h1:Ron4zCA/yk6U7WOBXhTJcDpsUBG9npumK6xw2auFltQ=
github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.53.0/go.mod h1:cSgYe11MCNYunTnRXrKiR/tHc0eoKjICUuWpNZoVCOo=
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
github.com/cncf/xds/go v0.0.0-20250326154945-ae57f3c0d45f h1:C5bqEmzEPLsHm9Mv73lSE9e9bKV23aB1vxOsmZrkl3k=
github.com/cncf/xds/go v0.0.0-20250326154945-ae57f3c0d45f/go.mod h1:W+zGtBO5Y1IgJhy4+A9GOqVhqLpfZi+vwmdNXUehLA8=
github.com/cncf/xds/go v0.0.0-20250501225837-2ac532fd4443 h1:aQ3y1lwWyqYPiWZThqv1aFbZMiM9vblcSArJRf2Irls=
github.com/cncf/xds/go v0.0.0-20250501225837-2ac532fd4443/go.mod h1:W+zGtBO5Y1IgJhy4+A9GOqVhqLpfZi+vwmdNXUehLA8=
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/envoyproxy/go-control-plane v0.13.4 h1:zEqyPVyku6IvWCFwux4x9RxkLOMUL+1vC9xUFv5l2/M=
@@ -56,12 +52,8 @@ github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/googleapis/enterprise-certificate-proxy v0.3.6 h1:GW/XbdyBFQ8Qe+YAmFU9uHLo7OnF5tL52HFAgMmyrf4=
github.com/googleapis/enterprise-certificate-proxy v0.3.6/go.mod h1:MkHOF77EYAE7qfSuSS9PU6g4Nt4e11cnsDUowfwewLA=
github.com/googleapis/gax-go/v2 v2.14.2 h1:eBLnkZ9635krYIPD+ag1USrOAI0Nr0QYF3+/3GqO0k0=
github.com/googleapis/gax-go/v2 v2.14.2/go.mod h1:ON64QhlJkhVtSqp4v1uaK92VyZ2gmvDQsweuyLV+8+w=
github.com/googleapis/gax-go/v2 v2.15.0 h1:SyjDc1mGgZU5LncH8gimWo9lW1DtIfPibOG81vgd/bo=
github.com/googleapis/gax-go/v2 v2.15.0/go.mod h1:zVVkkxAQHa1RQpg9z2AUCMnKhi0Qld9rcmyfL1OZhoc=
github.com/googleapis/mcp-toolbox-sdk-go v0.2.0 h1:y242XXymvSDJ84FhDvSqpyjq4bOtRDy6yOxs7QR8etY=
github.com/googleapis/mcp-toolbox-sdk-go v0.2.0/go.mod h1:Zd5cooy5sH5ThiTwzhKtZZxTkLGbPlqDZ9c8er969Ug=
github.com/googleapis/mcp-toolbox-sdk-go v0.3.0 h1:m/en3Pp3iGc99SYejUS9iQ01QXsDKMVA+Z456P6mAxY=
github.com/googleapis/mcp-toolbox-sdk-go v0.3.0/go.mod h1:DYgNeEV9WHpesG9O2Esr0o+s7Nag0H3h3U2JstK1g6I=
github.com/openai/openai-go v1.12.0 h1:NBQCnXzqOTv5wsgNC36PrFEiskGfO5wccfCWDo9S1U0=
@@ -104,46 +96,30 @@ go.opentelemetry.io/otel/sdk/metric v1.36.0 h1:r0ntwwGosWGaa0CrSt8cuNuTcccMXERFw
go.opentelemetry.io/otel/sdk/metric v1.36.0/go.mod h1:qTNOhFDfKRwX0yXOqJYegL5WRaW376QbB7P4Pb0qva4=
go.opentelemetry.io/otel/trace v1.36.0 h1:ahxWNuqZjpdiFAyrIoQ4GIiAIhxAunQR6MUoKrsNd4w=
go.opentelemetry.io/otel/trace v1.36.0/go.mod h1:gQ+OnDZzrybY4k4seLzPAWNwVBBVlF2szhehOBB/tGA=
golang.org/x/crypto v0.39.0 h1:SHs+kF4LP+f+p14esP5jAoDpHU8Gu/v9lFRK6IT5imM=
golang.org/x/crypto v0.39.0/go.mod h1:L+Xg3Wf6HoL4Bn4238Z6ft6KfEpN0tJGo53AAPC632U=
golang.org/x/crypto v0.41.0 h1:WKYxWedPGCTVVl5+WHSSrOBT0O8lx32+zxmHxijgXp4=
golang.org/x/crypto v0.41.0/go.mod h1:pO5AFd7FA68rFak7rOAGVuygIISepHftHnr8dr6+sUc=
golang.org/x/net v0.41.0 h1:vBTly1HeNPEn3wtREYfy4GZ/NECgw2Cnl+nK6Nz3uvw=
golang.org/x/net v0.41.0/go.mod h1:B/K4NNqkfmg07DQYrbwvSluqCJOOXwUjeb/5lOisjbA=
golang.org/x/net v0.43.0 h1:lat02VYK2j4aLzMzecihNvTlJNQUq316m2Mr9rnM6YE=
golang.org/x/net v0.43.0/go.mod h1:vhO1fvI4dGsIjh73sWfUVjj3N7CA9WkKJNQm2svM6Jg=
golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI=
golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU=
golang.org/x/sync v0.15.0 h1:KWH3jNZsfyT6xfAfKiz6MRNmd46ByHDYaZ7KSkCtdW8=
golang.org/x/sync v0.15.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw=
golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
golang.org/x/sync v0.16.0 h1:ycBJEhp9p4vXvUZNszeOq0kGTPghopOL8q0fq3vstxw=
golang.org/x/sync v0.16.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
golang.org/x/sys v0.35.0 h1:vz1N37gP5bs89s7He8XuIYXpyY0+QlsKmzipCbUtyxI=
golang.org/x/sys v0.35.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
golang.org/x/text v0.26.0 h1:P42AVeLghgTYr4+xUnTRKDMqpar+PtX7KWuNQL21L8M=
golang.org/x/text v0.26.0/go.mod h1:QK15LZJUUQVJxhz7wXgxSy/CJaTFjd0G+YLonydOVQA=
golang.org/x/text v0.28.0 h1:rhazDwis8INMIwQ4tpjLDzUhx6RlXqZNPEM0huQojng=
golang.org/x/text v0.28.0/go.mod h1:U8nCwOR8jO/marOQ0QbDiOngZVEBB7MAiitBuMjXiNU=
golang.org/x/time v0.12.0 h1:ScB/8o8olJvc+CQPWrK3fPZNfh7qgwCrY0zJmoEQLSE=
golang.org/x/time v0.12.0/go.mod h1:CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg=
google.golang.org/api v0.242.0 h1:7Lnb1nfnpvbkCiZek6IXKdJ0MFuAZNAJKQfA1ws62xg=
google.golang.org/api v0.242.0/go.mod h1:cOVEm2TpdAGHL2z+UwyS+kmlGr3bVWQQ6sYEqkKje50=
google.golang.org/api v0.248.0 h1:hUotakSkcwGdYUqzCRc5yGYsg4wXxpkKlW5ryVqvC1Y=
google.golang.org/api v0.248.0/go.mod h1:yAFUAF56Li7IuIQbTFoLwXTCI6XCFKueOlS7S9e4F9k=
google.golang.org/genproto v0.0.0-20250505200425-f936aa4a68b2 h1:1tXaIXCracvtsRxSBsYDiSBN0cuJvM7QYW+MrpIRY78=
google.golang.org/genproto v0.0.0-20250505200425-f936aa4a68b2/go.mod h1:49MsLSx0oWMOZqcpB3uL8ZOkAh1+TndpJ8ONoCBWiZk=
google.golang.org/genproto/googleapis/api v0.0.0-20250603155806-513f23925822 h1:oWVWY3NzT7KJppx2UKhKmzPq4SRe0LdCijVRwvGeikY=
google.golang.org/genproto/googleapis/api v0.0.0-20250603155806-513f23925822/go.mod h1:h3c4v36UTKzUiuaOKQ6gr3S+0hovBtUrXzTG/i3+XEc=
google.golang.org/genproto/googleapis/rpc v0.0.0-20250603155806-513f23925822 h1:fc6jSaCT0vBduLYZHYrBBNY4dsWuvgyff9noRNDdBeE=
google.golang.org/genproto/googleapis/rpc v0.0.0-20250603155806-513f23925822/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
google.golang.org/genproto v0.0.0-20250603155806-513f23925822 h1:rHWScKit0gvAPuOnu87KpaYtjK5zBMLcULh7gxkCXu4=
google.golang.org/genproto v0.0.0-20250603155806-513f23925822/go.mod h1:HubltRL7rMh0LfnQPkMH4NPDFEWp0jw3vixw7jEM53s=
google.golang.org/genproto/googleapis/api v0.0.0-20250818200422-3122310a409c h1:AtEkQdl5b6zsybXcbz00j1LwNodDuH6hVifIaNqk7NQ=
google.golang.org/genproto/googleapis/api v0.0.0-20250818200422-3122310a409c/go.mod h1:ea2MjsO70ssTfCjiwHgI0ZFqcw45Ksuk2ckf9G468GA=
google.golang.org/genproto/googleapis/rpc v0.0.0-20250818200422-3122310a409c h1:qXWI/sQtv5UKboZ/zUk7h+mrf/lXORyI+n9DKDAusdg=
google.golang.org/genproto/googleapis/rpc v0.0.0-20250818200422-3122310a409c/go.mod h1:gw1tLEfykwDz2ET4a12jcXt4couGAm7IwsVaTy0Sflo=
google.golang.org/grpc v1.73.0 h1:VIWSmpI2MegBtTuFt5/JWy2oXxtjJ/e89Z70ImfD2ok=
google.golang.org/grpc v1.73.0/go.mod h1:50sbHOUqWoCQGI8V2HQLJM0B+LMlIUjNSZmow7EVBQc=
google.golang.org/grpc v1.74.2 h1:WoosgB65DlWVC9FqI82dGsZhWFNBSLjQ84bjROOpMu4=
google.golang.org/grpc v1.74.2/go.mod h1:CtQ+BGjaAIXHs/5YS3i473GqwBBa1zGQNevxdeBEXrM=
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
google.golang.org/protobuf v1.36.7 h1:IgrO7UwFQGJdRNXH/sQux4R1Dj1WAKcLElzeeRaXV2A=
google.golang.org/protobuf v1.36.7/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=

View File

@@ -24,7 +24,6 @@ const queries = [
function mapZodTypeToOpenAPIType(zodTypeName) {
console.log(zodTypeName)
const typeMap = {
'ZodString': 'string',
'ZodNumber': 'number',
@@ -116,4 +115,4 @@ export async function main() {
}
}
main();
main();

View File

@@ -244,9 +244,10 @@
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
},
"node_modules/axios": {
"version": "1.11.0",
"resolved": "https://registry.npmjs.org/axios/-/axios-1.11.0.tgz",
"integrity": "sha512-1Lx3WLFQWm3ooKDYZD1eXmoGO9fxYQjrycfHFC8P0sCfQVXyROp0p9PFWBehewBOdCwHc+f/b8I0fMto5eSfwA==",
"version": "1.12.2",
"resolved": "https://registry.npmjs.org/axios/-/axios-1.12.2.tgz",
"integrity": "sha512-vMJzPewAlRyOgxV2dU0Cuz2O8zzzx9VYtbJOaBgXFeLc4IV/Eg50n4LowmehOOR61S8ZMpc2K5Sa7g6A4jfkUw==",
"license": "MIT",
"dependencies": {
"follow-redirects": "^1.15.6",
"form-data": "^4.0.4",

View File

@@ -1,3 +1,3 @@
google-adk==1.15.0
google-adk==1.15.1
toolbox-core==0.5.2
pytest==8.4.2

View File

@@ -1,3 +1,3 @@
google-genai==1.42.0
google-genai==1.47.0
toolbox-core==0.5.2
pytest==8.4.2

View File

@@ -1,5 +1,5 @@
langchain==0.3.27
langchain-google-vertexai==2.1.2
langgraph==0.6.8
langgraph==1.0.1
toolbox-langchain==0.5.2
pytest==8.4.2

View File

@@ -1,4 +1,4 @@
llama-index==0.14.3
llama-index-llms-google-genai==0.6.0
llama-index==0.14.6
llama-index-llms-google-genai==0.7.1
toolbox-llamaindex==0.5.2
pytest==8.4.2

View File

@@ -13,7 +13,7 @@ In this section, we will download Toolbox, configure our tools in a
<!-- {x-release-please-start-version} -->
```bash
export OS="linux/amd64" # one of linux/amd64, darwin/arm64, darwin/amd64, or windows/amd64
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/$OS/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/$OS/toolbox
```
<!-- {x-release-please-end} -->

View File

@@ -8,7 +8,7 @@ description: >
<html>
<head>
<link rel="canonical" href="https://cloud.google.com/alloydb/docs/create-database-with-mcp-toolbox"/>
<meta http-equiv="refresh" content="0;url=https://cloud.google.com/alloydb/docs/create-database-with-mcp-toolbox"/>
<link rel="canonical" href="https://cloud.google.com/alloydb/docs/quickstart/create-and-connect"/>
<meta http-equiv="refresh" content="0;url=https://cloud.google.com/alloydb/docs/quickstart/create-and-connect"/>
</head>
</html>

View File

@@ -48,19 +48,19 @@ to expose your developer assistant tools to a Looker instance:
<!-- {x-release-please-start-version} -->
{{< tabpane persist=header >}}
{{< tab header="linux/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/linux/amd64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/linux/amd64/toolbox
{{< /tab >}}
{{< tab header="darwin/arm64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/darwin/arm64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/darwin/arm64/toolbox
{{< /tab >}}
{{< tab header="darwin/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/darwin/amd64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/darwin/amd64/toolbox
{{< /tab >}}
{{< tab header="windows/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/windows/amd64/toolbox.exe
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/windows/amd64/toolbox.exe
{{< /tab >}}
{{< /tabpane >}}
<!-- {x-release-please-end} -->
@@ -287,8 +287,15 @@ Your AI tool is now connected to Looker using MCP. Try asking your AI
assistant to list models, explores, dimensions, and measures. Run a
query, retrieve the SQL for a query, and run a saved Look.
The full tool list is available in the [Prebuilt Tools Reference](../../reference/prebuilt-tools/#looker).
The following tools are available to the LLM:
### Looker Model and Query Tools
These tools are used to get information about a Looker model
and execute queries against that model.
1. **get_models**: list the LookML models in Looker
1. **get_explores**: list the explores in a given model
1. **get_dimensions**: list the dimensions in a given explore
@@ -298,6 +305,12 @@ The following tools are available to the LLM:
1. **query**: Run a query and return the data
1. **query_sql**: Return the SQL generated by Looker for a query
1. **query_url**: Return a link to the query in Looker for further exploration
### Looker Content Tools
These tools get saved content (Looks and Dashboards) from a Looker
instance and create new saved content.
1. **get_looks**: Return the saved Looks that match a title or description
1. **run_look**: Run a saved Look and return the data
1. **make_look**: Create a saved Look in Looker and return the URL
@@ -305,6 +318,33 @@ The following tools are available to the LLM:
1. **make_dashboard**: Create a saved dashboard in Looker and return the URL
1. **add_dashboard_element**: Add a tile to a dashboard
### Looker Instance Health Tools
These tools offer the same health check algorithms that the popular
CLI [Henry](https://github.com/looker-open-source/henry) offers.
1. **health_pulse**: Check the health of a Looker intance
1. **health_analyze**: Analyze the usage of a Looker object
1. **health_vacuum**: Find LookML elements that might be unused
### LookML Authoring Tools
These tools allow enable the caller to write and modify LookML files
as well as get the database schema needed to write LookML effectively.
1. **dev_mode**: Activate dev mode.
1. **get_projects**: Get the list of LookML projects
1. **get_project_files**: Get the list of files in a project
1. **get_project_file**: Get the contents of a file in a project
1. **create_project_file**: Create a file in a project
1. **update_project_file**: Update the contents of a file in a project
1. **delete_project_file**: Delete a file in a project
1. **get_connections**: Get the list of connections
1. **get_connection_schemas**: Get the list of schemas for a connection
1. **get_connection_databases**: Get the list of databases for a connection
1. **get_connection_tables**: Get the list of tables for a connection
1. **get_connection_table_columns**: Get the list of columns for a table in a connection
{{< notice note >}}
Prebuilt tools are pre-1.0, so expect some tool changes between versions. LLMs
will adapt to the tools available, so this shouldn't affect most users.

View File

@@ -45,19 +45,19 @@ instance:
<!-- {x-release-please-start-version} -->
{{< tabpane persist=header >}}
{{< tab header="linux/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/linux/amd64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/linux/amd64/toolbox
{{< /tab >}}
{{< tab header="darwin/arm64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/darwin/arm64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/darwin/arm64/toolbox
{{< /tab >}}
{{< tab header="darwin/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/darwin/amd64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/darwin/amd64/toolbox
{{< /tab >}}
{{< tab header="windows/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/windows/amd64/toolbox.exe
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/windows/amd64/toolbox.exe
{{< /tab >}}
{{< /tabpane >}}
<!-- {x-release-please-end} -->

View File

@@ -43,19 +43,19 @@ expose your developer assistant tools to a MySQL instance:
<!-- {x-release-please-start-version} -->
{{< tabpane persist=header >}}
{{< tab header="linux/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/linux/amd64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/linux/amd64/toolbox
{{< /tab >}}
{{< tab header="darwin/arm64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/darwin/arm64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/darwin/arm64/toolbox
{{< /tab >}}
{{< tab header="darwin/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/darwin/amd64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/darwin/amd64/toolbox
{{< /tab >}}
{{< tab header="windows/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/windows/amd64/toolbox.exe
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/windows/amd64/toolbox.exe
{{< /tab >}}
{{< /tabpane >}}
<!-- {x-release-please-end} -->

View File

@@ -44,19 +44,19 @@ expose your developer assistant tools to a Neo4j instance:
<!-- {x-release-please-start-version} -->
{{< tabpane persist=header >}}
{{< tab header="linux/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/linux/amd64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/linux/amd64/toolbox
{{< /tab >}}
{{< tab header="darwin/arm64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/darwin/arm64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/darwin/arm64/toolbox
{{< /tab >}}
{{< tab header="darwin/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/darwin/amd64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/darwin/amd64/toolbox
{{< /tab >}}
{{< tab header="windows/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/windows/amd64/toolbox.exe
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/windows/amd64/toolbox.exe
{{< /tab >}}
{{< /tabpane >}}
<!-- {x-release-please-end} -->

View File

@@ -56,19 +56,19 @@ Omni](https://cloud.google.com/alloydb/omni/current/docs/overview).
<!-- {x-release-please-start-version} -->
{{< tabpane persist=header >}}
{{< tab header="linux/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/linux/amd64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/linux/amd64/toolbox
{{< /tab >}}
{{< tab header="darwin/arm64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/darwin/arm64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/darwin/arm64/toolbox
{{< /tab >}}
{{< tab header="darwin/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/darwin/amd64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/darwin/amd64/toolbox
{{< /tab >}}
{{< tab header="windows/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/windows/amd64/toolbox.exe
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/windows/amd64/toolbox.exe
{{< /tab >}}
{{< /tabpane >}}
<!-- {x-release-please-end} -->

View File

@@ -43,19 +43,19 @@ to expose your developer assistant tools to a SQLite instance:
<!-- {x-release-please-start-version} -->
{{< tabpane persist=header >}}
{{< tab header="linux/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/linux/amd64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/linux/amd64/toolbox
{{< /tab >}}
{{< tab header="darwin/arm64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/darwin/arm64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/darwin/arm64/toolbox
{{< /tab >}}
{{< tab header="darwin/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/darwin/amd64/toolbox
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/darwin/amd64/toolbox
{{< /tab >}}
{{< tab header="windows/amd64" lang="bash" >}}
curl -O https://storage.googleapis.com/genai-toolbox/v0.16.0/windows/amd64/toolbox.exe
curl -O https://storage.googleapis.com/genai-toolbox/v0.18.0/windows/amd64/toolbox.exe
{{< /tab >}}
{{< /tabpane >}}
<!-- {x-release-please-end} -->

View File

@@ -232,4 +232,4 @@ contain the specific error message needed to diagnose the problem.
the logs show errors like "permission denied" when trying to access Secret
Manager, it means the Toolbox service account is missing permissions.
* Ensure the `toolbox-identity` service account has the **Secret Manager
Secret Accessor** (`roles/secretmanager.secretAccessor`) IAM role.
Secret Accessor** (`roles/secretmanager.secretAccessor`) IAM role.

View File

@@ -43,6 +43,8 @@ details on how to connect your AI tools (IDEs) to databases via Toolbox and MCP.
* `list_replication_slots`: Lists replication slots in the database.
* `list_invalid_indexes`: Lists invalid indexes in the database.
* `get_query_plan`: Generate the execution plan of a statement.
* `list_views`: Lists views in the database from pg_views with a default
limit of 50 rows. Returns schemaname, viewname and the ownername.
## AlloyDB Postgres Admin
@@ -210,6 +212,8 @@ details on how to connect your AI tools (IDEs) to databases via Toolbox and MCP.
* `list_replication_slots`: Lists replication slots in the database.
* `list_invalid_indexes`: Lists invalid indexes in the database.
* `get_query_plan`: Generate the execution plan of a statement.
* `list_views`: Lists views in the database from pg_views with a default
limit of 50 rows. Returns schemaname, viewname and the ownername.
## Cloud SQL for PostgreSQL Observability
@@ -260,7 +264,6 @@ details on how to connect your AI tools (IDEs) to databases via Toolbox and MCP.
* `CLOUD_SQL_MSSQL_REGION`: The region of your Cloud SQL instance.
* `CLOUD_SQL_MSSQL_INSTANCE`: The ID of your Cloud SQL instance.
* `CLOUD_SQL_MSSQL_DATABASE`: The name of the database to connect to.
* `CLOUD_SQL_MSSQL_IP_ADDRESS`: The IP address of the Cloud SQL instance.
* `CLOUD_SQL_MSSQL_USER`: The database username.
* `CLOUD_SQL_MSSQL_PASSWORD`: The password for the database user.
* `CLOUD_SQL_MSSQL_IP_TYPE`: (Optional) The IP type i.e. "Public" or
@@ -492,6 +495,22 @@ details on how to connect your AI tools (IDEs) to databases via Toolbox and MCP.
* `list_replication_slots`: Lists replication slots in the database.
* `list_invalid_indexes`: Lists invalid indexes in the database.
* `get_query_plan`: Generate the execution plan of a statement.
* `list_views`: Lists views in the database from pg_views with a default
limit of 50 rows. Returns schemaname, viewname and the ownername.
## Google Cloud Serverless for Apache Spark
* `--prebuilt` value: `serverless-spark`
* **Environment Variables:**
* `SERVERLESS_SPARK_PROJECT`: The GCP project ID
* `SERVERLESS_SPARK_LOCATION`: The GCP Location.
* **Permissions:**
* **Dataproc Serverless Viewer** (`roles/dataproc.serverlessViewer`) to
view serverless batches.
* **Dataproc Serverless Editor** (`roles/dataproc.serverlessEditor`) to
view serverless batches.
* **Tools:**
* `list_batches`: Lists Spark batches.
## Spanner (GoogleSQL dialect)

View File

@@ -45,6 +45,9 @@ cluster][alloydb-free-trial].
- [`postgres-list-installed-extensions`](../tools/postgres/postgres-list-installed-extensions.md)
List installed extensions in a PostgreSQL database.
- [`postgres-list-views`](../tools/postgres/postgres-list-views.md)
List views in an AlloyDB for PostgreSQL database.
### Pre-built Configurations
- [AlloyDB using MCP](https://googleapis.github.io/genai-toolbox/how-to/connect-ide/alloydb_pg_mcp/)

View File

@@ -65,7 +65,7 @@ avoiding full table scans or complex filters.
- [`bigquery-sql`](../tools/bigquery/bigquery-sql.md)
Run SQL queries directly against BigQuery datasets.
- [`bigquery-search-catalog`](../tools/bigquery/bigquery-search_catalog.md)
- [`bigquery-search-catalog`](../tools/bigquery/bigquery-search-catalog.md)
List all entries in Dataplex Catalog (e.g. tables, views, models) that matches
given user query.
@@ -123,6 +123,7 @@ sources:
# allowedDatasets: # Optional: Restricts tool access to a specific list of datasets.
# - "my_dataset_1"
# - "other_project.my_dataset_2"
# impersonateServiceAccount: "service-account@project-id.iam.gserviceaccount.com" # Optional: Service account to impersonate
```
Initialize a BigQuery source that uses the client's access token:
@@ -138,15 +139,17 @@ sources:
# allowedDatasets: # Optional: Restricts tool access to a specific list of datasets.
# - "my_dataset_1"
# - "other_project.my_dataset_2"
# impersonateServiceAccount: "service-account@project-id.iam.gserviceaccount.com" # Optional: Service account to impersonate
```
## Reference
| **field** | **type** | **required** | **description** |
|-----------------|:--------:|:------------:|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "bigquery". |
| project | string | true | Id of the Google Cloud project to use for billing and as the default project for BigQuery resources. |
| location | string | false | Specifies the location (e.g., 'us', 'asia-northeast1') in which to run the query job. This location must match the location of any tables referenced in the query. Defaults to the table's location or 'US' if the location cannot be determined. [Learn More](https://cloud.google.com/bigquery/docs/locations) |
| writeMode | string | false | Controls the write behavior for tools. `allowed` (default): All queries are permitted. `blocked`: Only `SELECT` statements are allowed for the `bigquery-execute-sql` tool. `protected`: Enables session-based execution where all tools associated with this source instance share the same [BigQuery session](https://cloud.google.com/bigquery/docs/sessions-intro). This allows for stateful operations using temporary tables (e.g., `CREATE TEMP TABLE`). For `bigquery-execute-sql`, `SELECT` statements can be used on all tables, but write operations are restricted to the session's temporary dataset. For tools like `bigquery-sql`, `bigquery-forecast`, and `bigquery-analyze-contribution`, the `writeMode` restrictions do not apply, but they will operate within the shared session. **Note:** The `protected` mode cannot be used with `useClientOAuth: true`. It is also not recommended for multi-user server environments, as all users would share the same session. A session is terminated automatically after 24 hours of inactivity or after 7 days, whichever comes first. A new session is created on the next request, and any temporary data from the previous session will be lost. |
| allowedDatasets | []string | false | An optional list of dataset IDs that tools using this source are allowed to access. If provided, any tool operation attempting to access a dataset not in this list will be rejected. To enforce this, two types of operations are also disallowed: 1) Dataset-level operations (e.g., `CREATE SCHEMA`), and 2) operations where table access cannot be statically analyzed (e.g., `EXECUTE IMMEDIATE`, `CREATE PROCEDURE`). If a single dataset is provided, it will be treated as the default for prebuilt tools. |
| useClientOAuth | bool | false | If true, forwards the client's OAuth access token from the "Authorization" header to downstream queries. **Note:** This cannot be used with `writeMode: protected`. |
| **field** | **type** | **required** | **description** |
|---------------------------|:--------:|:------------:|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "bigquery". |
| project | string | true | Id of the Google Cloud project to use for billing and as the default project for BigQuery resources. |
| location | string | false | Specifies the location (e.g., 'us', 'asia-northeast1') in which to run the query job. This location must match the location of any tables referenced in the query. Defaults to the table's location or 'US' if the location cannot be determined. [Learn More](https://cloud.google.com/bigquery/docs/locations) |
| writeMode | string | false | Controls the write behavior for tools. `allowed` (default): All queries are permitted. `blocked`: Only `SELECT` statements are allowed for the `bigquery-execute-sql` tool. `protected`: Enables session-based execution where all tools associated with this source instance share the same [BigQuery session](https://cloud.google.com/bigquery/docs/sessions-intro). This allows for stateful operations using temporary tables (e.g., `CREATE TEMP TABLE`). For `bigquery-execute-sql`, `SELECT` statements can be used on all tables, but write operations are restricted to the session's temporary dataset. For tools like `bigquery-sql`, `bigquery-forecast`, and `bigquery-analyze-contribution`, the `writeMode` restrictions do not apply, but they will operate within the shared session. **Note:** The `protected` mode cannot be used with `useClientOAuth: true`. It is also not recommended for multi-user server environments, as all users would share the same session. A session is terminated automatically after 24 hours of inactivity or after 7 days, whichever comes first. A new session is created on the next request, and any temporary data from the previous session will be lost. |
| allowedDatasets | []string | false | An optional list of dataset IDs that tools using this source are allowed to access. If provided, any tool operation attempting to access a dataset not in this list will be rejected. To enforce this, two types of operations are also disallowed: 1) Dataset-level operations (e.g., `CREATE SCHEMA`), and 2) operations where table access cannot be statically analyzed (e.g., `EXECUTE IMMEDIATE`, `CREATE PROCEDURE`). If a single dataset is provided, it will be treated as the default for prebuilt tools. |
| useClientOAuth | bool | false | If true, forwards the client's OAuth access token from the "Authorization" header to downstream queries. **Note:** This cannot be used with `writeMode: protected`. |
| impersonateServiceAccount | string | false | Service account email to impersonate when making BigQuery and Dataplex API calls. The authenticated principal must have the `roles/iam.serviceAccountTokenCreator` role on the target service account. [Learn More](https://cloud.google.com/iam/docs/service-account-impersonation) |

View File

@@ -3,12 +3,12 @@ title: "Cassandra"
type: docs
weight: 1
description: >
Cassandra is a NoSQL distributed database known for its horizontal scalability, distributed architecture, and flexible schema definition.
Apache Cassandra is a NoSQL distributed database known for its horizontal scalability, distributed architecture, and flexible schema definition.
---
## About
[Cassandra][cassandra-docs] is a NoSQL distributed database. By design, NoSQL databases are lightweight, open-source, non-relational, and largely distributed. Counted among their strengths are horizontal scalability, distributed architectures, and a flexible approach to schema definition.
[Apache Cassandra][cassandra-docs] is a NoSQL distributed database. By design, NoSQL databases are lightweight, open-source, non-relational, and largely distributed. Counted among their strengths are horizontal scalability, distributed architectures, and a flexible approach to schema definition.
[cassandra-docs]: https://cassandra.apache.org/

View File

@@ -94,7 +94,6 @@ sources:
region: my-region
instance: my-instance
database: my_db
ipAddress: localhost
user: ${USER_NAME}
password: ${PASSWORD}
# ipType: private
@@ -107,14 +106,13 @@ instead of hardcoding your secrets into the configuration file.
## Reference
| **field** | **type** | **required** | **description** |
|-----------|:--------:|:------------:|---------------------------------------------------------------------------------------------|
| kind | string | true | Must be "cloud-sql-mssql". |
| project | string | true | Id of the GCP project that the cluster was created in (e.g. "my-project-id"). |
| region | string | true | Name of the GCP region that the cluster was created in (e.g. "us-central1"). |
| instance | string | true | Name of the Cloud SQL instance within the cluster (e.g. "my-instance"). |
| database | string | true | Name of the Cloud SQL database to connect to (e.g. "my_db"). |
| ipAddress | string | true | IP address of the Cloud SQL instance to connect to. |
| user | string | true | Name of the SQL Server user to connect as (e.g. "my-pg-user"). |
| password | string | true | Password of the SQL Server user (e.g. "my-password"). |
| ipType | string | false | IP Type of the Cloud SQL instance, must be either `public` or `private`. Default: `public`. |
| **field** | **type** | **required** | **description** |
|-----------|:--------:|:------------:|------------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "cloud-sql-mssql". |
| project | string | true | Id of the GCP project that the cluster was created in (e.g. "my-project-id"). |
| region | string | true | Name of the GCP region that the cluster was created in (e.g. "us-central1"). |
| instance | string | true | Name of the Cloud SQL instance within the cluster (e.g. "my-instance"). |
| database | string | true | Name of the Cloud SQL database to connect to (e.g. "my_db"). |
| user | string | true | Name of the SQL Server user to connect as (e.g. "my-pg-user"). |
| password | string | true | Password of the SQL Server user (e.g. "my-password"). |
| ipType | string | false | IP Type of the Cloud SQL instance, must be either `public`, `private`, or `psc`. Default: `public`. |

View File

@@ -117,13 +117,13 @@ instead of hardcoding your secrets into the configuration file.
## Reference
| **field** | **type** | **required** | **description** |
|-----------|:--------:|:------------:|---------------------------------------------------------------------------------------------|
| kind | string | true | Must be "cloud-sql-mysql". |
| project | string | true | Id of the GCP project that the cluster was created in (e.g. "my-project-id"). |
| region | string | true | Name of the GCP region that the cluster was created in (e.g. "us-central1"). |
| instance | string | true | Name of the Cloud SQL instance within the cluster (e.g. "my-instance"). |
| database | string | true | Name of the MySQL database to connect to (e.g. "my_db"). |
| user | string | true | Name of the MySQL user to connect as (e.g. "my-pg-user"). |
| password | string | true | Password of the MySQL user (e.g. "my-password"). |
| ipType | string | false | IP Type of the Cloud SQL instance; must be one of `public` or `private`. Default: `public`. |
| **field** | **type** | **required** | **description** |
|-----------|:--------:|:------------:|------------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "cloud-sql-mysql". |
| project | string | true | Id of the GCP project that the cluster was created in (e.g. "my-project-id"). |
| region | string | true | Name of the GCP region that the cluster was created in (e.g. "us-central1"). |
| instance | string | true | Name of the Cloud SQL instance within the cluster (e.g. "my-instance"). |
| database | string | true | Name of the MySQL database to connect to (e.g. "my_db"). |
| user | string | true | Name of the MySQL user to connect as (e.g. "my-pg-user"). |
| password | string | true | Password of the MySQL user (e.g. "my-password"). |
| ipType | string | false | IP Type of the Cloud SQL instance, must be either `public`, `private`, or `psc`. Default: `public`. |

View File

@@ -41,6 +41,9 @@ to a database by following these instructions][csql-pg-quickstart].
- [`postgres-list-installed-extensions`](../tools/postgres/postgres-list-installed-extensions.md)
List installed extensions in a PostgreSQL database.
- [`postgres-list-views`](../tools/postgres/postgres-list-views.md)
List views in a PostgreSQL database.
### Pre-built Configurations
- [Cloud SQL for Postgres using
@@ -150,6 +153,6 @@ instead of hardcoding your secrets into the configuration file.
| region | string | true | Name of the GCP region that the cluster was created in (e.g. "us-central1"). |
| instance | string | true | Name of the Cloud SQL instance within the cluster (e.g. "my-instance"). |
| database | string | true | Name of the Postgres database to connect to (e.g. "my_db"). |
| user | string | false | Name of the Postgres user to connect as (e.g. "my-pg-user"). Defaults to IAM auth using [ADC][adc] email if unspecified. |
| password | string | false | Password of the Postgres user (e.g. "my-password"). Defaults to attempting IAM authentication if unspecified. |
| ipType | string | false | IP Type of the Cloud SQL instance; must be one of `public` or `private`. Default: `public`. |
| user | string | false | Name of the Postgres user to connect as (e.g. "my-pg-user"). Defaults to IAM auth using [ADC][adc] email if unspecified. |
| password | string | false | Password of the Postgres user (e.g. "my-password"). Defaults to attempting IAM authentication if unspecified. |
| ipType | string | false | IP Type of the Cloud SQL instance; must be one of `public`, `private`, or `psc`. Default: `public`. |

View File

@@ -29,14 +29,6 @@ This source uses standard authentication. You will need to [create an Oracle use
[oracle-users]:
https://docs.oracle.com/en/database/oracle/oracle-database/21/sqlrf/CREATE-USER.html
### Oracle Instant Client (OIC)
The underlying database driver requires the [Oracle Instant Client][oracle-ic] libraries to connect to the database. These libraries must be installed on the machine where the application is running.
After installing the client, ensure the library path is correctly configured for your operating system (e.g., by setting the `LD_LIBRARY_PATH` environment variable on Linux or adding the directory to the `PATH` on Windows) so the application can find the necessary files at runtime.
[oracle-ic]: https://www.oracle.com/database/technologies/instant-client/downloads.html
## Connection Methods
You can configure the connection to your Oracle database using one of the following three methods. **You should only use one method** in your source configuration.

View File

@@ -35,6 +35,9 @@ reputation for reliability, feature robustness, and performance.
- [`postgres-list-installed-extensions`](../tools/postgres/postgres-list-installed-extensions.md)
List installed extensions in a PostgreSQL database.
- [`postgres-list-views`](../tools/postgres/postgres-list-views.md)
List views in a PostgreSQL database.
### Pre-built Configurations
- [PostgreSQL using MCP](https://googleapis.github.io/genai-toolbox/how-to/connect-ide/postgres_mcp/)

View File

@@ -0,0 +1,59 @@
---
title: "Serverless for Apache Spark"
type: docs
weight: 1
description: >
Google Cloud Serverless for Apache Spark lets you run Spark workloads without requiring you to provision and manage your own Spark cluster.
---
## About
The [Serverless for Apache
Spark](https://cloud.google.com/dataproc-serverless/docs/overview) source allows
Toolbox to interact with Spark batches hosted on Google Cloud Serverless for
Apache Spark.
## Available Tools
- [`serverless-spark-list-batches`](../tools/serverless-spark/serverless-spark-list-batches.md)
List and filter Serverless Spark batches.
- [`serverless-spark-get-batch`](../tools/serverless-spark/serverless-spark-get-batch.md)
Get a Serverless Spark batch.
## Requirements
### IAM Permissions
Serverless for Apache Spark uses [Identity and Access Management
(IAM)](https://cloud.google.com/bigquery/docs/access-control) to control user
and group access to serverless Spark resources like batches and sessions.
Toolbox will use your [Application Default Credentials
(ADC)](https://cloud.google.com/docs/authentication#adc) to authorize and
authenticate when interacting with Google Cloud Serverless for Apache Spark.
When using this method, you need to ensure the IAM identity associated with your
ADC has the correct
[permissions](https://cloud.google.com/dataproc-serverless/docs/concepts/iam)
for the actions you intend to perform. Common roles include
`roles/dataproc.serverlessEditor` (which includes permissions to run batches) or
`roles/dataproc.serverlessViewer`. Follow this
[guide](https://cloud.google.com/docs/authentication/provide-credentials-adc) to
set up your ADC.
## Example
```yaml
sources:
my-serverless-spark-source:
kind: serverless-spark
project: my-project-id
location: us-central1
```
## Reference
| **field** | **type** | **required** | **description** |
| --------- | :------: | :----------: | ----------------------------------------------------------------- |
| kind | string | true | Must be "serverless-spark". |
| project | string | true | ID of the GCP project with Serverless for Apache Spark resources. |
| location | string | true | Location containing Serverless for Apache Spark resources. |

View File

@@ -31,6 +31,9 @@ the Google Cloud console][spanner-quickstart].
- [`spanner-execute-sql`](../tools/spanner/spanner-execute-sql.md)
Run structured and parameterized queries on Spanner.
- [`spanner-list-tables`](../tools/spanner/spanner-list-tables.md)
Retrieve schema information about tables in a Spanner database.
### Pre-built Configurations
- [Spanner using MCP](https://googleapis.github.io/genai-toolbox/how-to/connect-ide/spanner_mcp/)

View File

@@ -77,13 +77,18 @@ the parameter.
description: Airline unique 2 letter identifier
```
| **field** | **type** | **required** | **description** |
|-------------|:---------------:|:------------:|-----------------------------------------------------------------------------|
| name | string | true | Name of the parameter. |
| type | string | true | Must be one of "string", "integer", "float", "boolean" "array" |
| description | string | true | Natural language description of the parameter to describe it to the agent. |
| default | parameter type | false | Default value of the parameter. If provided, `required` will be `false`. |
| required | bool | false | Indicate if the parameter is required. Default to `true`. |
| **field** | **type** | **required** | **description** |
|----------------|:--------------:|:------------:|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| name | string | true | Name of the parameter. |
| type | string | true | Must be one of "string", "integer", "float", "boolean" "array" |
| description | string | true | Natural language description of the parameter to describe it to the agent. |
| default | parameter type | false | Default value of the parameter. If provided, `required` will be `false`. |
| required | bool | false | Indicate if the parameter is required. Default to `true`. |
| allowedValues | []string | false | Input value will be checked against this field. Regex is also supported. |
| excludedValues | []string | false | Input value will be checked against this field. Regex is also supported. |
| escape | string | false | Only available for type `string`. Indicate the escaping delimiters used for the parameter. This field is intended to be used with templateParameters. Must be one of "single-quotes", "double-quotes", "backticks", "square-brackets". |
| minValue | int or float | false | Only available for type `integer` and `float`. Indicate the minimum value allowed. |
| maxValue | int or float | false | Only available for type `integer` and `float`. Indicate the maximum value allowed. |
### Array Parameters
@@ -104,14 +109,16 @@ in the list using the items field:
SELECT * FROM airlines WHERE preferred_airlines = ANY($1);
```
| **field** | **type** | **required** | **description** |
|-------------|:----------------:|:------------:|-----------------------------------------------------------------------------|
| name | string | true | Name of the parameter. |
| type | string | true | Must be "array" |
| description | string | true | Natural language description of the parameter to describe it to the agent. |
| default | parameter type | false | Default value of the parameter. If provided, `required` will be `false`. |
| required | bool | false | Indicate if the parameter is required. Default to `true`. |
| items | parameter object | true | Specify a Parameter object for the type of the values in the array. |
| **field** | **type** | **required** | **description** |
|----------------|:----------------:|:------------:|----------------------------------------------------------------------------|
| name | string | true | Name of the parameter. |
| type | string | true | Must be "array" |
| description | string | true | Natural language description of the parameter to describe it to the agent. |
| default | parameter type | false | Default value of the parameter. If provided, `required` will be `false`. |
| required | bool | false | Indicate if the parameter is required. Default to `true`. |
| allowedValues | []string | false | Input value will be checked against this field. Regex is also supported. |
| excludedValues | []string | false | Input value will be checked against this field. Regex is also supported. |
| items | parameter object | true | Specify a Parameter object for the type of the values in the array. |
{{< notice note >}}
Items in array should not have a `default` or `required` value. If provided, it
@@ -181,10 +188,10 @@ user's ID token.
field: sub
```
| **field** | **type** | **required** | **description** |
|-----------|:--------:|:------------:|-----------------------------------------------------------------------------------------|
| name | string | true | Name of the [authServices](../authServices/) used to verify the OIDC auth token. |
| field | string | true | Claim field decoded from the OIDC token used to auto-populate this parameter. |
| **field** | **type** | **required** | **description** |
|-----------|:--------:|:------------:|----------------------------------------------------------------------------------|
| name | string | true | Name of the [authServices](../authServices/) used to verify the OIDC auth token. |
| field | string | true | Claim field decoded from the OIDC token used to auto-populate this parameter. |
### Template Parameters
@@ -206,6 +213,14 @@ table names, they are prone to SQL injections. Basic parameters are preferred
for performance and safety reasons.
{{< /notice >}}
{{< notice tip >}}
To minimize SQL injection risk when using template parameters, always provide
the `allowedValues` field within the parameter to restrict inputs.
Alternatively, for `string` type parameters, you can use the `escape` field to
add delimiters to the identifier. For `integer` or `float` type parameters, you
can use `minValue` and `maxValue` to define the allowable range.
{{< /notice >}}
```yaml
tools:
select_columns_from_table:
@@ -231,14 +246,19 @@ tools:
name: column
type: string
description: Name of a column to select
escape: double-quotes # with this, the statement will resolve to `SELECT "id", "name" FROM flights`
```
| **field** | **type** | **required** | **description** |
|-------------|:----------------:|:-------------:|-------------------------------------------------------------------------------------|
| name | string | true | Name of the template parameter. |
| type | string | true | Must be one of "string", "integer", "float", "boolean" "array" |
| description | string | true | Natural language description of the template parameter to describe it to the agent. |
| items | parameter object |true (if array)| Specify a Parameter object for the type of the values in the array (string only). |
| **field** | **type** | **required** | **description** |
|----------------|:----------------:|:---------------:|-------------------------------------------------------------------------------------|
| name | string | true | Name of the template parameter. |
| type | string | true | Must be one of "string", "integer", "float", "boolean", "array" |
| description | string | true | Natural language description of the template parameter to describe it to the agent. |
| default | parameter type | false | Default value of the parameter. If provided, `required` will be `false`. |
| required | bool | false | Indicate if the parameter is required. Default to `true`. |
| allowedValues | []string | false | Input value will be checked against this field. Regex is also supported. |
| excludedValues | []string | false | Input value will be checked against this field. Regex is also supported. |
| items | parameter object | true (if array) | Specify a Parameter object for the type of the values in the array (string only). |
## Authorized Invocations

View File

@@ -46,6 +46,13 @@ The behavior of this tool is influenced by the `writeMode` setting on its `bigqu
tools using the same source. This allows the `input_data` parameter to be a query that references temporary resources (e.g.,
`TEMP` tables) created within that session.
The tool's behavior is also influenced by the `allowedDatasets` restriction on the `bigquery` source:
- **Without `allowedDatasets` restriction:** The tool can use any table or query for the `input_data` parameter.
- **With `allowedDatasets` restriction:** The tool verifies that the `input_data` parameter only accesses tables within the allowed datasets.
- If `input_data` is a table ID, the tool checks if the table's dataset is in the allowed list.
- If `input_data` is a query, the tool performs a dry run to analyze the query and rejects it if it accesses any table outside the allowed list.
## Example

View File

@@ -15,10 +15,19 @@ It's compatible with the following sources:
- [bigquery](../../sources/bigquery.md)
`bigquery-get-dataset-info` takes a `dataset` parameter to specify the dataset
on the given source. It also optionally accepts a `project` parameter to
define the Google Cloud project ID. If the `project` parameter is not provided,
the tool defaults to using the project defined in the source configuration.
`bigquery-get-dataset-info` accepts the following parameters:
- **`dataset`** (required): Specifies the dataset for which to retrieve metadata.
- **`project`** (optional): Defines the Google Cloud project ID. If not provided,
the tool defaults to the project from the source configuration.
The tool's behavior regarding these parameters is influenced by the
`allowedDatasets` restriction on the `bigquery` source:
- **Without `allowedDatasets` restriction:** The tool can retrieve metadata for
any dataset specified by the `dataset` and `project` parameters.
- **With `allowedDatasets` restriction:** Before retrieving metadata, the tool
verifies that the requested dataset is in the allowed list. If it is not, the
request is denied. If only one dataset is specified in the `allowedDatasets`
list, it will be used as the default value for the `dataset` parameter.
## Example

View File

@@ -14,12 +14,12 @@ aliases:
A `cassandra-cql` tool executes a pre-defined CQL statement against a Cassandra
database. It's compatible with any of the following sources:
- [cassandra](../sources/cassandra.md)
- [cassandra](../../sources/cassandra.md)
The specified CQL statement is executed as a [prepared statement][cassandra-prepare],
and expects parameters in the CQL query to be in the form of placeholders `?`.
[cassandra-prepare]: https://docs.datastax.com/en/developer/go-driver/4.8/cql-prepared-statements/
[cassandra-prepare]: https://docs.datastax.com/en/datastax-drivers/developing/prepared-statements.html
## Example

View File

@@ -13,7 +13,7 @@ aliases:
A `dataplex-lookup-entry` tool returns details of a particular entry in Dataplex
Catalog. It's compatible with the following sources:
- [dataplex](../sources/dataplex.md)
- [dataplex](../../sources/dataplex.md)
`dataplex-lookup-entry` takes a required `name` parameter which contains the
project and location to which the request should be attributed in the following

View File

@@ -14,7 +14,7 @@ aliases:
A `firebird-execute-sql` tool executes a SQL statement against a Firebird
database. It's compatible with the following source:
- [firebird](../sources/firebird.md)
- [firebird](../../sources/firebird.md)
`firebird-execute-sql` takes one input parameter `sql` and runs the sql
statement against the `source`.

View File

@@ -14,7 +14,7 @@ aliases:
A `firebird-sql` tool executes a pre-defined SQL statement against a Firebird
database. It's compatible with the following source:
- [firebird](../sources/firebird.md)
- [firebird](../../sources/firebird.md)
The specified SQL statement is executed as a [prepared statement][fb-prepare],
and supports both positional parameters (`?`) and named parameters (`:param_name`).
@@ -102,7 +102,7 @@ tools:
> including identifiers, column names, and table names. **This makes it more
> vulnerable to SQL injections**. Using basic parameters only (see above) is
> recommended for performance and safety reasons. For more details, please check
> [templateParameters](_index#template-parameters).
> [templateParameters](../#template-parameters).
```yaml
tools:
@@ -131,5 +131,5 @@ tools:
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |
| statement | string | true | SQL statement to execute on. |
| parameters | [parameters](_index#specifying-parameters) | false | List of [parameters](_index#specifying-parameters) that will be inserted into the SQL statement. |
| templateParameters | [templateParameters](_index#template-parameters) | false | List of [templateParameters](_index#template-parameters) that will be inserted into the SQL statement before executing prepared statement. |
| parameters | [parameters](../#specifying-parameters) | false | List of [parameters](../#specifying-parameters) that will be inserted into the SQL statement. |
| templateParameters | [templateParameters](../#template-parameters) | false | List of [templateParameters](../#template-parameters) that will be inserted into the SQL statement before executing prepared statement. |

View File

@@ -55,8 +55,8 @@ tools:
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-add-dashboard-element" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-add-dashboard-element" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -38,7 +38,7 @@ tools:
## Reference
| **field** | **type** | **required** | **description** |
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "lookerca-conversational-analytics". |
| source | string | true | Name of the source the SQL should execute on. |

View File

@@ -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. |

View File

@@ -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. |

View File

@@ -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. |

View File

@@ -0,0 +1,41 @@
---
title: "looker-get-connection-databases"
type: docs
weight: 1
description: >
A "looker-get-connection-databases" tool returns all the databases in a connection.
aliases:
- /resources/tools/looker-get-connection-databases
---
## About
A `looker-get-connection-databases` tool returns all the databases in a connection.
It's compatible with the following sources:
- [looker](../../sources/looker.md)
`looker-get-connection-databases` accepts a `conn` parameter.
## Example
```yaml
tools:
get_connection_databases:
kind: looker-get-connection-databases
source: looker-source
description: |
get_connection_databases Tool
This tool will list the databases available from a connection if the connection
supports multiple databases.
```
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-get-connection-databases". |
| source | string | true | Name of the source Looker instance. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -0,0 +1,41 @@
---
title: "looker-get-connection-schemas"
type: docs
weight: 1
description: >
A "looker-get-connection-schemas" tool returns all the schemas in a connection.
aliases:
- /resources/tools/looker-get-connection-schemas
---
## About
A `looker-get-connection-schemas` tool returns all the schemas in a connection.
It's compatible with the following sources:
- [looker](../../sources/looker.md)
`looker-get-connection-schemas` accepts a `conn` parameter and an optional `db` parameter.
## Example
```yaml
tools:
get_connection_schemas:
kind: looker-get-connection-schemas
source: looker-source
description: |
get_connection_schemas Tool
This tool will list the schemas available from a connection, filtered by
an optional database name.
```
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-get-connection-schemas". |
| source | string | true | Name of the source Looker instance. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -0,0 +1,43 @@
---
title: "looker-get-connection-table-columns"
type: docs
weight: 1
description: >
A "looker-get-connection-table-columns" tool returns all the columns for each table specified.
aliases:
- /resources/tools/looker-get-connection-table-columns
---
## About
A `looker-get-connection-table-columns` tool returns all the columnes for each table specified.
It's compatible with the following sources:
- [looker](../../sources/looker.md)
`looker-get-connection-table-columns` accepts a `conn` parameter, a `schema` parameter, a `tables` parameter with a comma separated list of tables, and an optional `db` parameter.
## Example
```yaml
tools:
get_connection_table_columns:
kind: looker-get-connection-table-columns
source: looker-source
description: |
get_connection_table_columns Tool
This tool will list the columns available from a connection, for all the tables
given in a comma separated list of table names, filtered by the
schema name and optional database name.
```
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-get-connection-table-columns". |
| source | string | true | Name of the source Looker instance. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -0,0 +1,41 @@
---
title: "looker-get-connection-tables"
type: docs
weight: 1
description: >
A "looker-get-connection-tables" tool returns all the tables in a connection.
aliases:
- /resources/tools/looker-get-connection-tables
---
## About
A `looker-get-connection-tables` tool returns all the tables in a connection.
It's compatible with the following sources:
- [looker](../../sources/looker.md)
`looker-get-connection-tables` accepts a `conn` parameter, a `schema` parameter, and an optional `db` parameter.
## Example
```yaml
tools:
get_connection_tables:
kind: looker-get-connection-tables
source: looker-source
description: |
get_connection_tables Tool
This tool will list the tables available from a connection, filtered by the
schema name and optional database name.
```
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-get-connection-tables". |
| source | string | true | Name of the source Looker instance. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -0,0 +1,42 @@
---
title: "looker-get-connections"
type: docs
weight: 1
description: >
A "looker-get-connections" tool returns all the connections in the source.
aliases:
- /resources/tools/looker-get-connections
---
## About
A `looker-get-connections` tool returns all the connections in the source.
It's compatible with the following sources:
- [looker](../../sources/looker.md)
`looker-get-connections` accepts no parameters.
## Example
```yaml
tools:
get_connections:
kind: looker-get-connections
source: looker-source
description: |
get_connections Tool
This tool will list all the connections available in the Looker system, as
well as the dialect name, the default schema, the database if applicable,
and whether the connection supports multiple databases.
```
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-get-connections". |
| source | string | true | Name of the source Looker instance. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -52,8 +52,8 @@ tools:
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-get-dashboards" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-get-dashboards" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -60,8 +60,8 @@ The response is a json array with the following elements:
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-get-dimensions". |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-get-dimensions". |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -53,8 +53,8 @@ tools:
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-get-looks" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-get-looks" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -33,8 +33,8 @@ tools:
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-get-models". |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-get-models". |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -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. |

View File

@@ -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. |

View File

@@ -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. |

View File

@@ -18,46 +18,40 @@ The `looker-health-analyze` tool performs various analysis tasks on a Looker ins
## Parameters
| **field** | **type** | **required** | **description** |
| :--- | :--- | :--- | :--- |
| kind | string | true | Must be "looker-health-analyze" |
| source | string | true | Looker source name |
| action | string | true | The analysis to perform: `projects`, `models`, or `explores`. |
| project | string | false | The name of the Looker project to analyze. |
| model | string | false | The name of the Looker model to analyze. Required for `explores` actions. |
| explore | string | false | The name of the Looker explore to analyze. Required for the `explores` action. |
| timeframe | int | false | The timeframe in days to analyze. Defaults to 90. |
| min_queries | int | false | The minimum number of queries for a model or explore to be considered used. Defaults to 1. |
| **field** | **type** | **required** | **description** |
|:------------|:---------|:-------------|:-------------------------------------------------------------------------------------------|
| action | string | true | The analysis to perform: `projects`, `models`, or `explores`. |
| project | string | false | The name of the Looker project to analyze. |
| model | string | false | The name of the Looker model to analyze. Required for `explores` actions. |
| explore | string | false | The name of the Looker explore to analyze. Required for the `explores` action. |
| timeframe | int | false | The timeframe in days to analyze. Defaults to 90. |
| min_queries | int | false | The minimum number of queries for a model or explore to be considered used. Defaults to 1. |
## Example
Analyze all models in `thelook` project.
```yaml
tools:
analyze-tool:
health_analyze:
kind: looker-health-analyze
source: looker-source
description: |
Analyzes Looker projects, models, and explores.
Specify the `action` parameter to select the type of analysis.
parameters:
action: models
project: "thelook"
health-analyze Tool
Analyze all the explores in the `ecomm` model of `thelook` project. Specifically look at usage within the past 20 days. Usage minimum should be at least 10 queries.
This tool calculates the usage of projects, models and explores.
```yaml
tools:
analyze-tool:
kind: looker-health-analyze
source: looker-source
description: |
Analyzes Looker projects, models, and explores.
Specify the `action` parameter to select the type of analysis.
parameters:
action: explores
project: "thelook"
model: "ecomm"
timeframe: 20
min_queries: 10
It accepts 6 parameters:
1. `action`: can be "projects", "models", or "explores"
2. `project`: the project to analyze (optional)
3. `model`: the model to analyze (optional)
4. `explore`: the explore to analyze (optional)
5. `timeframe`: the lookback period in days, default is 90
6. `min_queries`: the minimum number of queries to consider a resource as active, default is 1
```
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-health-analyze" |
| source | string | true | Looker source name |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -17,33 +17,15 @@ The `looker-health-pulse` tool performs health checks on a Looker instance. The
- `check_dashboard_errors`: Lists dashboards with erroring queries in the last 7 days.
- `check_explore_performance`: Lists the slowest explores in the last 7 days and reports average query runtime.
- `check_schedule_failures`: Lists schedules that have failed in the last 7 days.
- `check_legacy_features`: Lists enabled legacy features. (*To note, this function is not available in Looker Core. You will get an error running this command with a Core instance configured.*)
- `check_legacy_features`: Lists enabled legacy features. (*To note, this function is not
available in Looker Core.*)
## Parameters
| **field** | **type** | **required** | **description** |
|---------------|:--------:|:------------:|---------------------------------------------|
| kind | string | true | Must be "looker-health-pulse" |
| source | string | true | Looker source name |
| action | string | true | The health check to perform |
## Example
```yaml
tools:
pulse:
kind: looker-health-pulse
source: looker-source
description: |
Pulse Tool
Performs health checks on Looker instance.
Specify the `action` parameter to select the check.
parameters:
action: check_dashboard_performance
```
## Reference
| **action** | **description** |
|---------------------------|--------------------------------------------------------------------------------|
@@ -52,4 +34,36 @@ tools:
| check_dashboard_errors | Lists dashboards with erroring queries in the last 7 days |
| check_explore_performance | Lists slowest explores and average query runtime |
| check_schedule_failures | Lists failed schedules in the last 7 days |
| check_legacy_features | Lists enabled legacy features |
| check_legacy_features | Lists enabled legacy features |
## Example
```yaml
tools:
health_pulse:
kind: looker-health-pulse
source: looker-source
description: |
health-pulse Tool
This tool takes the pulse of a Looker instance by taking
one of the following actions:
1. `check_db_connections`,
2. `check_dashboard_performance`,
3. `check_dashboard_errors`,
4. `check_explore_performance`,
5. `check_schedule_failures`, or
6. `check_legacy_features`
The `check_legacy_features` action is only available in Looker Core. If
it is called on a Looker Core instance, you will get a notice. That notice
should not be reported as an error.
```
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-health-pulse" |
| source | string | true | Looker source name |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -17,16 +17,14 @@ The `looker-health-vacuum` tool helps you identify unused LookML objects such as
## Parameters
| **field** | **type** | **required** | **description** |
| :--- | :--- | :--- | :--- |
| kind | string | true | Must be "looker-health-vacuum" |
| source | string | true | Looker source name |
| action | string | true | The vacuum to perform: `models`, or `explores`. |
| project | string | false | The name of the Looker project to vacuum. |
| model | string | false | The name of the Looker model to vacuum. |
| explore | string | false | The name of the Looker explore to vacuum. |
| timeframe | int | false | The timeframe in days to analyze for usage. Defaults to 90. |
| min_queries | int | false | The minimum number of queries for an object to be considered used. Defaults to 1. |
| **field** | **type** | **required** | **description** |
|:------------|:---------|:-------------|:----------------------------------------------------------------------------------|
| action | string | true | The vacuum to perform: `models`, or `explores`. |
| project | string | false | The name of the Looker project to vacuum. |
| model | string | false | The name of the Looker model to vacuum. |
| explore | string | false | The name of the Looker explore to vacuum. |
| timeframe | int | false | The timeframe in days to analyze for usage. Defaults to 90. |
| min_queries | int | false | The minimum number of queries for an object to be considered used. Defaults to 1. |
## Example
@@ -34,30 +32,29 @@ Identify unnused fields (*in this case, less than 1 query in the last 20 days*)
```yaml
tools:
vacuum-tool:
health_vacuum:
kind: looker-health-vacuum
source: looker-source
description: |
Vacuums the Looker instance by identifying unused explores, fields, and joins.
parameters:
action: explores
project: "thelook_core"
model: "thelook"
explore: "order_items"
timeframe: 20
min_queries: 1
health-vacuum Tool
This tool suggests models or explores that can removed
because they are unused.
It accepts 6 parameters:
1. `action`: can be "models" or "explores"
2. `project`: the project to vacuum (optional)
3. `model`: the model to vacuum (optional)
4. `explore`: the explore to vacuum (optional)
5. `timeframe`: the lookback period in days, default is 90
6. `min_queries`: the minimum number of queries to consider a resource as active, default is 1
The result is a list of objects that are candidates for deletion.
```
Identify unnused explores across all models in `thelook_core` project.
```yaml
tools:
vacuum-tool:
kind: looker-health-vacuum
source: looker-source
description: |
Vacuums the Looker instance by identifying unused explores, fields, and joins.
parameters:
action: models
project: "thelook_core"
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-health-vacuum" |
| source | string | true | Looker source name |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -46,8 +46,8 @@ tools:
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-make-dashboard" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-make-dashboard" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -58,8 +58,8 @@ tools:
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-make-look" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-make-look" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -77,8 +77,8 @@ tools:
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-query-sql" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-query-sql" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -485,8 +485,8 @@ tools:
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-query-url" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-query-url" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -61,6 +61,8 @@ tools:
"field.id2": "condition2", ...}. Do not put the field.id in
quotes. Filter expressions can be found at
https://cloud.google.com/looker/docs/filter-expressions.
If the condition is a string that contains a comma, use a second
set of quotes. For example, {"user.city": "'New York, NY'"}.
Sorts can be specified like [ "field.id desc 0" ].
@@ -77,8 +79,8 @@ tools:
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-query" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-query" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -36,8 +36,8 @@ tools:
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:------------------------------------------:|:------------:|--------------------------------------------------------------------------------------------------|
| kind | string | true | Must be "looker-run-look" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:------------:|----------------------------------------------------|
| kind | string | true | Must be "looker-run-look" |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |

View File

@@ -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. |

View File

@@ -54,4 +54,4 @@ tools:
| database | string | true | The name of the MongoDB database containing the collection. |
| collection | string | true | The name of the MongoDB collection from which to delete documents. |
| filterPayload | string | true | The MongoDB query filter document to select the documents for deletion. Uses `{{json .param_name}}` for templating. |
| filterParams | list | true | A list of parameter objects that define the variables used in the `filterPayload`. |
| filterParams | list | false | A list of parameter objects that define the variables used in the `filterPayload`. |

View File

@@ -58,4 +58,4 @@ tools:
| database | string | true | The name of the MongoDB database containing the collection. |
| collection | string | true | The name of the MongoDB collection from which to delete a document. |
| filterPayload | string | true | The MongoDB query filter document to select the document for deletion. Uses `{{json .param_name}}` for templating. |
| filterParams | list | true | A list of parameter objects that define the variables used in the `filterPayload`. |
| filterParams | list | false | A list of parameter objects that define the variables used in the `filterPayload`. |

View File

@@ -61,7 +61,7 @@ tools:
| database | string | true | The name of the MongoDB database to query. |
| collection | string | true | The name of the MongoDB collection to query. |
| filterPayload | string | true | The MongoDB query filter document to select the document. Uses `{{json .param_name}}` for templating. |
| filterParams | list | true | A list of parameter objects that define the variables used in the `filterPayload`. |
| filterParams | list | false | A list of parameter objects that define the variables used in the `filterPayload`. |
| projectPayload | string | false | An optional MongoDB projection document to specify which fields to include (1) or exclude (0) in the result. |
| projectParams | list | false | A list of parameter objects for the `projectPayload`. |
| sortPayload | string | false | An optional MongoDB sort document. Useful for selecting which document to return if the filter matches multiple (e.g., get the most recent). |

View File

@@ -68,7 +68,7 @@ tools:
| database | string | true | The name of the MongoDB database to query. |
| collection | string | true | The name of the MongoDB collection to query. |
| filterPayload | string | true | The MongoDB query filter document to select which documents to return. Uses `{{json .param_name}}` for templating. |
| filterParams | list | true | A list of parameter objects that define the variables used in the `filterPayload`. |
| filterParams | list | false | A list of parameter objects that define the variables used in the `filterPayload`. |
| projectPayload | string | false | An optional MongoDB projection document to specify which fields to include (1) or exclude (0) in the results. |
| projectParams | list | false | A list of parameter objects for the `projectPayload`. |
| sortPayload | string | false | An optional MongoDB sort document to define the order of the returned documents. Use 1 for ascending and -1 for descending. |

View File

@@ -65,7 +65,7 @@ tools:
| database | string | true | The name of the MongoDB database containing the collection. |
| collection | string | true | The name of the MongoDB collection in which to update documents. |
| filterPayload | string | true | The MongoDB query filter document to select the documents for updating. It's written as a Go template, using `{{json .param_name}}` to insert parameters. |
| filterParams | list | true | A list of parameter objects that define the variables used in the `filterPayload`. |
| filterParams | list | false | A list of parameter objects that define the variables used in the `filterPayload`. |
| updatePayload | string | true | The MongoDB update document, It's written as a Go template, using `{{json .param_name}}` to insert parameters. |
| updateParams | list | true | A list of parameter objects that define the variables used in the `updatePayload`. |
| canonical | bool | true | Determines if the `filterPayload` and `updatePayload` strings are parsed using MongoDB's Canonical or Relaxed Extended JSON format. **Canonical** is stricter about type representation, while **Relaxed** is more lenient. |

View File

@@ -65,7 +65,7 @@ tools:
| database | string | true | The name of the MongoDB database containing the collection. |
| collection | string | true | The name of the MongoDB collection to update a document in. |
| filterPayload | string | true | The MongoDB query filter document to select the document for updating. It's written as a Go template, using `{{json .param_name}}` to insert parameters. |
| filterParams | list | true | A list of parameter objects that define the variables used in the `filterPayload`. |
| filterParams | list | false | A list of parameter objects that define the variables used in the `filterPayload`. |
| updatePayload | string | true | The MongoDB update document, which specifies the modifications. This often uses update operators like `$set`. It's written as a Go template, using `{{json .param_name}}` to insert parameters. |
| updateParams | list | true | A list of parameter objects that define the variables used in the `updatePayload`. |
| canonical | bool | true | Determines if the `updatePayload` string is parsed using MongoDB's Canonical or Relaxed Extended JSON format. **Canonical** is stricter about type representation (e.g., `{"$numberInt": "42"}`), while **Relaxed** is more lenient (e.g., `42`). |

View File

@@ -27,8 +27,9 @@ Cypher](https://neo4j.com/docs/cypher-manual/current/queries/) syntax and
supports all Cypher features, including pattern matching, filtering, and
aggregation.
`neo4j-execute-cypher` takes one input parameter `cypher` and run the cypher
query against the `source`.
`neo4j-execute-cypher` takes a required input parameter `cypher` and run the cypher
query against the `source`. It also supports an optional `dry_run`
parameter to validate a query without executing it.
> **Note:** This tool is intended for developer assistant workflows with
> human-in-the-loop and shouldn't be used for production agents.

View File

@@ -13,7 +13,7 @@ aliases:
An `oceanbase-execute-sql` tool executes a SQL statement against an OceanBase
database. It's compatible with the following source:
- [oceanbase](../sources/oceanbase.md)
- [oceanbase](../../sources/oceanbase.md)
`oceanbase-execute-sql` takes one input parameter `sql` and runs the sql
statement against the `source`.

View File

@@ -13,7 +13,7 @@ aliases:
An `oceanbase-sql` tool executes a pre-defined SQL statement against an
OceanBase database. It's compatible with the following source:
- [oceanbase](../sources/oceanbase.md)
- [oceanbase](../../sources/oceanbase.md)
The specified SQL statement is executed as a [prepared
statement][mysql-prepare], and expects parameters in the SQL query to be in the
@@ -125,5 +125,5 @@ tools:
| source | string | true | Name of the source the SQL should execute on. |
| description | string | true | Description of the tool that is passed to the LLM. |
| statement | string | true | SQL statement to execute on. |
| parameters | [parameters](_index#specifying-parameters) | false | List of [parameters](_index#specifying-parameters) that will be inserted into the SQL statement. |
| templateParameters | [templateParameters](_index#template-parameters) | false | List of [templateParameters](_index#template-parameters) that will be inserted into the SQL statement before executing prepared statement. |
| parameters | [parameters](..#specifying-parameters) | false | List of [parameters](..#specifying-parameters) that will be inserted into the SQL statement. |
| templateParameters | [templateParameters](..#template-parameters) | false | List of [templateParameters](..#template-parameters) that will be inserted into the SQL statement before executing prepared statement. |

View File

@@ -0,0 +1,40 @@
---
title: "postgres-list-views"
type: docs
weight: 1
description: >
The "postgres-list-views" tool lists views in a Postgres database, with a default limit of 50 rows.
aliases:
- /resources/tools/postgres-list-views
---
## About
The `postgres-list-views` tool retrieves a list of top N (default 50) views from a Postgres database, excluding those in system schemas (`pg_catalog`, `information_schema`). It's compatible with any of the following sources:
- [alloydb-postgres](../../sources/alloydb-pg.md)
- [cloud-sql-postgres](../../sources/cloud-sql-pg.md)
- [postgres](../../sources/postgres.md)
`postgres-list-views` lists detailed view information (schemaname, viewname, ownername) as JSON for views in a database. The tool takes the following input parameters:
- `viewname` (optional): A string pattern to filter view names. The search uses SQL
LIKE operator to filter the views. Default: `""`
- `limit` (optional): The maximum number of rows to return. Default: `50`.
## Example
```yaml
tools:
list_views:
kind: postgres-list-views
source: cloudsql-pg-source
```
## Reference
| **field** | **type** | **required** | **description** |
|-------------|:--------:|:-------------:|------------------------------------------------------|
| kind | string | true | Must be "postgres-list-views". |
| source | string | true | Name of the source the SQL should execute on. |
| description | string | false | Description of the tool that is passed to the agent. |

View File

@@ -0,0 +1,10 @@
---
title: "Serverless for Apache Spark"
type: docs
weight: 1
description: >
Tools that work with Google Cloud Serverless for Apache Spark Sources.
---
- [serverless-spark-get-batch](./serverless-spark-get-batch.md)
- [serverless-spark-list-batches](./serverless-spark-list-batches.md)

View File

@@ -0,0 +1,84 @@
---
title: "serverless-spark-get-batch"
type: docs
weight: 1
description: >
A "serverless-spark-get-batch" tool gets a single Spark batch from the source.
aliases:
- /resources/tools/serverless-spark-get-batch
---
# serverless-spark-get-batch
The `serverless-spark-get-batch` tool allows you to retrieve a specific
Serverless Spark batch job. It's compatible with the following sources:
- [serverless-spark](../../sources/serverless-spark.md)
`serverless-spark-list-batches` accepts the following parameters:
- **`name`**: The short name of the batch, e.g. for
`projects/my-project/locations/us-central1/my-batch`, pass `my-batch`.
The tool gets the `project` and `location` from the source configuration.
## Example
```yaml
tools:
get_my_batch:
kind: serverless-spark-get-batch
source: my-serverless-spark-source
description: Use this tool to get a serverless spark batch.
```
## Response Format
The response is a full Batch JSON object as defined in the [API
spec](https://cloud.google.com/dataproc-serverless/docs/reference/rest/v1/projects.locations.batches#Batch).
Example with a reduced set of fields:
```json
{
"createTime": "2025-10-10T15:15:21.303146Z",
"creator": "alice@example.com",
"labels": {
"goog-dataproc-batch-uuid": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
"goog-dataproc-location": "us-central1"
},
"name": "projects/google.com:hadoop-cloud-dev/locations/us-central1/batches/alice-20251010-abcd",
"operation": "projects/google.com:hadoop-cloud-dev/regions/us-central1/operations/11111111-2222-3333-4444-555555555555",
"runtimeConfig": {
"properties": {
"spark:spark.driver.cores": "4",
"spark:spark.driver.memory": "12200m"
}
},
"sparkBatch": {
"jarFileUris": ["file:///usr/lib/spark/examples/jars/spark-examples.jar"],
"mainClass": "org.apache.spark.examples.SparkPi"
},
"state": "SUCCEEDED",
"stateHistory": [
{
"state": "PENDING",
"stateStartTime": "2025-10-10T15:15:21.303146Z"
},
{
"state": "RUNNING",
"stateStartTime": "2025-10-10T15:16:41.291747Z"
}
],
"stateTime": "2025-10-10T15:17:21.265493Z",
"uuid": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
}
```
## Reference
| **field** | **type** | **required** | **description** |
| ------------ | :------: | :----------: | -------------------------------------------------- |
| kind | string | true | Must be "serverless-spark-get-batch". |
| source | string | true | Name of the source the tool should use. |
| description | string | true | Description of the tool that is passed to the LLM. |
| authRequired | string[] | false | List of auth services required to invoke this tool |

Some files were not shown because too many files have changed in this diff Show More