Commit Graph

591 Commits

Author SHA1 Message Date
Wenxin Du
9c62f313ff feat: Add embeddingModel support (#2121)
First part of the implementation to support semantic search in tools.
Second part: https://github.com/googleapis/genai-toolbox/pull/2151
2026-01-05 19:34:54 -05:00
Divyansh
53885e6c0d docs: Updating dataplex docs to include new syntax for semantic search (#2165)
## Description

Dataplex.md is currently misaligned with the Dataplex backend, leading
to failed search queries.

## 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>

---------

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Averi Kitsch <akitsch@google.com>
Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-12-31 07:28:00 +00:00
dependabot[bot]
b4346dcb8f chore(deps): bump qs from 6.14.0 to 6.14.1 in /docs/en/getting-started/quickstart/js/adk (#2250)
Bumps [qs](https://github.com/ljharb/qs) from 6.14.0 to 6.14.1.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/ljharb/qs/blob/main/CHANGELOG.md">qs's
changelog</a>.</em></p>
<blockquote>
<h2><strong>6.14.1</strong></h2>
<ul>
<li>[Fix] ensure arrayLength applies to <code>[]</code> notation as
well</li>
<li>[Fix] <code>parse</code>: when a custom decoder returns
<code>null</code> for a key, ignore that key</li>
<li>[Refactor] <code>parse</code>: extract key segment splitting
helper</li>
<li>[meta] add threat model</li>
<li>[actions] add workflow permissions</li>
<li>[Tests] <code>stringify</code>: increase coverage</li>
<li>[Dev Deps] update <code>eslint</code>,
<code>@ljharb/eslint-config</code>, <code>npmignore</code>,
<code>es-value-fixtures</code>, <code>for-each</code>,
<code>object-inspect</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3fa11a5f64"><code>3fa11a5</code></a>
v6.14.1</li>
<li><a
href="a62670423c"><code>a626704</code></a>
[Dev Deps] update <code>npmignore</code></li>
<li><a
href="3086902ecf"><code>3086902</code></a>
[Fix] ensure arrayLength applies to <code>[]</code> notation as
well</li>
<li><a
href="fc7930e86c"><code>fc7930e</code></a>
[Dev Deps] update <code>eslint</code>,
<code>@ljharb/eslint-config</code></li>
<li><a
href="0b06aac566"><code>0b06aac</code></a>
[Dev Deps] update <code>@ljharb/eslint-config</code></li>
<li><a
href="64951f6200"><code>64951f6</code></a>
[Refactor] <code>parse</code>: extract key segment splitting helper</li>
<li><a
href="e1bd2599cd"><code>e1bd259</code></a>
[Dev Deps] update <code>@ljharb/eslint-config</code></li>
<li><a
href="f4b3d39709"><code>f4b3d39</code></a>
[eslint] add eslint 9 optional peer dep</li>
<li><a
href="6e94d9596c"><code>6e94d95</code></a>
[Dev Deps] update <code>eslint</code>,
<code>@ljharb/eslint-config</code>, <code>npmignore</code></li>
<li><a
href="973dc3c51c"><code>973dc3c</code></a>
[actions] add workflow permissions</li>
<li>Additional commits viewable in <a
href="https://github.com/ljharb/qs/compare/v6.14.0...v6.14.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=qs&package-manager=npm_and_yarn&previous-version=6.14.0&new-version=6.14.1)](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>
2025-12-30 22:37:37 -08:00
Mend Renovate
38d127a354 chore(deps): update dependency langchain to v1.2.3 [security] (#2248)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[langchain](https://redirect.github.com/langchain-ai/langchainjs/tree/main/libs/langchain/)
([source](https://redirect.github.com/langchain-ai/langchainjs)) |
[`1.0.2` →
`1.2.3`](https://renovatebot.com/diffs/npm/langchain/1.0.2/1.2.3) |
![age](https://developer.mend.io/api/mc/badges/age/npm/langchain/1.2.3?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/langchain/1.0.2/1.2.3?slim=true)
|

### GitHub Vulnerability Alerts

####
[CVE-2025-68665](https://redirect.github.com/langchain-ai/langchainjs/security/advisories/GHSA-r399-636x-v7f6)

## Context

A serialization injection vulnerability exists in LangChain JS's
`toJSON()` method (and subsequently when string-ifying objects using
`JSON.stringify()`. The method did not escape objects with `'lc'` keys
when serializing free-form data in kwargs. The `'lc'` key is used
internally by LangChain to mark serialized objects. When user-controlled
data contains this key structure, it is treated as a legitimate
LangChain object during deserialization rather than plain user data.

### Attack surface

The core vulnerability was in `Serializable.toJSON()`: this method
failed to escape user-controlled objects containing `'lc'` keys within
kwargs (e.g., `additional_kwargs`, `metadata`, `response_metadata`).
When this unescaped data was later deserialized via `load()`, the
injected structures were treated as legitimate LangChain objects rather
than plain user data.

This escaping bug enabled several attack vectors:

1. **Injection via user data**: Malicious LangChain object structures
could be injected through user-controlled fields like `metadata`,
`additional_kwargs`, or `response_metadata`
2. **Secret extraction**: Injected secret structures could extract
environment variables when `secretsFromEnv` was enabled (which had no
explicit default, effectively defaulting to `true` behavior)
3. **Class instantiation via import maps**: Injected constructor
structures could instantiate any class available in the provided import
maps with attacker-controlled parameters

**Note on import maps:** Classes must be explicitly included in import
maps to be instantiatable. The core import map includes standard types
(messages, prompts, documents), and users can extend this via
`importMap` and `optionalImportsMap` options. This architecture
naturally limits the attack surface—an `allowedObjects` parameter is not
necessary because users control which classes are available through the
import maps they provide.

**Security hardening:** This patch fixes the escaping bug in `toJSON()`
and introduces new restrictive defaults in `load()`: `secretsFromEnv`
now explicitly defaults to `false`, and a `maxDepth` parameter protects
against DoS via deeply nested structures. JSDoc security warnings have
been added to all import map options.

## Who is affected?

Applications are vulnerable if they:

1. **Serialize untrusted data via `JSON.stringify()` on Serializable
objects, then deserialize with `load()`** — Trusting your own
serialization output makes you vulnerable if user-controlled data (e.g.,
from LLM responses, metadata fields, or user inputs) contains `'lc'` key
structures.
2. **Deserialize untrusted data with `load()`** — Directly deserializing
untrusted data that may contain injected `'lc'` structures.
3. **Use LangGraph checkpoints** — Checkpoint
serialization/deserialization paths may be affected.

The most common attack vector is through **LLM response fields** like
`additional_kwargs` or `response_metadata`, which can be controlled via
prompt injection and then serialized/deserialized in streaming
operations.

## Impact

Attackers who control serialized data can extract environment variable
secrets by injecting `{"lc": 1, "type": "secret", "id": ["ENV_VAR"]}` to
load environment variables during deserialization (when `secretsFromEnv:
true`). They can also instantiate classes with controlled parameters by
injecting constructor structures to instantiate any class within the
provided import maps with attacker-controlled parameters, potentially
triggering side effects such as network calls or file operations.

Key severity factors:

- Affects the serialization path—applications trusting their own
serialization output are vulnerable
- Enables secret extraction when combined with `secretsFromEnv: true`
- LLM responses in `additional_kwargs` can be controlled via prompt
injection

## Exploit example

```typescript
import { load } from "@&#8203;langchain/core/load";

// Attacker injects secret structure into user-controlled data
const attackerPayload = JSON.stringify({
  user_data: {
    lc: 1,
    type: "secret",
    id: ["OPENAI_API_KEY"],
  },
});

process.env.OPENAI_API_KEY = "sk-secret-key-12345";

// With secretsFromEnv: true, the secret is extracted
const deserialized = await load(attackerPayload, { secretsFromEnv: true });

console.log(deserialized.user_data); // "sk-secret-key-12345" - SECRET LEAKED!
```

## Security hardening changes

This patch introduces the following changes to `load()`:

1. **`secretsFromEnv` default changed to `false`**: Disables automatic
secret loading from environment variables. Secrets not found in
`secretsMap` now throw an error instead of being loaded from
`process.env`. This fail-safe behavior ensures missing secrets are
caught immediately rather than silently continuing with `null`.
2. **New `maxDepth` parameter** (defaults to `50`): Protects against
denial-of-service attacks via deeply nested JSON structures that could
cause stack overflow.
3. **Escape mechanism in `toJSON()`**: User-controlled objects
containing `'lc'` keys are now wrapped in `{"__lc_escaped__": {...}}`
during serialization and unwrapped as plain data during deserialization.
4. **JSDoc security warnings**: All import map options (`importMap`,
`optionalImportsMap`, `optionalImportEntrypoints`) now include security
warnings about never populating them from user input.

## Migration guide

### No changes needed for most users

If you're deserializing standard LangChain types (messages, documents,
prompts) using the core import map, your code will work without changes:

```typescript
import { load } from "@&#8203;langchain/core/load";

// Works with default settings
const obj = await load(serializedData);
```

### For secrets from environment

`secretsFromEnv` now defaults to `false`, and missing secrets throw an
error. If you need to load secrets:

```typescript
import { load } from "@&#8203;langchain/core/load";

// Provide secrets explicitly (recommended)
const obj = await load(serializedData, {
  secretsMap: { OPENAI_API_KEY: process.env.OPENAI_API_KEY },
});

// Or explicitly opt-in to load from env (only use with trusted data)
const obj = await load(serializedData, { secretsFromEnv: true });
```

> **Warning:** Only enable `secretsFromEnv` if you trust the serialized
data. Untrusted data could extract any environment variable.

> **Note:** If a secret reference is encountered but not found in
`secretsMap` (and `secretsFromEnv` is `false` or the secret is not in
the environment), an error is thrown. This fail-safe behavior ensures
you're aware of missing secrets rather than silently receiving `null`
values.

### For deeply nested structures

If you have legitimate deeply nested data that exceeds the default depth
limit of 50:

```typescript
import { load } from "@&#8203;langchain/core/load";

const obj = await load(serializedData, { maxDepth: 100 });
```

### For custom import maps

If you provide custom import maps, ensure they only contain trusted
modules:

```typescript
import { load } from "@&#8203;langchain/core/load";
import * as myModule from "./my-trusted-module";

// GOOD - explicitly include only trusted modules
const obj = await load(serializedData, {
  importMap: { my_module: myModule },
});

// BAD - never populate from user input
const obj = await load(serializedData, {
  importMap: userProvidedImports, // DANGEROUS!
});
```

---

### Release Notes

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

###
[`v1.2.3`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/%40langchain/anthropic%401.2.3)

##### Patch Changes

- Updated dependencies
\[[`0bade90`](0bade90ed4),
[`6c40d00`](6c40d00e92)]:
-
[@&#8203;langchain/core](https://redirect.github.com/langchain/core)@&#8203;1.1.4

###
[`v1.2.2`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/%40langchain/anthropic%401.2.2)

##### Patch Changes

-
[#&#8203;9520](https://redirect.github.com/langchain-ai/langchainjs/pull/9520)
[`cc022b0`](cc022b0aab)
Thanks [@&#8203;yukukotani](https://redirect.github.com/yukukotani)! -
Includes cache creation/read tokens in input\_tokens of usage metadata

- Updated dependencies
\[[`bd2c46e`](bd2c46e09e),
[`487378b`](487378bf14),
[`138e7fb`](138e7fb628)]:
-
[@&#8203;langchain/core](https://redirect.github.com/langchain/core)@&#8203;1.1.3

###
[`v1.2.1`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/%40langchain/anthropic%401.2.1)

[Compare
Source](https://redirect.github.com/langchain-ai/langchainjs/compare/langchain@1.2.0...langchain@1.2.1)

##### Patch Changes

- Updated dependencies
\[[`833f578`](833f57834d)]:
-
[@&#8203;langchain/core](https://redirect.github.com/langchain/core)@&#8203;1.1.2

###
[`v1.2.0`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/langchain%401.2.0)

[Compare
Source](https://redirect.github.com/langchain-ai/langchainjs/compare/langchain@1.1.6...langchain@1.2.0)

##### Minor Changes

-
[#&#8203;9651](https://redirect.github.com/langchain-ai/langchainjs/pull/9651)
[`348c37c`](348c37c01a)
Thanks
[@&#8203;christian-bromann](https://redirect.github.com/christian-bromann)!
- feat(langchain): allow to set strict tag manually in providerStrategy
[#&#8203;9578](https://redirect.github.com/langchain-ai/langchainjs/issues/9578)

###
[`v1.1.6`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/langchain%401.1.6)

[Compare
Source](https://redirect.github.com/langchain-ai/langchainjs/compare/langchain@1.1.5...langchain@1.1.6)

##### Patch Changes

-
[#&#8203;9586](https://redirect.github.com/langchain-ai/langchainjs/pull/9586)
[`bc8e90f`](bc8e90f4f7)
Thanks [@&#8203;hntrl](https://redirect.github.com/hntrl)! - patch
prompts created from runs fix

-
[#&#8203;9623](https://redirect.github.com/langchain-ai/langchainjs/pull/9623)
[`ade8b8a`](ade8b8af0b)
Thanks
[@&#8203;christian-bromann](https://redirect.github.com/christian-bromann)!
- fix(langchain): properly retrieve structured output from thinking
block

-
[#&#8203;9637](https://redirect.github.com/langchain-ai/langchainjs/pull/9637)
[`88bb788`](88bb7882fa)
Thanks
[@&#8203;christian-bromann](https://redirect.github.com/christian-bromann)!
- fix(langchain): Prevent functions from being accidentally assignable
to AgentMiddleware

-
[#&#8203;8964](https://redirect.github.com/langchain-ai/langchainjs/pull/8964)
[`38ff1b5`](38ff1b55d3)
Thanks [@&#8203;jnjacobson](https://redirect.github.com/jnjacobson)! -
add support for anyOf, allOf, oneOf in openapi conversion

-
[#&#8203;9640](https://redirect.github.com/langchain-ai/langchainjs/pull/9640)
[`aa8c4f8`](aa8c4f867a)
Thanks
[@&#8203;christian-bromann](https://redirect.github.com/christian-bromann)!
- fix(langchain): prevent summarization middleware from leaking
streaming events

-
[#&#8203;9648](https://redirect.github.com/langchain-ai/langchainjs/pull/9648)
[`29a8480`](29a8480799)
Thanks
[@&#8203;christian-bromann](https://redirect.github.com/christian-bromann)!
- fix(langchain): allow to set strict tag manually in providerStrategy
[#&#8203;9578](https://redirect.github.com/langchain-ai/langchainjs/issues/9578)

-
[#&#8203;9630](https://redirect.github.com/langchain-ai/langchainjs/pull/9630)
[`a2df2d4`](a2df2d422e)
Thanks [@&#8203;nephix](https://redirect.github.com/nephix)! -
fix(summary-middleware): use summaryPrefix or fall back to default
prefix

- Updated dependencies
\[[`005c729`](005c72903b),
[`ab78246`](ab78246275),
[`8cc81c7`](8cc81c7cee),
[`f32e499`](f32e4991d0),
[`a28d83d`](a28d83d49d),
[`2e5ad70`](2e5ad70d16),
[`e456c66`](e456c661aa),
[`1cfe603`](1cfe603e97)]:
-
[@&#8203;langchain/core](https://redirect.github.com/langchain/core)@&#8203;1.1.5

###
[`v1.1.5`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/langchain%401.1.5)

[Compare
Source](https://redirect.github.com/langchain-ai/langchainjs/compare/langchain@1.1.4...langchain@1.1.5)

##### Patch Changes

- Updated dependencies
\[[`0bade90`](0bade90ed4),
[`6c40d00`](6c40d00e92)]:
-
[@&#8203;langchain/core](https://redirect.github.com/langchain/core)@&#8203;1.1.4

###
[`v1.1.4`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/%40langchain/core%401.1.4)

[Compare
Source](https://redirect.github.com/langchain-ai/langchainjs/compare/langchain@1.1.3...langchain@1.1.4)

##### Patch Changes

-
[#&#8203;9575](https://redirect.github.com/langchain-ai/langchainjs/pull/9575)
[`0bade90`](0bade90ed4)
Thanks [@&#8203;hntrl](https://redirect.github.com/hntrl)! - bin p-retry

-
[#&#8203;9574](https://redirect.github.com/langchain-ai/langchainjs/pull/9574)
[`6c40d00`](6c40d00e92)
Thanks [@&#8203;hntrl](https://redirect.github.com/hntrl)! - Revert
"fix([@&#8203;langchain/core](https://redirect.github.com/langchain/core)):
update and bundle dependencies
([#&#8203;9534](https://redirect.github.com/langchain-ai/langchainjs/issues/9534))"

###
[`v1.1.3`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/%40langchain/core%401.1.3)

[Compare
Source](https://redirect.github.com/langchain-ai/langchainjs/compare/langchain@1.1.2...langchain@1.1.3)

##### Patch Changes

-
[#&#8203;9534](https://redirect.github.com/langchain-ai/langchainjs/pull/9534)
[`bd2c46e`](bd2c46e09e)
Thanks
[@&#8203;christian-bromann](https://redirect.github.com/christian-bromann)!
-
fix([@&#8203;langchain/core](https://redirect.github.com/langchain/core)):
update and bundle `p-retry`, `ansi-styles`, `camelcase` and `decamelize`
dependencies

-
[#&#8203;9544](https://redirect.github.com/langchain-ai/langchainjs/pull/9544)
[`487378b`](487378bf14)
Thanks [@&#8203;hntrl](https://redirect.github.com/hntrl)! - fix tool
chunk concat behavior
([#&#8203;9450](https://redirect.github.com/langchain-ai/langchainjs/issues/9450))

-
[#&#8203;9505](https://redirect.github.com/langchain-ai/langchainjs/pull/9505)
[`138e7fb`](138e7fb628)
Thanks [@&#8203;chosh-dev](https://redirect.github.com/chosh-dev)! -
feat: replace btoa with toBase64Url for encoding in drawMermaidImage

###
[`v1.1.2`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/%40langchain/core%401.1.2)

[Compare
Source](https://redirect.github.com/langchain-ai/langchainjs/compare/langchain@1.1.1...langchain@1.1.2)

##### Patch Changes

-
[#&#8203;9511](https://redirect.github.com/langchain-ai/langchainjs/pull/9511)
[`833f578`](833f57834d)
Thanks [@&#8203;dqbd](https://redirect.github.com/dqbd)! - allow parsing
more partial JSON

###
[`v1.1.1`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/%40langchain/core%401.1.1)

##### Patch Changes

-
[#&#8203;9495](https://redirect.github.com/langchain-ai/langchainjs/pull/9495)
[`636b994`](636b99459b)
Thanks [@&#8203;gsriram24](https://redirect.github.com/gsriram24)! -
fix: use dynamic import for p-retry to support CommonJS environments

-
[#&#8203;9531](https://redirect.github.com/langchain-ai/langchainjs/pull/9531)
[`38f0162`](38f0162b7b)
Thanks [@&#8203;hntrl](https://redirect.github.com/hntrl)! - add
`extras` to tools

###
[`v1.1.0`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/%40langchain/anthropic%401.1.0)

##### Minor Changes

-
[#&#8203;9424](https://redirect.github.com/langchain-ai/langchainjs/pull/9424)
[`f17b2c9`](f17b2c9db0)
Thanks [@&#8203;hntrl](https://redirect.github.com/hntrl)! - add support
for `betas` param

-
[#&#8203;9424](https://redirect.github.com/langchain-ai/langchainjs/pull/9424)
[`f17b2c9`](f17b2c9db0)
Thanks [@&#8203;hntrl](https://redirect.github.com/hntrl)! - add support
for native structured output

##### Patch Changes

-
[#&#8203;9424](https://redirect.github.com/langchain-ai/langchainjs/pull/9424)
[`f17b2c9`](f17b2c9db0)
Thanks [@&#8203;hntrl](https://redirect.github.com/hntrl)! - bump sdk
version

###
[`v1.0.6`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/langchain%401.0.6)

[Compare
Source](https://redirect.github.com/langchain-ai/langchainjs/compare/langchain@1.0.5...langchain@1.0.6)

##### Patch Changes

-
[#&#8203;9434](https://redirect.github.com/langchain-ai/langchainjs/pull/9434)
[`f7cfece`](f7cfecec29)
Thanks [@&#8203;deepansh946](https://redirect.github.com/deepansh946)! -
Updated error handling behaviour of AgentNode

###
[`v1.0.5`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/langchain%401.0.5)

##### Patch Changes

-
[#&#8203;9403](https://redirect.github.com/langchain-ai/langchainjs/pull/9403)
[`944bf56`](944bf56ff0)
Thanks
[@&#8203;christian-bromann](https://redirect.github.com/christian-bromann)!
- improvements to toolEmulator middleware

-
[#&#8203;9388](https://redirect.github.com/langchain-ai/langchainjs/pull/9388)
[`831168a`](831168a545)
Thanks [@&#8203;hntrl](https://redirect.github.com/hntrl)! - use
`profile.maxInputTokens` in summarization middleware

-
[#&#8203;9393](https://redirect.github.com/langchain-ai/langchainjs/pull/9393)
[`f1e2f9e`](f1e2f9eeb3)
Thanks
[@&#8203;christian-bromann](https://redirect.github.com/christian-bromann)!
- align context editing with summarization interface

-
[#&#8203;9427](https://redirect.github.com/langchain-ai/langchainjs/pull/9427)
[`bad7aea`](bad7aea86d)
Thanks [@&#8203;dqbd](https://redirect.github.com/dqbd)! -
fix(langchain): add tool call contents and tool call ID to improve token
count approximation

-
[#&#8203;9396](https://redirect.github.com/langchain-ai/langchainjs/pull/9396)
[`ed6b581`](ed6b581e52)
Thanks
[@&#8203;christian-bromann](https://redirect.github.com/christian-bromann)!
- rename exit behavior from throw to error

###
[`v1.0.4`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/%40langchain/community%401.0.4)

##### Patch Changes

-
[#&#8203;9326](https://redirect.github.com/langchain-ai/langchainjs/pull/9326)
[`3e0cab6`](3e0cab61b3)
Thanks [@&#8203;ayanyev](https://redirect.github.com/ayanyev)! - Milvus
vector store client: ignore auto-calculated fields in collection schema
during payload validation

- Updated dependencies
\[[`415cb0b`](415cb0bfd2),
[`a2ad61e`](a2ad61e787),
[`34c472d`](34c472d129)]:
-
[@&#8203;langchain/openai](https://redirect.github.com/langchain/openai)@&#8203;1.1.2
-
[@&#8203;langchain/classic](https://redirect.github.com/langchain/classic)@&#8203;1.0.4

###
[`v1.0.3`](https://redirect.github.com/langchain-ai/langchainjs/releases/tag/%40langchain/google-gauth%401.0.3)

##### Patch Changes

- Updated dependencies \[]:
-
[@&#8203;langchain/google-common](https://redirect.github.com/langchain/google-common)@&#8203;1.0.3

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "" (UTC), 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:eyJjcmVhdGVkSW5WZXIiOiI0Mi42Ni4xNCIsInVwZGF0ZWRJblZlciI6IjQyLjY2LjE0IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-12-30 12:01:21 -08:00
dependabot[bot]
3d140a657e chore(deps): bump golang.org/x/crypto from 0.43.0 to 0.45.0 in /docs/en/getting-started/quickstart/go/adkgo (#2249)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from
0.43.0 to 0.45.0.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4e0068c009"><code>4e0068c</code></a>
go.mod: update golang.org/x dependencies</li>
<li><a
href="e79546e28b"><code>e79546e</code></a>
ssh: curb GSSAPI DoS risk by limiting number of specified OIDs</li>
<li><a
href="f91f7a7c31"><code>f91f7a7</code></a>
ssh/agent: prevent panic on malformed constraint</li>
<li><a
href="2df4153a03"><code>2df4153</code></a>
acme/autocert: let automatic renewal work with short lifetime certs</li>
<li><a
href="bcf6a849ef"><code>bcf6a84</code></a>
acme: pass context to request</li>
<li><a
href="b4f2b62076"><code>b4f2b62</code></a>
ssh: fix error message on unsupported cipher</li>
<li><a
href="79ec3a51fc"><code>79ec3a5</code></a>
ssh: allow to bind to a hostname in remote forwarding</li>
<li><a
href="122a78f140"><code>122a78f</code></a>
go.mod: update golang.org/x dependencies</li>
<li><a
href="c0531f9c34"><code>c0531f9</code></a>
all: eliminate vet diagnostics</li>
<li><a
href="0997000b45"><code>0997000</code></a>
all: fix some comments</li>
<li>Additional commits viewable in <a
href="https://github.com/golang/crypto/compare/v0.43.0...v0.45.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=golang.org/x/crypto&package-manager=go_modules&previous-version=0.43.0&new-version=0.45.0)](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>
2025-12-30 11:40:42 -08:00
dependabot[bot]
0714d3e126 chore(deps): bump golang.org/x/crypto from 0.43.0 to 0.45.0 in /docs/en/getting-started/quickstart/go/openAI (#2247)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from
0.43.0 to 0.45.0.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4e0068c009"><code>4e0068c</code></a>
go.mod: update golang.org/x dependencies</li>
<li><a
href="e79546e28b"><code>e79546e</code></a>
ssh: curb GSSAPI DoS risk by limiting number of specified OIDs</li>
<li><a
href="f91f7a7c31"><code>f91f7a7</code></a>
ssh/agent: prevent panic on malformed constraint</li>
<li><a
href="2df4153a03"><code>2df4153</code></a>
acme/autocert: let automatic renewal work with short lifetime certs</li>
<li><a
href="bcf6a849ef"><code>bcf6a84</code></a>
acme: pass context to request</li>
<li><a
href="b4f2b62076"><code>b4f2b62</code></a>
ssh: fix error message on unsupported cipher</li>
<li><a
href="79ec3a51fc"><code>79ec3a5</code></a>
ssh: allow to bind to a hostname in remote forwarding</li>
<li><a
href="122a78f140"><code>122a78f</code></a>
go.mod: update golang.org/x dependencies</li>
<li><a
href="c0531f9c34"><code>c0531f9</code></a>
all: eliminate vet diagnostics</li>
<li><a
href="0997000b45"><code>0997000</code></a>
all: fix some comments</li>
<li>Additional commits viewable in <a
href="https://github.com/golang/crypto/compare/v0.43.0...v0.45.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=golang.org/x/crypto&package-manager=go_modules&previous-version=0.43.0&new-version=0.45.0)](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>
2025-12-30 18:44:41 +00:00
dependabot[bot]
0baffff3b5 chore(deps): bump @langchain/core and @langchain/google-genai in /docs/en/getting-started/quickstart/js/langchain (#2232)
Bumps [@langchain/core](https://github.com/langchain-ai/langchainjs) to
1.1.8 and updates ancestor dependency
[@langchain/google-genai](https://github.com/langchain-ai/langchainjs).
These dependencies need to be updated together.

Updates `@langchain/core` from 1.1.0 to 1.1.8
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/langchain-ai/langchainjs/releases"><code>@​langchain/core</code>'s
releases</a>.</em></p>
<blockquote>
<h2><code>@​langchain/core</code><a
href="https://github.com/1"><code>@​1</code></a>.1.8</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9707">#9707</a>
<a
href="e5063f9c6e"><code>e5063f9</code></a>
Thanks <a href="https://github.com/hntrl"><code>@​hntrl</code></a>! -
add security hardening for <code>load</code></p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9684">#9684</a>
<a
href="89966470e8"><code>8996647</code></a>
Thanks <a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>!
- fix(core): document purpose of name in base message</p>
</li>
</ul>
<h2><code>@​langchain/core</code><a
href="https://github.com/1"><code>@​1</code></a>.1.6</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9668">#9668</a>
<a
href="a7b2a7db5e"><code>a7b2a7d</code></a>
Thanks <a
href="https://github.com/bracesproul"><code>@​bracesproul</code></a>! -
fix: Cannot merge two undefined objects error</p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9657">#9657</a>
<a
href="a496c5fc64"><code>a496c5f</code></a>
Thanks <a href="https://github.com/dqbd"><code>@​dqbd</code></a>! -
fix(core): avoid writing to TransformStream in
EventStreamCallbackHandler when underlying ReadableStream is closed</p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9658">#9658</a>
<a
href="1da1325aea"><code>1da1325</code></a>
Thanks <a href="https://github.com/dqbd"><code>@​dqbd</code></a>! -
fix(core): ensure streaming test chat models respect AbortSignal</p>
</li>
</ul>
<h2><code>@​langchain/core</code><a
href="https://github.com/1"><code>@​1</code></a>.1.5</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9641">#9641</a>
<a
href="005c72903b"><code>005c729</code></a>
Thanks <a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>!
- fix(community/core): various security fixes</p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/7907">#7907</a>
<a
href="ab78246275"><code>ab78246</code></a>
Thanks <a
href="https://github.com/jasonphillips"><code>@​jasonphillips</code></a>!
- fix(core): handle subgraph nesting better in graph_mermaid</p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9589">#9589</a>
<a
href="8cc81c7cee"><code>8cc81c7</code></a>
Thanks <a
href="https://github.com/nathannewyen"><code>@​nathannewyen</code></a>!
- test(core): add test for response_metadata in streamEvents</p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9644">#9644</a>
<a
href="f32e4991d0"><code>f32e499</code></a>
Thanks <a href="https://github.com/hntrl"><code>@​hntrl</code></a>! -
add bindTools to FakeListChatModel</p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9508">#9508</a>
<a
href="a28d83d49d"><code>a28d83d</code></a>
Thanks <a
href="https://github.com/shubham-021"><code>@​shubham-021</code></a>! -
Fix toFormattedString() to properly display nested objects in tool call
arguments instead of [object Object]</p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9165">#9165</a>
<a
href="2e5ad70d16"><code>2e5ad70</code></a>
Thanks <a
href="https://github.com/pawel-twardziak"><code>@​pawel-twardziak</code></a>!
- fix(mcp-adapters): preserve timeout from RunnableConfig in MCP tool
calls</p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9647">#9647</a>
<a
href="e456c661aa"><code>e456c66</code></a>
Thanks <a href="https://github.com/hntrl"><code>@​hntrl</code></a>! -
handle missing parent runs in tracer to prevent LangSmith 400 errors</p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9597">#9597</a>
<a
href="1cfe603e97"><code>1cfe603</code></a>
Thanks <a href="https://github.com/hntrl"><code>@​hntrl</code></a>! -
use uuid7 for run ids</p>
</li>
</ul>
<h2><code>@​langchain/core</code><a
href="https://github.com/1"><code>@​1</code></a>.1.4</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9575">#9575</a>
<a
href="0bade90ed4"><code>0bade90</code></a>
Thanks <a href="https://github.com/hntrl"><code>@​hntrl</code></a>! -
bin p-retry</p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9574">#9574</a>
<a
href="6c40d00e92"><code>6c40d00</code></a>
Thanks <a href="https://github.com/hntrl"><code>@​hntrl</code></a>! -
Revert &quot;fix(<code>@​langchain/core</code>): update and bundle
dependencies (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/9534">#9534</a>)&quot;</p>
</li>
</ul>
<h2><code>@​langchain/core</code><a
href="https://github.com/1"><code>@​1</code></a>.1.3</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9534">#9534</a>
<a
href="bd2c46e09e"><code>bd2c46e</code></a>
Thanks <a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>!
- fix(<code>@​langchain/core</code>): update and bundle
<code>p-retry</code>, <code>ansi-styles</code>, <code>camelcase</code>
and <code>decamelize</code> dependencies</p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9544">#9544</a>
<a
href="487378bf14"><code>487378b</code></a>
Thanks <a href="https://github.com/hntrl"><code>@​hntrl</code></a>! -
fix tool chunk concat behavior (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/9450">#9450</a>)</p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9505">#9505</a>
<a
href="138e7fb628"><code>138e7fb</code></a>
Thanks <a
href="https://github.com/chosh-dev"><code>@​chosh-dev</code></a>! -
feat: replace btoa with toBase64Url for encoding in drawMermaidImage</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="de32b32b0b"><code>de32b32</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/9697">#9697</a>)</li>
<li><a
href="e5063f9c6e"><code>e5063f9</code></a>
fix!(core/langchain): hardening for <code>load</code> (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/9707">#9707</a>)</li>
<li><a
href="8b3e611a6c"><code>8b3e611</code></a>
chore(turbopuffer): rollback version (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/9698">#9698</a>)</li>
<li><a
href="89966470e8"><code>8996647</code></a>
fix(core): document purpose of name in base message (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/9684">#9684</a>)</li>
<li><a
href="8df6264efe"><code>8df6264</code></a>
chore: version packages (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/9676">#9676</a>)</li>
<li><a
href="df9c42b3ab"><code>df9c42b</code></a>
feat(core): usage_metadata in extra.metadata (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/9686">#9686</a>)</li>
<li><a
href="4ea3a52f86"><code>4ea3a52</code></a>
fix(ci): use appropriate path for core PR labels (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/9696">#9696</a>)</li>
<li><a
href="ffb24026cd"><code>ffb2402</code></a>
feat(langchain): <code>context</code> (<a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/9673">#9673</a>)</li>
<li><a
href="8d2982bb94"><code>8d2982b</code></a>
feat(core): Make runnable transform trace in a single payload in
LangChainTra...</li>
<li><a
href="2b36431bab"><code>2b36431</code></a>
fix(mcp-adapters): bump <code>@​modelcontextprotocol/sdk</code> to
address CVE-2025-66414 (...</li>
<li>Additional commits viewable in <a
href="https://github.com/langchain-ai/langchainjs/compare/@langchain/aws@1.1.0...@langchain/core@1.1.8">compare
view</a></li>
</ul>
</details>
<br />

Updates `@langchain/google-genai` from 2.0.0 to 2.1.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/langchain-ai/langchainjs/releases"><code>@​langchain/google-genai</code>'s
releases</a>.</em></p>
<blockquote>
<h2><code>@​langchain/google-genai</code><a
href="https://github.com/2"><code>@​2</code></a>.1.3</h2>
<h3>Patch Changes</h3>
<ul>
<li>Updated dependencies [<a
href="e5063f9c6e"><code>e5063f9</code></a>,
<a
href="89966470e8"><code>8996647</code></a>]:
<ul>
<li><code>@​langchain/core</code><a
href="https://github.com/1"><code>@​1</code></a>.1.8</li>
</ul>
</li>
</ul>
<h2><code>@​langchain/google-genai</code><a
href="https://github.com/2"><code>@​2</code></a>.1.1</h2>
<h3>Patch Changes</h3>
<ul>
<li>Updated dependencies [<a
href="a7b2a7db5e"><code>a7b2a7d</code></a>,
<a
href="a496c5fc64"><code>a496c5f</code></a>,
<a
href="1da1325aea"><code>1da1325</code></a>]:
<ul>
<li><code>@​langchain/core</code><a
href="https://github.com/1"><code>@​1</code></a>.1.6</li>
</ul>
</li>
</ul>
<h2><code>@​langchain/google-genai</code><a
href="https://github.com/2"><code>@​2</code></a>.1.0</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/8327">#8327</a>
<a
href="89a79097ac"><code>89a7909</code></a>
Thanks <a
href="https://github.com/caspherola"><code>@​caspherola</code></a>! -
support of adding custom headers on ChatGoogleGenerativeAI <a
href="https://redirect.github.com/langchain-ai/langchainjs/issues/6648">#6648</a></p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9584">#9584</a>
<a
href="f4ef9a1dc9"><code>f4ef9a1</code></a>
Thanks <a
href="https://github.com/encodedz"><code>@​encodedz</code></a>! - safe
access around custom content parts</p>
</li>
<li>
<p><a
href="https://redirect.github.com/langchain-ai/langchainjs/pull/9583">#9583</a>
<a
href="5b27f38581"><code>5b27f38</code></a>
Thanks <a
href="https://github.com/maslo55555"><code>@​maslo55555</code></a>! -
fix(google-genai): support custom agent names in createAgent</p>
</li>
<li>
<p>Updated dependencies [<a
href="005c72903b"><code>005c729</code></a>,
<a
href="ab78246275"><code>ab78246</code></a>,
<a
href="8cc81c7cee"><code>8cc81c7</code></a>,
<a
href="f32e4991d0"><code>f32e499</code></a>,
<a
href="a28d83d49d"><code>a28d83d</code></a>,
<a
href="2e5ad70d16"><code>2e5ad70</code></a>,
<a
href="e456c661aa"><code>e456c66</code></a>,
<a
href="1cfe603e97"><code>1cfe603</code></a>]:</p>
<ul>
<li><code>@​langchain/core</code><a
href="https://github.com/1"><code>@​1</code></a>.1.5</li>
</ul>
</li>
</ul>
<h2><code>@​langchain/google-genai</code><a
href="https://github.com/2"><code>@​2</code></a>.0.4</h2>
<h3>Patch Changes</h3>
<ul>
<li>Updated dependencies [<a
href="0bade90ed4"><code>0bade90</code></a>,
<a
href="6c40d00e92"><code>6c40d00</code></a>]:
<ul>
<li><code>@​langchain/core</code><a
href="https://github.com/1"><code>@​1</code></a>.1.4</li>
</ul>
</li>
</ul>
<h2><code>@​langchain/google-genai</code><a
href="https://github.com/2"><code>@​2</code></a>.0.3</h2>
<h3>Patch Changes</h3>
<ul>
<li>Updated dependencies [<a
href="bd2c46e09e"><code>bd2c46e</code></a>,
<a
href="487378bf14"><code>487378b</code></a>,
<a
href="138e7fb628"><code>138e7fb</code></a>]:
<ul>
<li><code>@​langchain/core</code><a
href="https://github.com/1"><code>@​1</code></a>.1.3</li>
</ul>
</li>
</ul>
<h2><code>@​langchain/google-genai</code><a
href="https://github.com/2"><code>@​2</code></a>.0.2</h2>
<h3>Patch Changes</h3>
<ul>
<li>Updated dependencies [<a
href="833f57834d"><code>833f578</code></a>]:
<ul>
<li><code>@​langchain/core</code><a
href="https://github.com/1"><code>@​1</code></a>.1.2</li>
</ul>
</li>
</ul>
<h2><code>@​langchain/google-genai</code><a
href="https://github.com/2"><code>@​2</code></a>.0.1</h2>
<h3>Patch Changes</h3>
<ul>
<li>Updated dependencies [<a
href="636b99459b"><code>636b994</code></a>,
<a
href="38f0162b7b"><code>38f0162</code></a>]:
<ul>
<li><code>@​langchain/core</code><a
href="https://github.com/1"><code>@​1</code></a>.1.1</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/langchain-ai/langchainjs/commits/@langchain/google-genai@2.1.3">compare
view</a></li>
</ul>
</details>
<br />


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>
2025-12-30 10:22:00 -08:00
Mend Renovate
f87ed05aac chore(deps): update pip (#2215)
This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [google-adk](https://redirect.github.com/google/adk-python)
([changelog](https://redirect.github.com/google/adk-python/blob/main/CHANGELOG.md))
| `==1.19.0` → `==1.21.0` |
![age](https://developer.mend.io/api/mc/badges/age/pypi/google-adk/1.21.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/google-adk/1.19.0/1.21.0?slim=true)
|
| [google-genai](https://redirect.github.com/googleapis/python-genai) |
`==1.52.0` → `==1.56.0` |
![age](https://developer.mend.io/api/mc/badges/age/pypi/google-genai/1.56.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/google-genai/1.52.0/1.56.0?slim=true)
|
| [langchain](https://redirect.github.com/langchain-ai/langchain)
([source](https://redirect.github.com/langchain-ai/langchain/tree/HEAD/libs/langchain),
[changelog](https://redirect.github.com/langchain-ai/langchain/releases?q=tag%3A%22langchain%3D%3D1%22))
| `==1.1.0` → `==1.2.0` |
![age](https://developer.mend.io/api/mc/badges/age/pypi/langchain/1.2.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/langchain/1.1.0/1.2.0?slim=true)
|
|
[langchain-google-vertexai](https://redirect.github.com/langchain-ai/langchain-google)
([source](https://redirect.github.com/langchain-ai/langchain-google/tree/HEAD/libs/vertexai),
[changelog](https://redirect.github.com/langchain-ai/langchain-google/releases?q=%22vertexai%22))
| `==3.1.0` → `==3.2.0` |
![age](https://developer.mend.io/api/mc/badges/age/pypi/langchain-google-vertexai/3.2.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/langchain-google-vertexai/3.1.0/3.2.0?slim=true)
|
| [langgraph](https://redirect.github.com/langchain-ai/langgraph)
([source](https://redirect.github.com/langchain-ai/langgraph/tree/HEAD/libs/langgraph),
[changelog](https://redirect.github.com/langchain-ai/langgraph/releases))
| `==1.0.4` → `==1.0.5` |
![age](https://developer.mend.io/api/mc/badges/age/pypi/langgraph/1.0.5?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/langgraph/1.0.4/1.0.5?slim=true)
|
| [llama-index](https://redirect.github.com/run-llama/llama_index) |
`==0.14.10` → `==0.14.12` |
![age](https://developer.mend.io/api/mc/badges/age/pypi/llama-index/0.14.12?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/llama-index/0.14.10/0.14.12?slim=true)
|
| llama-index-llms-google-genai | `==0.7.3` → `==0.8.3` |
![age](https://developer.mend.io/api/mc/badges/age/pypi/llama-index-llms-google-genai/0.8.3?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/llama-index-llms-google-genai/0.7.3/0.8.3?slim=true)
|
| [pytest](https://redirect.github.com/pytest-dev/pytest)
([changelog](https://docs.pytest.org/en/stable/changelog.html)) |
`==9.0.1` → `==9.0.2` |
![age](https://developer.mend.io/api/mc/badges/age/pypi/pytest/9.0.2?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pytest/9.0.1/9.0.2?slim=true)
|
|
[toolbox-core](https://redirect.github.com/googleapis/mcp-toolbox-sdk-python)
([changelog](https://redirect.github.com/googleapis/mcp-toolbox-sdk-python/blob/main/packages/toolbox-core/CHANGELOG.md))
| `==0.5.3` → `==0.5.4` |
![age](https://developer.mend.io/api/mc/badges/age/pypi/toolbox-core/0.5.4?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/toolbox-core/0.5.3/0.5.4?slim=true)
|
|
[toolbox-langchain](https://redirect.github.com/googleapis/mcp-toolbox-sdk-python)
([changelog](https://redirect.github.com/googleapis/mcp-toolbox-sdk-python/blob/main/packages/toolbox-langchain/CHANGELOG.md))
| `==0.5.3` → `==0.5.4` |
![age](https://developer.mend.io/api/mc/badges/age/pypi/toolbox-langchain/0.5.4?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/toolbox-langchain/0.5.3/0.5.4?slim=true)
|
|
[toolbox-llamaindex](https://redirect.github.com/googleapis/mcp-toolbox-sdk-python)
([changelog](https://redirect.github.com/googleapis/mcp-toolbox-sdk-python/blob/main/packages/toolbox-llamaindex/CHANGELOG.md))
| `==0.5.3` → `==0.5.4` |
![age](https://developer.mend.io/api/mc/badges/age/pypi/toolbox-llamaindex/0.5.4?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/toolbox-llamaindex/0.5.3/0.5.4?slim=true)
|

---

### Release Notes

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

###
[`v1.21.0`](https://redirect.github.com/google/adk-python/blob/HEAD/CHANGELOG.md#1210-2025-12-11)

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

##### Features

- **\[Interactions API Support]**
- The newly released Gemini [Interactions
API](https://ai.google.dev/gemini-api/docs/interactions) is supported in
ADK now. To use it:
  ```Python
  Agent(
    model=Gemini(
        model="gemini-3-pro-preview",
        use_interactions_api=True,
    ),
    name="...",
    description="...",
    instruction="...",
  )
  ```
see
[samples](https://redirect.github.com/google/adk-python/tree/main/contributing/samples/interactions_api)
for details

- **\[Services]**
- Add `add_session_to_memory` to `CallbackContext` and `ToolContext` to
explicitly save the current session to memory
([7b356dd](7b356ddc1b))

- **\[Plugins]**
- Add location for table in agent events in plugin
BigQueryAgentAnalytics
([507424a](507424acb9))
- Upgrade BigQueryAgentAnalyticsPlugin to v2.0 with improved
performance, multimodal support, and reliability
([7b2fe14](7b2fe14dab))

- **\[A2A]**
- Adds ADK EventActions to A2A response
([32e87f6](32e87f6381))

- **\[Tools]**
- Add `header_provider` to `OpenAPIToolset` and `RestApiTool`
([e1a7593](e1a7593ae8))
- Allow overriding connection template
([cde7f7c](cde7f7c243))
- Add SSL certificate verification configuration to OpenAPI tools using
the `verify` parameter
([9d2388a](9d2388a46f))
- Use json schema for function tool declaration when feature enabled
([cb3244b](cb3244bb58))

- **\[Models]**
- Add Gemma3Ollama model integration and a sample
([e9182e5](e9182e5eb4))

##### Bug Fixes

- Install dependencies for py 3.10
([9cccab4](9cccab4537))
- Refactor LiteLLM response schema formatting for different models
([894d8c6](894d8c6c26))
- Resolve project and credentials before creating Spanner client
([99f893a](99f893ae28))
- Avoid false positive "App name mismatch" warnings in Runner
([6388ba3](6388ba3b20))
- Update the code to work with either 1 event or more than 1 events
([4f54660](4f54660d6d))
- OpenAPI schema generation by skipping JSON schema for
judge\_model\_config
([56775af](56775afc48))
- Add tool\_name\_prefix support to OpenAPIToolset
([82e6623](82e6623fa9))
- Pass context to client interceptors
([143ad44](143ad44f8c))
- Yield event with error code when agent run raised A2AClientHTTPError
([b7ce5e1](b7ce5e17b6))
- Handle string function responses in LiteLLM conversion
([2b64715](2b64715505))
- ApigeeLLM support for Built-in tools like GoogleSearch,
BuiltInCodeExecutor when calling Gemini models through Apigee
([a9b853f](a9b853fe36))
- Extract and propagate task\_id in RemoteA2aAgent
([82bd4f3](82bd4f380b))
- Update FastAPI and Starlette to fix CVE-2025-62727 (ReDoS
vulnerability)
([c557b0a](c557b0a1f2))
- Add client id to token exchange
([f273517](f2735177f1))

##### Improvements

- Normalize multipart content for LiteLLM's ollama\_chat provider
([055dfc7](055dfc7974))
- Update adk web, fixes image not rendering, state not updating, update
drop down box width and trace icons
([df86847](df8684734b))
- Add sample agent for interaction api integration
([68d7048](68d70488b9))
- Update genAI SDK version
([f0bdcab](f0bdcaba44))
- Introduce `build_function_declaration_with_json_schema` to use
pydantic to generate json schema for FunctionTool
([51a638b](51a638b6b8))
- Update component definition for triaging agent
([ee743bd](ee743bd19a))
- Migrate Google tools to use the new feature decorator
([bab5729](bab57296d5))
- Migrate computer to use the new feature decorator
([1ae944b](1ae944b39d))
- Add Spanner execute sql query result mode using list of dictionaries
([f22bac0](f22bac0b20))
- Improve error message for missing `invocation_id` and `new_message` in
`run_async`
([de841a4](de841a4a09))

###
[`v1.20.0`](https://redirect.github.com/google/adk-python/blob/HEAD/CHANGELOG.md#1200-2025-12-01)

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

##### Features

- **\[Core]**
- Add enum constraint to `agent_name` for `transfer_to_agent`
([4a42d0d](4a42d0d9d8))
- Add validation for unique sub-agent names
([#&#8203;3557](https://redirect.github.com/google/adk-python/issues/3557))
([2247a45](2247a45922))
- Support streaming function call arguments in progressive SSE streaming
feature
([786aaed](786aaed335))

- **\[Models]**
- Enable multi-provider support for Claude and LiteLLM
([d29261a](d29261a3dc))

- **\[Tools]**
- Create APIRegistryToolset to add tools from Cloud API registry to
agent
([ec4ccd7](ec4ccd718f))
- Add an option to disallow propagating runner plugins to AgentTool
runner
([777dba3](777dba3033))

- **\[Web]**
- Added an endpoint to list apps with details
([b57fe5f](b57fe5f459))

##### Bug Fixes

- Allow image parts in user messages for Anthropic Claude
([5453b5b](5453b5bfde))
- Mark the Content as non-empty if its first part contains text or
inline\_data or file\_data or func call/response
([631b583](631b58336d))
- Fixes double response processing issue in `base_llm_flow.py` where, in
Bidi-streaming (live) mode, the multi-agent structure causes duplicated
responses after tool calling.
([cf21ca3](cf21ca3584))
- Fix out of bounds error in \_run\_async\_impl
([8fc6128](8fc6128b62))
- Fix paths for public docs
([cd54f48](cd54f48fed))
- Ensure request bodies without explicit names are named 'body'
([084c2de](084c2de0da)),
closes
[#&#8203;2213](https://redirect.github.com/google/adk-python/issues/2213)
- Optimize Stale Agent with GraphQL and Search API to resolve 429 Quota
errors
([cb19d07](cb19d0714c))
- Update AgentTool to use Agent's description when input\_schema is
provided in FunctionDeclaration
([52674e7](52674e7fac))
- Update LiteLLM system instruction role from "developer" to "system"
([2e1f730](2e1f730c3b)),
closes
[#&#8203;3657](https://redirect.github.com/google/adk-python/issues/3657)
- Update session last update time when appending events
([a3e4ad3](a3e4ad3cd1)),
closes
[#&#8203;2721](https://redirect.github.com/google/adk-python/issues/2721)
- Update the retry\_on\_closed\_resource decorator to retry on all
errors
([a3aa077](a3aa07722a))
- Windows Path Handling and Normalize Cross-Platform Path Resolution in
AgentLoader
([a1c09b7](a1c09b724b))

##### Documentation

- Add Code Wiki badge to README
([caf23ac](caf23ac49f))

</details>

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

###
[`v1.56.0`](https://redirect.github.com/googleapis/python-genai/blob/HEAD/CHANGELOG.md#1560-2025-12-16)

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

##### Features

- Add minimal and medium thinking levels.
([96d644c](96d644cd52))
- Add support for Struct in ToolResult Content.
([8fd4886](8fd4886a04))
- Add ultra high resolution to the media resolution in Parts.
([356c320](356c320566))
- Add ULTRA\_HIGH MediaResolution and new ThinkingLevel enums
([336b823](336b8236c0))
- Define and use DocumentMimeType for DocumentContent
([dc7f00f](dc7f00f78b))
- Support multi speaker for Vertex AI
([ecb00c2](ecb00c2241))

##### Bug Fixes

- Api version handling for interactions.
([436ca2e](436ca2e1d5))

##### Documentation

- Add documentation for the new Interactions API (Preview).
([e28a69c](e28a69c92a))
- Update and restructure codegen\_instructions
([00422de](00422de07b))
- Update docs for 1.55
([1cc43e7](1cc43e7d06))

###
[`v1.55.0`](https://redirect.github.com/googleapis/python-genai/blob/HEAD/CHANGELOG.md#1550-2025-12-11)

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

##### Features

- Add the Interactions API
([836a3](836a33c93f))
- Add enableEnhancedCivicAnswers feature in GenerateContentConfig
([15d1ea9](15d1ea9fbb))
- Add IMAGE\_RECITATION and IMAGE\_OTHER enum values to FinishReason
([8bb4b9a](8bb4b9a8b7))
- Add voice activity detection signal.
([feae46d](feae46dd76))

##### Bug Fixes

- Replicated voice config bytes handling
([c9f8668](c9f8668cea))

##### Documentation

- Regenerate docs for 1.54.0
([8bac8d2](8bac8d2d92))

###
[`v1.54.0`](https://redirect.github.com/googleapis/python-genai/blob/HEAD/CHANGELOG.md#1540-2025-12-08)

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

##### Features

- Support ReplicatedVoiceConfig
([07c74dd](07c74dd120))

##### Bug Fixes

- Apply timeout to the total request duration in aiohttp
([a4f4205](a4f4205dd9))
- Make APIError class picklable (fixes
[#&#8203;1144](https://redirect.github.com/googleapis/python-genai/issues/1144))
([e3d5712](e3d5712d9f))

##### Documentation

- Regenerate docs for 1.53.0
([3a2b970](3a2b9702ec))

###
[`v1.53.0`](https://redirect.github.com/googleapis/python-genai/blob/HEAD/CHANGELOG.md#1530-2025-12-03)

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

##### Features

- Add empty response for tunings.cancel()
([97cc7e4](97cc7e4eaf))

##### Bug Fixes

- Convert 'citationSources' key in CitationMetadata to 'citations' when
present (fixes
[#&#8203;1222](https://redirect.github.com/googleapis/python-genai/issues/1222))
([2f28b02](2f28b02517))
- Fix google.auth.transport.requests import error in Live API
([a842721](a842721cb1))

##### Documentation

- Improve docs for google.genai.types
([5b50adc](5b50adce2a))
- Recommend using response\_json\_schema in error messages and
docstrings.
([c0b175a](c0b175a0ca))
- Updating codegen instructions to use gemini 3 pro and nano banana pro
([060f015](060f015d7e))

</details>

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

###
[`v1.0.5`](https://redirect.github.com/langchain-ai/langgraph/releases/tag/1.0.5):
langgraph&#x3D;&#x3D;1.0.5

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

Changes since 1.0.4

- release(langgraph): bump to 1.0.5
([#&#8203;6582](https://redirect.github.com/langchain-ai/langgraph/issues/6582))
- feat(sdk-py): emit id as part of stream events
([#&#8203;6581](https://redirect.github.com/langchain-ai/langgraph/issues/6581))
- fix: update readme
([#&#8203;6570](https://redirect.github.com/langchain-ai/langgraph/issues/6570))
- release(checkpoint-postgres): 3.0.1
([#&#8203;6568](https://redirect.github.com/langchain-ai/langgraph/issues/6568))
- release(checkpoint-sqlite): 3.0.1
([#&#8203;6566](https://redirect.github.com/langchain-ai/langgraph/issues/6566))
- chore(cli): Pass through webhook configuration in dev server
([#&#8203;6557](https://redirect.github.com/langchain-ai/langgraph/issues/6557))
- feat: custom encryption at rest
([#&#8203;6482](https://redirect.github.com/langchain-ai/langgraph/issues/6482))
- chore: fix links for docs
([#&#8203;6538](https://redirect.github.com/langchain-ai/langgraph/issues/6538))
- chore: Bump lockfile
([#&#8203;6537](https://redirect.github.com/langchain-ai/langgraph/issues/6537))
- feat: Include pagination in assistants search response
([#&#8203;6526](https://redirect.github.com/langchain-ai/langgraph/issues/6526))

</details>

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

###
[`v0.14.12`](https://redirect.github.com/run-llama/llama_index/blob/HEAD/CHANGELOG.md#2025-12-30)

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

##### llama-index-callbacks-agentops \[0.4.1]

- Feat/async tool spec support
([#&#8203;20338](https://redirect.github.com/run-llama/llama_index/pull/20338))

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

- Feat/async tool spec support
([#&#8203;20338](https://redirect.github.com/run-llama/llama_index/pull/20338))
- Improve `MockFunctionCallingLLM`
([#&#8203;20356](https://redirect.github.com/run-llama/llama_index/pull/20356))
- fix(openai): sanitize generic Pydantic model schema names
([#&#8203;20371](https://redirect.github.com/run-llama/llama_index/pull/20371))
- Element node parser
([#&#8203;20399](https://redirect.github.com/run-llama/llama_index/pull/20399))
- improve llama dev logging
([#&#8203;20411](https://redirect.github.com/run-llama/llama_index/pull/20411))
- test(node\_parser): add unit tests for Java CodeSplitter
([#&#8203;20423](https://redirect.github.com/run-llama/llama_index/pull/20423))
- fix: crash in log\_vector\_store\_query\_result when result.ids is
None
([#&#8203;20427](https://redirect.github.com/run-llama/llama_index/pull/20427))

##### llama-index-embeddings-litellm \[0.4.1]

- Add docstring to LiteLLM embedding class
([#&#8203;20336](https://redirect.github.com/run-llama/llama_index/pull/20336))

##### llama-index-embeddings-ollama \[0.8.5]

- feat(llama-index-embeddings-ollama): Add keep\_alive parameter
([#&#8203;20395](https://redirect.github.com/run-llama/llama_index/pull/20395))
- docs: improve Ollama embeddings README with comprehensive
documentation
([#&#8203;20414](https://redirect.github.com/run-llama/llama_index/pull/20414))

##### llama-index-embeddings-voyageai \[0.5.2]

- Voyage multimodal 35
([#&#8203;20398](https://redirect.github.com/run-llama/llama_index/pull/20398))

##### llama-index-graph-stores-nebula \[0.5.1]

- feat(nebula): add MENTIONS edge to property graph store
([#&#8203;20401](https://redirect.github.com/run-llama/llama_index/pull/20401))

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

- feat(llama-index-llms-aibadgr): Add AI Badgr OpenAI‑compatible LLM
integration
([#&#8203;20365](https://redirect.github.com/run-llama/llama_index/pull/20365))

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

- add back haiku-3 support
([#&#8203;20408](https://redirect.github.com/run-llama/llama_index/pull/20408))

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

- fix: bedrock converse thinking block issue
([#&#8203;20355](https://redirect.github.com/run-llama/llama_index/pull/20355))

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

- Switch use\_file\_api to Flexible file\_mode; Improve File Upload
Handling & Bump google-genai to v1.52.0
([#&#8203;20347](https://redirect.github.com/run-llama/llama_index/pull/20347))
- Fix missing role from Google-GenAI
([#&#8203;20357](https://redirect.github.com/run-llama/llama_index/pull/20357))
- Add signature index fix
([#&#8203;20362](https://redirect.github.com/run-llama/llama_index/pull/20362))
- Add positional thought signature for thoughts
([#&#8203;20418](https://redirect.github.com/run-llama/llama_index/pull/20418))

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

- feature: pydantic no longer complains if you pass 'low', 'medium', 'h…
([#&#8203;20394](https://redirect.github.com/run-llama/llama_index/pull/20394))

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

- fix: Handle tools=None in OpenAIResponses.\_get\_model\_kwargs
([#&#8203;20358](https://redirect.github.com/run-llama/llama_index/pull/20358))
- feat: add support for gpt-5.2 and 5.2 pro
([#&#8203;20361](https://redirect.github.com/run-llama/llama_index/pull/20361))

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

- fix(confluence): support Python 3.14
([#&#8203;20370](https://redirect.github.com/run-llama/llama_index/pull/20370))

##### llama-index-readers-file \[0.5.6]

- Loosen constraint on `pandas` version
([#&#8203;20387](https://redirect.github.com/run-llama/llama_index/pull/20387))

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

- chore(deps): bump urllib3 from 2.5.0 to 2.6.0 in
/llama-index-integrations/readers/llama-index-readers-service-now in the
pip group across 1 directory
([#&#8203;20341](https://redirect.github.com/run-llama/llama_index/pull/20341))

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

- fix: pass timeout parameters to transport clients in BasicMCPClient
([#&#8203;20340](https://redirect.github.com/run-llama/llama_index/pull/20340))
- feature: Permit to pass a custom httpx.AsyncClient when creating a
BasicMcpClient
([#&#8203;20368](https://redirect.github.com/run-llama/llama_index/pull/20368))

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

- feat: add Typecast tool integration with text to speech features
([#&#8203;20343](https://redirect.github.com/run-llama/llama_index/pull/20343))

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

- Feat/async tool spec support
([#&#8203;20338](https://redirect.github.com/run-llama/llama_index/pull/20338))

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

- Fix chroma nested metadata filters
([#&#8203;20424](https://redirect.github.com/run-llama/llama_index/pull/20424))
- fix(chroma): support multimodal results
([#&#8203;20426](https://redirect.github.com/run-llama/llama_index/pull/20426))

##### llama-index-vector-stores-couchbase \[0.6.0]

- Update FTS & GSI reference docs for Couchbase vector-store
([#&#8203;20346](https://redirect.github.com/run-llama/llama_index/pull/20346))

##### llama-index-vector-stores-faiss \[0.5.2]

- fix(faiss): pass numpy array instead of int to add\_with\_ids
([#&#8203;20384](https://redirect.github.com/run-llama/llama_index/pull/20384))

##### llama-index-vector-stores-lancedb \[0.4.4]

- Feat/async tool spec support
([#&#8203;20338](https://redirect.github.com/run-llama/llama_index/pull/20338))
- fix(vector\_stores/lancedb): add missing '<' filter operator
([#&#8203;20364](https://redirect.github.com/run-llama/llama_index/pull/20364))
- fix(lancedb): fix metadata filtering logic and list value SQL
generation
([#&#8203;20374](https://redirect.github.com/run-llama/llama_index/pull/20374))

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

- Update mongo vector store to initialize without list permissions
([#&#8203;20354](https://redirect.github.com/run-llama/llama_index/pull/20354))
- add mongodb delete index
([#&#8203;20429](https://redirect.github.com/run-llama/llama_index/pull/20429))
- async mongodb atlas support
([#&#8203;20430](https://redirect.github.com/run-llama/llama_index/pull/20430))

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

- Redis metadata filter fix
([#&#8203;20359](https://redirect.github.com/run-llama/llama_index/pull/20359))

##### llama-index-vector-stores-vertexaivectorsearch \[0.3.3]

- feat(vertex-vector-search): Add Google Vertex AI Vector Search v2.0
support
([#&#8203;20351](https://redirect.github.com/run-llama/llama_index/pull/20351))

</details>

<details>
<summary>pytest-dev/pytest (pytest)</summary>

###
[`v9.0.2`](https://redirect.github.com/pytest-dev/pytest/releases/tag/9.0.2)

[Compare
Source](https://redirect.github.com/pytest-dev/pytest/compare/9.0.1...9.0.2)

### pytest 9.0.2 (2025-12-06)

#### Bug fixes

-
[#&#8203;13896](https://redirect.github.com/pytest-dev/pytest/issues/13896):
The terminal progress feature added in pytest 9.0.0 has been disabled by
default, except on Windows, due to compatibility issues with some
terminal emulators.

You may enable it again by passing `-p terminalprogress`. We may enable
it by default again once compatibility improves in the future.

Additionally, when the environment variable `TERM` is `dumb`, the escape
codes are no longer emitted, even if the plugin is enabled.

-
[#&#8203;13904](https://redirect.github.com/pytest-dev/pytest/issues/13904):
Fixed the TOML type of the `tmp_path_retention_count` settings in the
API reference from number to string.

-
[#&#8203;13946](https://redirect.github.com/pytest-dev/pytest/issues/13946):
The private `config.inicfg` attribute was changed in a breaking manner
in pytest 9.0.0.
Due to its usage in the ecosystem, it is now restored to working order
using a compatibility shim.
  It will be deprecated in pytest 9.1 and removed in pytest 10.

-
[#&#8203;13965](https://redirect.github.com/pytest-dev/pytest/issues/13965):
Fixed quadratic-time behavior when handling `unittest` subtests in
Python 3.10.

#### Improved documentation

-
[#&#8203;4492](https://redirect.github.com/pytest-dev/pytest/issues/4492):
The API Reference now contains cross-reference-able documentation of
`pytest's command-line flags <command-line-flags>`.

</details>

<details>
<summary>googleapis/mcp-toolbox-sdk-python (toolbox-core)</summary>

###
[`v0.5.4`](https://redirect.github.com/googleapis/mcp-toolbox-sdk-python/releases/tag/toolbox-llamaindex-v0.5.4):
toolbox-llamaindex: v0.5.4

[Compare
Source](https://redirect.github.com/googleapis/mcp-toolbox-sdk-python/compare/toolbox-core-v0.5.3...toolbox-core-v0.5.4)

##### Features

- **toolbox-llamaindex:** add protocol toggle to llamaindex clients
([#&#8203;453](https://redirect.github.com/googleapis/mcp-toolbox-sdk-python/issues/453))
([d5eece0](d5eece0d84))

</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:eyJjcmVhdGVkSW5WZXIiOiI0Mi41OS4wIiwidXBkYXRlZEluVmVyIjoiNDIuNjYuMTQiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbXX0=-->
2025-12-30 10:00:49 -08:00
dependabot[bot]
a35f64ef7d chore(deps): bump jws from 4.0.0 to 4.0.1 in /docs/en/getting-started/quickstart/js/adk (#2143)
Bumps [jws](https://github.com/brianloveswords/node-jws) from 4.0.0 to
4.0.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/brianloveswords/node-jws/releases">jws's
releases</a>.</em></p>
<blockquote>
<h2>v4.0.1</h2>
<h3>Changed</h3>
<ul>
<li>Fix advisory GHSA-869p-cjfg-cm3x: createSign and createVerify now
require
that a non empty secret is provided (via opts.secret, opts.privateKey or
opts.key)
when using HMAC algorithms.</li>
<li>Upgrading JWA version to 2.0.1, addressing a compatibility issue for
Node &gt;= 25.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/auth0/node-jws/blob/master/CHANGELOG.md">jws's
changelog</a>.</em></p>
<blockquote>
<h2>[4.0.1]</h2>
<h3>Changed</h3>
<ul>
<li>Fix advisory GHSA-869p-cjfg-cm3x: createSign and createVerify now
require
that a non empty secret is provided (via opts.secret, opts.privateKey or
opts.key)
when using HMAC algorithms.</li>
<li>Upgrading JWA version to 2.0.1, adressing a compatibility issue for
Node &gt;= 25.</li>
</ul>
<h2>[3.2.3]</h2>
<h3>Changed</h3>
<ul>
<li>Fix advisory GHSA-869p-cjfg-cm3x: createSign and createVerify now
require
that a non empty secret is provided (via opts.secret, opts.privateKey or
opts.key)
when using HMAC algorithms.</li>
<li>Upgrading JWA version to 1.4.2, adressing a compatibility issue for
Node &gt;= 25.</li>
</ul>
<h2>[3.0.0]</h2>
<h3>Changed</h3>
<ul>
<li><strong>BREAKING</strong>: <code>jwt.verify</code> now requires an
<code>algorithm</code> parameter, and
<code>jws.createVerify</code> requires an <code>algorithm</code> option.
The <code>&quot;alg&quot;</code> field
signature headers is ignored. This mitigates a critical security flaw
in the library which would allow an attacker to generate signatures with
arbitrary contents that would be accepted by <code>jwt.verify</code>.
See
<a
href="https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/">https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/</a>
for details.</li>
</ul>
<h2><a
href="https://github.com/brianloveswords/node-jws/compare/v1.0.1...v2.0.0">2.0.0</a>
- 2015-01-30</h2>
<h3>Changed</h3>
<ul>
<li>
<p><strong>BREAKING</strong>: Default payload encoding changed from
<code>binary</code> to
<code>utf8</code>. <code>utf8</code> is a is a more sensible default
than <code>binary</code> because
many payloads, as far as I can tell, will contain user-facing
strings that could be in any language. (<!-- raw HTML omitted
-->[6b6de48]<!-- raw HTML omitted -->)</p>
</li>
<li>
<p>Code reorganization, thanks [<a
href="https://github.com/fearphage"><code>@​fearphage</code></a>]! (<!--
raw HTML omitted --><a
href="https://github.com/brianloveswords/node-jws/commit/7880050">7880050</a><!--
raw HTML omitted -->)</p>
</li>
</ul>
<h3>Added</h3>
<ul>
<li>Option in all relevant methods for <code>encoding</code>. For those
few users
that might be depending on a <code>binary</code> encoding of the
messages, this
is for them. (<!-- raw HTML omitted -->[6b6de48]<!-- raw HTML omitted
-->)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="34c45b2c04"><code>34c45b2</code></a>
Merge commit from fork</li>
<li><a
href="49bc39b1f5"><code>49bc39b</code></a>
version 4.0.1</li>
<li><a
href="d42350ccab"><code>d42350c</code></a>
Enhance tests for HMAC streaming sign and verify</li>
<li><a
href="5cb007cf82"><code>5cb007c</code></a>
Improve secretOrKey initialization in VerifyStream</li>
<li><a
href="f9a2e1c8c6"><code>f9a2e1c</code></a>
Improve secret handling in SignStream</li>
<li><a
href="b9fb8d30e9"><code>b9fb8d3</code></a>
Merge pull request <a
href="https://redirect.github.com/brianloveswords/node-jws/issues/102">#102</a>
from auth0/SRE-57-Upload-opslevel-yaml</li>
<li><a
href="95b75ee56c"><code>95b75ee</code></a>
Upload OpsLevel YAML</li>
<li><a
href="8857ee7762"><code>8857ee7</code></a>
test: remove unused variable (<a
href="https://redirect.github.com/brianloveswords/node-jws/issues/96">#96</a>)</li>
<li>See full diff in <a
href="https://github.com/brianloveswords/node-jws/compare/v4.0.0...v4.0.1">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~julien.wollscheid">julien.wollscheid</a>, a
new releaser for jws since your current version.</p>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=jws&package-manager=npm_and_yarn&previous-version=4.0.0&new-version=4.0.1)](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>
2025-12-30 17:39:07 +00:00
dependabot[bot]
f4c22b3e27 chore(deps): bump golang.org/x/crypto from 0.43.0 to 0.45.0 in /docs/en/getting-started/quickstart/go/genkit (#1999)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from
0.43.0 to 0.45.0.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4e0068c009"><code>4e0068c</code></a>
go.mod: update golang.org/x dependencies</li>
<li><a
href="e79546e28b"><code>e79546e</code></a>
ssh: curb GSSAPI DoS risk by limiting number of specified OIDs</li>
<li><a
href="f91f7a7c31"><code>f91f7a7</code></a>
ssh/agent: prevent panic on malformed constraint</li>
<li><a
href="2df4153a03"><code>2df4153</code></a>
acme/autocert: let automatic renewal work with short lifetime certs</li>
<li><a
href="bcf6a849ef"><code>bcf6a84</code></a>
acme: pass context to request</li>
<li><a
href="b4f2b62076"><code>b4f2b62</code></a>
ssh: fix error message on unsupported cipher</li>
<li><a
href="79ec3a51fc"><code>79ec3a5</code></a>
ssh: allow to bind to a hostname in remote forwarding</li>
<li><a
href="122a78f140"><code>122a78f</code></a>
go.mod: update golang.org/x dependencies</li>
<li><a
href="c0531f9c34"><code>c0531f9</code></a>
all: eliminate vet diagnostics</li>
<li><a
href="0997000b45"><code>0997000</code></a>
all: fix some comments</li>
<li>Additional commits viewable in <a
href="https://github.com/golang/crypto/compare/v0.43.0...v0.45.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=golang.org/x/crypto&package-manager=go_modules&previous-version=0.43.0&new-version=0.45.0)](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: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-12-30 05:15:00 +00:00
Niraj Nandre
9695fc5eeb docs: Add Antigravity connection steps for Looker (#2192)
## Description

This PR adds a new section to the `looker_mcp.md` document that explains
how to connect Looker to Antigravity.

The new **"Connect with Antigravity"** section provides two methods for
connecting:

- **MCP Store:** A straightforward method using the built-in MCP Store
in Antigravity.
- **Custom config:** For connecting to a custom MCP server by adding a
configuration to the mcp_config.json file.

These changes will help users easily connect Looker to Antigravity.

## 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
- [ ] 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

Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-12-24 07:17:42 +00:00
manuka rahul
5a09d38056 docs: fix broken links (#2223)
Fix broken links
2025-12-23 15:01:52 +05:30
release-please[bot]
f520b4ed8a chore(main): release 0.24.0 (#2162)
🤖 I have created a release *beep* *boop*
---


##
[0.24.0](https://github.com/googleapis/genai-toolbox/compare/v0.23.0...v0.24.0)
(2025-12-19)


### Features

* **sources/cloud-gemini-data-analytics:** Add the Gemini Data Analytics
(GDA) integration for DB NL2SQL conversion to Toolbox
([#2181](https://github.com/googleapis/genai-toolbox/issues/2181))
([aa270b2](aa270b2630))
* **source/cloudsqlmysql:** Add support for IAM authentication in Cloud
SQL MySQL source
([#2050](https://github.com/googleapis/genai-toolbox/issues/2050))
([af3d3c5](af3d3c5204))
* **sources/oracle:** Add Oracle OCI and Wallet support
([#1945](https://github.com/googleapis/genai-toolbox/issues/1945))
([8ea39ec](8ea39ec32f))
* Support combining prebuilt and custom tool configurations
([#2188](https://github.com/googleapis/genai-toolbox/issues/2188))
([5788605](5788605818))
* **tools/mysql-get-query-plan:** Add new `mysql-get-query-plan` tool
for MySQL source
([#2123](https://github.com/googleapis/genai-toolbox/issues/2123))
([0641da0](0641da0353))


### Bug Fixes

* **spanner:** Move list graphs validation to runtime
([#2154](https://github.com/googleapis/genai-toolbox/issues/2154))
([914b3ee](914b3eefda))


---
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: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-12-19 02:07:06 +00:00
dishaprakash
5788605818 feat: Support combining prebuilt and custom tool configurations (#2188)
## Description

This PR updates the CLI to allow the --prebuilt flag to be used
simultaneously with custom tool flags (--tools-file, --tools-files, or
--tools-folder). This enables users to extend a standard prebuilt
environment with their own custom tools and configurations.

### Key changes

- Sequential Loading: Load prebuilt configurations first, then
accumulate any specified custom configurations before merging.

- Smart Defaults: Updated logic to only default to tools.yaml if no
configuration flags are provided.

- Legacy Auth Compatibility: Implemented an additive merge strategy for
authentication. Legacy authSources from custom files are merged into the
modern authServices map used by prebuilt tools.

- Strict Validation: To prevent ambiguity, the server will throw an
explicit error if a legacy authSource name conflicts with an existing
authService name (e.g., from a prebuilt config).

## 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 https://github.com/googleapis/genai-toolbox/issues/1220

---------

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-12-18 17:21:08 -08:00
gRedHeadphone
0641da0353 feat(tools/mysql-get-query-plan): tool impl + docs + tests (#2123)
## Description

Tool mysql-get-query-plan implementation, along with tests and docs.
Tool used to get information about how MySQL executes a SQL statement
(EXPLAIN).

## 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 #1692

---------

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Averi Kitsch <akitsch@google.com>
Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-12-19 01:02:16 +00:00
Wenxin Du
8ea39ec32f feat(sources/oracle): Add Oracle OCI and Wallet support (#1945)
Previously we used go-ora (a pure Go Oracle driver) because our release
pipeline did not support cross-compilation with CGO. Now that it's
fixed, we want to add support for Oracle OCI driver for advanced
features including digital wallet etc.

Users will be able to configure a source to use OCI by specifying a
`UseOCI: true` field. The source defaults to use the pure Go driver
otherwise.

Oracle Wallet:
- OCI users should use the `tnsAdmin` to set the wallet location
- Non-OCI users can should use the `walletLocation` field.

fix: https://github.com/googleapis/genai-toolbox/issues/1779
2025-12-18 19:02:17 +00:00
Juexin Wang
aa270b2630 feat: add the Gemini Data Analytics (GDA) integration for DB NL2SQL conversion to Toolbox (#2181)
## Description

This PR is to add the Gemini Data Analytics (GDA) integration for DB
NL2SQL conversion to Toolbox. It allows the user to convert a natural
language query to SQL statement based on their database instance. See
the doc section for details.

## 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 #2180

---------

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-12-18 09:58:46 -08:00
Yuan Teoh
6e87349431 docs: telemetry docs to provide endpoint without scheme or path (#2179)
## Description

According to the OTEL
([docs](https://pkg.go.dev/go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp#WithEndpoint)),
`WithEndpoint()` sets the target endpoint (host and port) the Exporter
will connect to. The provided endpoint should resemble
"example.com:4318" (no scheme or path). And it requires the endpoint to
be secure using `https://`.

To provide an insecure endpoint with `http://`, user will need to set
`OTEL_EXPORTER_OTLP_INSECURE=true`. This PR update the docs to reflect
this.

🛠️ Fixes #1539
2025-12-18 16:24:22 +00:00
dependabot[bot]
271f39d4b9 chore(deps): bump jws from 4.0.0 to 4.0.1 in /docs/en/getting-started/quickstart/js/langchain (#2118)
Bumps [jws](https://github.com/brianloveswords/node-jws) from 4.0.0 to
4.0.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/brianloveswords/node-jws/releases">jws's
releases</a>.</em></p>
<blockquote>
<h2>v4.0.1</h2>
<h3>Changed</h3>
<ul>
<li>Fix advisory GHSA-869p-cjfg-cm3x: createSign and createVerify now
require
that a non empty secret is provided (via opts.secret, opts.privateKey or
opts.key)
when using HMAC algorithms.</li>
<li>Upgrading JWA version to 2.0.1, addressing a compatibility issue for
Node &gt;= 25.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/auth0/node-jws/blob/master/CHANGELOG.md">jws's
changelog</a>.</em></p>
<blockquote>
<h2>[4.0.1]</h2>
<h3>Changed</h3>
<ul>
<li>Fix advisory GHSA-869p-cjfg-cm3x: createSign and createVerify now
require
that a non empty secret is provided (via opts.secret, opts.privateKey or
opts.key)
when using HMAC algorithms.</li>
<li>Upgrading JWA version to 2.0.1, adressing a compatibility issue for
Node &gt;= 25.</li>
</ul>
<h2>[3.2.3]</h2>
<h3>Changed</h3>
<ul>
<li>Fix advisory GHSA-869p-cjfg-cm3x: createSign and createVerify now
require
that a non empty secret is provided (via opts.secret, opts.privateKey or
opts.key)
when using HMAC algorithms.</li>
<li>Upgrading JWA version to 1.4.2, adressing a compatibility issue for
Node &gt;= 25.</li>
</ul>
<h2>[3.0.0]</h2>
<h3>Changed</h3>
<ul>
<li><strong>BREAKING</strong>: <code>jwt.verify</code> now requires an
<code>algorithm</code> parameter, and
<code>jws.createVerify</code> requires an <code>algorithm</code> option.
The <code>&quot;alg&quot;</code> field
signature headers is ignored. This mitigates a critical security flaw
in the library which would allow an attacker to generate signatures with
arbitrary contents that would be accepted by <code>jwt.verify</code>.
See
<a
href="https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/">https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/</a>
for details.</li>
</ul>
<h2><a
href="https://github.com/brianloveswords/node-jws/compare/v1.0.1...v2.0.0">2.0.0</a>
- 2015-01-30</h2>
<h3>Changed</h3>
<ul>
<li>
<p><strong>BREAKING</strong>: Default payload encoding changed from
<code>binary</code> to
<code>utf8</code>. <code>utf8</code> is a is a more sensible default
than <code>binary</code> because
many payloads, as far as I can tell, will contain user-facing
strings that could be in any language. (<!-- raw HTML omitted
-->[6b6de48]<!-- raw HTML omitted -->)</p>
</li>
<li>
<p>Code reorganization, thanks [<a
href="https://github.com/fearphage"><code>@​fearphage</code></a>]! (<!--
raw HTML omitted --><a
href="https://github.com/brianloveswords/node-jws/commit/7880050">7880050</a><!--
raw HTML omitted -->)</p>
</li>
</ul>
<h3>Added</h3>
<ul>
<li>Option in all relevant methods for <code>encoding</code>. For those
few users
that might be depending on a <code>binary</code> encoding of the
messages, this
is for them. (<!-- raw HTML omitted -->[6b6de48]<!-- raw HTML omitted
-->)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="34c45b2c04"><code>34c45b2</code></a>
Merge commit from fork</li>
<li><a
href="49bc39b1f5"><code>49bc39b</code></a>
version 4.0.1</li>
<li><a
href="d42350ccab"><code>d42350c</code></a>
Enhance tests for HMAC streaming sign and verify</li>
<li><a
href="5cb007cf82"><code>5cb007c</code></a>
Improve secretOrKey initialization in VerifyStream</li>
<li><a
href="f9a2e1c8c6"><code>f9a2e1c</code></a>
Improve secret handling in SignStream</li>
<li><a
href="b9fb8d30e9"><code>b9fb8d3</code></a>
Merge pull request <a
href="https://redirect.github.com/brianloveswords/node-jws/issues/102">#102</a>
from auth0/SRE-57-Upload-opslevel-yaml</li>
<li><a
href="95b75ee56c"><code>95b75ee</code></a>
Upload OpsLevel YAML</li>
<li><a
href="8857ee7762"><code>8857ee7</code></a>
test: remove unused variable (<a
href="https://redirect.github.com/brianloveswords/node-jws/issues/96">#96</a>)</li>
<li>See full diff in <a
href="https://github.com/brianloveswords/node-jws/compare/v4.0.0...v4.0.1">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~julien.wollscheid">julien.wollscheid</a>, a
new releaser for jws since your current version.</p>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=jws&package-manager=npm_and_yarn&previous-version=4.0.0&new-version=4.0.1)](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: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-12-17 11:32:09 -08:00
Anubhav Dhawan
776a5ca438 docs: Update Antigravity MCP plugin documentation (#2157)
This updates the documentation for the MCP Toolbox Antigravity plugin
according to the new configuration option for the plugin in the MCP
server window of Antigravity.
2025-12-12 13:12:18 +05:30
Mend Renovate
d08dd144ad chore(deps): update dependency llama-index to v0.14.10 (#2092)
This PR contains the following updates:

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

---

### Release Notes

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

###
[`v0.14.10`](https://redirect.github.com/run-llama/llama_index/blob/HEAD/CHANGELOG.md#2025-12-04)

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

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

- feat: add mock function calling llm
([#&#8203;20331](https://redirect.github.com/run-llama/llama_index/pull/20331))

##### llama-index-llms-qianfan \[0.4.1]

- test: fix typo 'reponse' to 'response' in variable names
([#&#8203;20329](https://redirect.github.com/run-llama/llama_index/pull/20329))

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

- feat: add Airweave tool integration with advanced search features
([#&#8203;20111](https://redirect.github.com/run-llama/llama_index/pull/20111))

##### llama-index-utils-qianfan \[0.4.1]

- test: fix typo 'reponse' to 'response' in variable names
([#&#8203;20329](https://redirect.github.com/run-llama/llama_index/pull/20329))

###
[`v0.14.9`](https://redirect.github.com/run-llama/llama_index/blob/HEAD/CHANGELOG.md#2025-12-02)

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

##### llama-index-agent-azure \[0.2.1]

- fix: Pin azure-ai-projects version to prevent breaking changes
([#&#8203;20255](https://redirect.github.com/run-llama/llama_index/pull/20255))

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

- MultiModalVectorStoreIndex now returns a multi-modal
ContextChatEngine.
([#&#8203;20265](https://redirect.github.com/run-llama/llama_index/pull/20265))
- Ingestion to vector store now ensures that \_node-content is readable
([#&#8203;20266](https://redirect.github.com/run-llama/llama_index/pull/20266))
- fix: ensure context is copied with async utils run\_async
([#&#8203;20286](https://redirect.github.com/run-llama/llama_index/pull/20286))
- fix(memory): ensure first message in queue is always a user message
after flush
([#&#8203;20310](https://redirect.github.com/run-llama/llama_index/pull/20310))

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

- feat(embeddings-bedrock): Add support for Amazon Bedrock Application
Inference Profiles
([#&#8203;20267](https://redirect.github.com/run-llama/llama_index/pull/20267))
- fix:(embeddings-bedrock) correct extraction of provider from
model\_name
([#&#8203;20295](https://redirect.github.com/run-llama/llama_index/pull/20295))
- Bump version of bedrock-embedding
([#&#8203;20304](https://redirect.github.com/run-llama/llama_index/pull/20304))

##### llama-index-embeddings-voyageai \[0.5.1]

- VoyageAI correction and documentation
([#&#8203;20251](https://redirect.github.com/run-llama/llama_index/pull/20251))

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

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

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

- fix(bedrock-converse): Only use guardrail\_stream\_processing\_mode in
streaming functions
([#&#8203;20289](https://redirect.github.com/run-llama/llama_index/pull/20289))
- feat: add anthropic opus 4.5
([#&#8203;20306](https://redirect.github.com/run-llama/llama_index/pull/20306))
- feat(bedrock-converse): Additional support for Claude Opus 4.5
([#&#8203;20317](https://redirect.github.com/run-llama/llama_index/pull/20317))

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

- Fix gemini-3 support and gemini function call support
([#&#8203;20315](https://redirect.github.com/run-llama/llama_index/pull/20315))

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

- update helicone docs + examples
([#&#8203;20208](https://redirect.github.com/run-llama/llama_index/pull/20208))

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

- Smallest Nit
([#&#8203;20252](https://redirect.github.com/run-llama/llama_index/pull/20252))
- Feat: Add gpt-5.1-chat model support
([#&#8203;20311](https://redirect.github.com/run-llama/llama_index/pull/20311))

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

- Add OVHcloud AI Endpoints provider
([#&#8203;20288](https://redirect.github.com/run-llama/llama_index/pull/20288))

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

- \[Bugfix] None check on content in delta in siliconflow LLM
([#&#8203;20327](https://redirect.github.com/run-llama/llama_index/pull/20327))

##### llama-index-node-parser-docling \[0.4.2]

- Relax docling Python constraints
([#&#8203;20322](https://redirect.github.com/run-llama/llama_index/pull/20322))

##### llama-index-packs-resume-screener \[0.9.3]

- feat: Update pypdf to latest version
([#&#8203;20285](https://redirect.github.com/run-llama/llama_index/pull/20285))

##### llama-index-postprocessor-voyageai-rerank \[0.4.1]

- VoyageAI correction and documentation
([#&#8203;20251](https://redirect.github.com/run-llama/llama_index/pull/20251))

##### llama-index-protocols-ag-ui \[0.2.3]

- fix: correct order of ag-ui events to avoid event conflicts
([#&#8203;20296](https://redirect.github.com/run-llama/llama_index/pull/20296))

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

- Refactor Confluence integration: Update license to MIT, remove
requirements.txt, and implement HtmlTextParser for HTML to Markdown
conversion. Update dependencies and tests accordingly.
([#&#8203;20262](https://redirect.github.com/run-llama/llama_index/pull/20262))

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

- Relax docling Python constraints
([#&#8203;20322](https://redirect.github.com/run-llama/llama_index/pull/20322))

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

- feat: Update pypdf to latest version
([#&#8203;20285](https://redirect.github.com/run-llama/llama_index/pull/20285))

##### llama-index-readers-reddit \[0.4.1]

- Fix typo in README.md for Reddit integration
([#&#8203;20283](https://redirect.github.com/run-llama/llama_index/pull/20283))

##### llama-index-storage-chat-store-postgres \[0.3.2]

- \[FIX] Postgres ChatStore automatically prefix table name with
"data\_"
([#&#8203;20241](https://redirect.github.com/run-llama/llama_index/pull/20241))

##### llama-index-vector-stores-azureaisearch \[0.4.4]

- `vector-azureaisearch`: check if user agent already in policy before
add it to azure client
([#&#8203;20243](https://redirect.github.com/run-llama/llama_index/pull/20243))
- fix(azureaisearch): Add close/aclose methods to fix unclosed client
session warnings
([#&#8203;20309](https://redirect.github.com/run-llama/llama_index/pull/20309))

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

- Fix/consistency level param for milvus
([#&#8203;20268](https://redirect.github.com/run-llama/llama_index/pull/20268))

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

- Fix postgresql dispose
([#&#8203;20312](https://redirect.github.com/run-llama/llama_index/pull/20312))

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

- fix: Update qdrant-client version constraints
([#&#8203;20280](https://redirect.github.com/run-llama/llama_index/pull/20280))
- Feat: update Qdrant client to 1.16.0
([#&#8203;20287](https://redirect.github.com/run-llama/llama_index/pull/20287))

##### llama-index-vector-stores-vertexaivectorsearch \[0.3.2]

- fix: update blob path in batch\_update\_index
([#&#8203;20281](https://redirect.github.com/run-llama/llama_index/pull/20281))

##### llama-index-voice-agents-openai \[0.2.2]

- Smallest Nit
([#&#8203;20252](https://redirect.github.com/run-llama/llama_index/pull/20252))

</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:eyJjcmVhdGVkSW5WZXIiOiI0Mi4xOS45IiwidXBkYXRlZEluVmVyIjoiNDIuMzIuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->

Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-12-11 20:29:47 -05:00
dishaprakash
af3d3c5204 feat(source/cloudsqlmysql): add support for IAM authentication in Cloud SQL MySQL source (#2050)
## Description

This PR adds the support for IAM authentication in the Cloud SQL MySQL
source

## 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)
- [ ] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>
2025-12-11 22:48:34 +00:00
release-please[bot]
466aef024f chore(main): release 0.23.0 (#2138)
🤖 I have created a release *beep* *boop*
---


##
[0.23.0](https://github.com/googleapis/genai-toolbox/compare/v0.22.0...v0.23.0)
(2025-12-11)


### ⚠ BREAKING CHANGES

* **serverless-spark:** add URLs to create batch tool outputs
* **serverless-spark:** add URLs to list_batches output
* **serverless-spark:** add Cloud Console and Logging URLs to get_batch
* **tools/postgres:** Add additional filter params for existing postgres
tools ([#2033](https://github.com/googleapis/genai-toolbox/issues/2033))

### Features

* **tools/postgres:** Add list-table-stats-tool to list table
statistics.
([#2055](https://github.com/googleapis/genai-toolbox/issues/2055))
([78b02f0](78b02f08c3))
* **looker/tools:** Enhance dashboard creation with dashboard filters
([#2133](https://github.com/googleapis/genai-toolbox/issues/2133))
([285aa46](285aa46b88))
* **serverless-spark:** Add Cloud Console and Logging URLs to get_batch
([e29c061](e29c0616d6))
* **serverless-spark:** Add URLs to create batch tool outputs
([c6ccf4b](c6ccf4bd87))
* **serverless-spark:** Add URLs to list_batches output
([5605eab](5605eabd69))
* **sources/mariadb:** Add MariaDB source and MySQL tools integration
([#1908](https://github.com/googleapis/genai-toolbox/issues/1908))
([3b40fea](3b40fea25e))
* **tools/postgres:** Add additional filter params for existing postgres
tools ([#2033](https://github.com/googleapis/genai-toolbox/issues/2033))
([489117d](489117d747))
* **tools/postgres:** Add list_pg_settings, list_database_stats tools
for postgres
([#2030](https://github.com/googleapis/genai-toolbox/issues/2030))
([32367a4](32367a472f))
* **tools/postgres:** Add new postgres-list-roles tool
([#2038](https://github.com/googleapis/genai-toolbox/issues/2038))
([bea9705](bea9705450))


### Bug Fixes

* List tables tools null fix
([#2107](https://github.com/googleapis/genai-toolbox/issues/2107))
([2b45266](2b45266598))
* **tools/mongodb:** Removed sortPayload and sortParams
([#1238](https://github.com/googleapis/genai-toolbox/issues/1238))
([c5a6daa](c5a6daa768))


### Miscellaneous Chores
* **looker:** Upgrade to latest go sdk
([#2159](https://github.com/googleapis/genai-toolbox/issues/2159))
([78e015d](78e015d7df))
---
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-12-11 22:26:26 +00:00
Twisha Bansal
26ead2ed78 docs: include npx method to run server (#2094)
## 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: Averi Kitsch <akitsch@google.com>
Co-authored-by: Anubhav Dhawan <anubhavdhawan@google.com>
Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-12-11 18:25:12 +00:00
Twisha Bansal
1f31c2c9b2 docs: add prompts quickstart using gemini cli (#2158)
## 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: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-12-11 23:16:16 +05:30
Dave Borowitz
c6ccf4bd87 feat(serverless-spark)!: add URLs to create batch tool outputs 2025-12-10 15:10:40 -08:00
Dave Borowitz
5605eabd69 feat(serverless-spark)!: add URLs to list_batches output
Unlike get_batch, in this case we are not returning a JSON type directly
from the server, so we can add the new fields in our top-level object
rather than wrapping.
2025-12-10 15:10:40 -08:00
Dave Borowitz
e29c0616d6 feat(serverless-spark)!: add Cloud Console and Logging URLs to get_batch
These are useful links for humans to follow for more information
(output, metrics, logs) that's not readily availble via MCP.
2025-12-10 15:10:40 -08:00
Dr. Strangelove
285aa46b88 feat(looker/tools): Enhance dashboard creation with dashboard filters (#2133)
## Description

Enhance dashboard creation with dashboard level filters. Also improve
tool descriptions.

## 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
2025-12-10 13:30:20 -08:00
Ganga4060
c5a6daa768 fix: removed sortPayload and sortParams from the reference (#1238)
Removed sortPayload and sortParams from the reference

---------

Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-12-10 19:19:07 +00:00
Siddharth Ravi
78b02f08c3 feat: add list-table-stats-tool to list table statistics. (#2055)
Adds the following tools for Postgres:
(1) list_table_stats: Lists table statistics in the database. .

<img width="3446" height="1304" alt="image"
src="https://github.com/user-attachments/assets/68951edc-8d99-460e-a1ac-2d3da9388baf"
/>

<img width="2870" height="1338" alt="image"
src="https://github.com/user-attachments/assets/100a3b7d-202d-4dfd-b046-5dab4390ba41"
/>


> 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 #1738
2025-12-10 11:11:33 +00:00
Anubhav Dhawan
18d0440f4e docs: separate Windows installation instructions for Command Prompt and PowerShell (#2097)
## Description
Updates the Windows installation instructions in `README.md` and the
Hugo documentation to provide separate, clear steps for Command Prompt
and PowerShell.

## Before
<img width="1836" height="1054" alt="image"
src="https://github.com/user-attachments/assets/46856ba5-e99f-4ea1-b851-921c1f885c40"
/>

## After
<img width="1842" height="1046" alt="image"
src="https://github.com/user-attachments/assets/80212630-1233-496e-98d2-9039de8e4cd0"
/>
<img width="1858" height="1070" alt="image"
src="https://github.com/user-attachments/assets/348a879d-7337-41c1-8358-fbe341c80525"
/>
2025-12-10 06:59:57 +00:00
Mend Renovate
7a135ce078 chore(deps): update module google.golang.org/genai to v1.36.0 (#1971)
This PR contains the following updates:

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

---

### Release Notes

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

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

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

##### Features

- add display name to FunctionResponseBlob
([66bd0fb](66bd0fbf35))
- add display name to FunctionResponseFileData
([f470cff](f470cff5a2))
- Add generate\_content\_config.thinking\_level
([93b2586](93b2586dfb))
- Add image output options to ImageConfig for Vertex
([c4b28c3](c4b28c3414))
- Add part.media\_resolution
([93b2586](93b2586dfb))
- support Function call argument streaming for all languages
([dd5ec01](dd5ec01f21))

</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:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNzMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE3My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: Anmol Shukla <shuklaanmol@google.com>
Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-12-10 00:19:55 +00:00
Srividya Reddy
bea9705450 feat(tools/postgres): Add new postgres-list-roles tool (#2038)
## Description
Adds a postgresql custom list_roles tool, that lists all the
user-created roles in the instance. It provides details about each
role's attributes and memberships.


> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution
![Uploading Screenshot 2025-11-26 at 1.16.42 AM.png…]()

<img width="1065" height="145" alt="Screenshot 2025-11-26 at 12 59
56 AM"
src="https://github.com/user-attachments/assets/d90131b1-d369-4108-b4db-ee5dc9aafe38"
/>


## 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)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<1738>

Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-12-09 21:48:20 +00:00
Srividya Reddy
489117d747 feat(tools/postgres)!: Add additional filter params for existing postgres tools (#2033)
## Description

Add additional filter parameters for existing PostgreSQL tools:

1.  `list_views`:
- Add a new optional `"schema_name"` filter parameter to return results
based on a specific schema name pattern.
- Add an additional column `"definition"` to return the view definition.
2.  `list_schemas`:
- Add a new optional `"owner"` filter parameter to return results based
on a specific owner name pattern.
- Add a new optional `"limit"` parameter to return a specific number of
rows.
3.  `list_indexes`:
- Add a new optional `"only_unused"` filter parameter to return only
unused indexes.

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

list_views
<img width="1531" height="763" alt="Screenshot 2025-11-25 at 1 36 39 PM"
src="https://github.com/user-attachments/assets/bd6805b3-43d2-46c7-adc8-62d3a4521d36"
/>

list_schemas
<img width="1519" height="755" alt="Screenshot 2025-11-25 at 1 35 54 PM"
src="https://github.com/user-attachments/assets/62d3e987-b64e-442b-ba1a-84def1df7a58"
/>


list_indexes
<img width="1523" height="774" alt="Screenshot 2025-11-25 at 1 35 32 PM"
src="https://github.com/user-attachments/assets/c6f73b3f-f8a2-4b76-9218-64d7011a2241"
/>


## 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-12-09 20:16:45 +00:00
Srividya Reddy
32367a472f feat(tools/postgres): add list_pg_settings, list_database_stats tools for postgres (#2030)
## Description
Adds the following tools for Postgres:
(1) list_pg_settings: List configuration parameters for the PostgreSQL
server.
(2) list_database_stats: Lists the key performance and activity
statistics for each database in the postgreSQL
  server.

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

list_pg_settings:
<img width="1526" height="803" alt="Screenshot 2025-11-25 at 10 19
48 AM"
src="https://github.com/user-attachments/assets/73634b9b-4936-4bf0-a94b-6b31fe3642a1"
/>
<img width="1064" height="715" alt="Screenshot 2025-11-25 at 10 27
19 AM"
src="https://github.com/user-attachments/assets/36c13585-27e4-4294-b451-1c1a963c0d6c"
/>

list_database_stats:
<img width="1511" height="779" alt="Screenshot 2025-11-25 at 10 21
12 AM"
src="https://github.com/user-attachments/assets/d283e018-ea81-427d-b1b4-7aaf79b9696b"
/>
<img width="1017" height="506" alt="Screenshot 2025-11-25 at 10 27
47 AM"
src="https://github.com/user-attachments/assets/47b72bd7-7114-4f2a-8a9d-cecc80bf47e9"
/>



## 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>
Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-12-09 11:55:53 -08:00
Pranjul Kalsi
3b40fea25e feat(sources/mariadb): add MariaDB source and MySQL tools integration (#1908)
## Description
This PR 
1. Adds **MariaDB** as a Source - Implementation is similar to **MySQL**
source
2. Utilises pre implemented **MySQL** Tools
- `mysql-execute-sql`
- `mysql-list-active-queries`
- `mysql-list-table-fragmentation`
- `mysql-list-tables`
- `mysql-list-tables-missing-unique-indexes`
- `mysql-sql`
**Note:** After discussion with @duwenxin99 in issue #1768, I initially
assumed MariaDB required new tools due to different metadata structures
and system tables. That is true for older MariaDB versions, but current
MySQL tooling already works with MariaDB (verified), so a separate tool
set was not needed.

3. Adds a source doc for **MariaDB** in docs 
4. Adds MariaDB integration tests using the existing MySQL test flow.
Note: The test file is based on the MySQL integration test, but
`GetMariaDBWants()` and
`RunMariDBListTablesTest()` are implemented because MariaDB returns
different metadata
and list-tables output, so the assertions must be MariaDB-specific.
5. Updates CI 

Lastly
I considered adding a MariaDB-exclusive Galera cluster monitoring tool,
but skipped it because it requires a multi-node Galera setup for
integration testing and would significantly increase CI complexity with
unclear usage demand.

## 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)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #1712 #1768

---------

Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-12-09 18:45:05 +00:00
dependabot[bot]
1dd971b8d5 chore(deps): bump golang.org/x/crypto from 0.43.0 to 0.45.0 in /docs/en/getting-started/quickstart/go/langchain (#2041)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from
0.43.0 to 0.45.0.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4e0068c009"><code>4e0068c</code></a>
go.mod: update golang.org/x dependencies</li>
<li><a
href="e79546e28b"><code>e79546e</code></a>
ssh: curb GSSAPI DoS risk by limiting number of specified OIDs</li>
<li><a
href="f91f7a7c31"><code>f91f7a7</code></a>
ssh/agent: prevent panic on malformed constraint</li>
<li><a
href="2df4153a03"><code>2df4153</code></a>
acme/autocert: let automatic renewal work with short lifetime certs</li>
<li><a
href="bcf6a849ef"><code>bcf6a84</code></a>
acme: pass context to request</li>
<li><a
href="b4f2b62076"><code>b4f2b62</code></a>
ssh: fix error message on unsupported cipher</li>
<li><a
href="79ec3a51fc"><code>79ec3a5</code></a>
ssh: allow to bind to a hostname in remote forwarding</li>
<li><a
href="122a78f140"><code>122a78f</code></a>
go.mod: update golang.org/x dependencies</li>
<li><a
href="c0531f9c34"><code>c0531f9</code></a>
all: eliminate vet diagnostics</li>
<li><a
href="0997000b45"><code>0997000</code></a>
all: fix some comments</li>
<li>Additional commits viewable in <a
href="https://github.com/golang/crypto/compare/v0.43.0...v0.45.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=golang.org/x/crypto&package-manager=go_modules&previous-version=0.43.0&new-version=0.45.0)](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: Averi Kitsch <akitsch@google.com>
2025-12-05 20:02:27 +00:00
release-please[bot]
cb4529cbaa chore(main): release 0.22.0 (#1997)
🤖 I have created a release *beep* *boop*
---


##
[0.22.0](https://github.com/googleapis/genai-toolbox/compare/v0.21.0...v0.22.0)
(2025-12-04)


### Features

* Add allowed-origins flag
([#1984](https://github.com/googleapis/genai-toolbox/issues/1984))
([862868f](862868f284))
* **tools/postgres:** Add list-query-stats and get-column-cardinality
functions
([#1976](https://github.com/googleapis/genai-toolbox/issues/1976))
([9f76026](9f76026925))
* **tools/spanner:** Add spanner list graphs to prebuiltconfigs
([#2056](https://github.com/googleapis/genai-toolbox/issues/2056))
([0e7fbf4](0e7fbf465c))
* **prebuilt/cloud-sql:** Add clone instance tool for cloud sql
([#1845](https://github.com/googleapis/genai-toolbox/issues/1845))
([5e43630](5e43630907))
* **serverless-spark:** Add create_pyspark_batch tool
([1bf0b51](1bf0b51f03))
* **serverless-spark:** Add create_spark_batch tool
([17a9792](17a979207d))
* Support alternate accessToken header name
([#1968](https://github.com/googleapis/genai-toolbox/issues/1968))
([18017d6](18017d6545))
* Support for annotations
([#2007](https://github.com/googleapis/genai-toolbox/issues/2007))
([ac21335](ac21335f4e))
* **tool/mssql:** Set default host and port for MSSQL source
([#1943](https://github.com/googleapis/genai-toolbox/issues/1943))
([7a9cc63](7a9cc63376))
* **tools/cloudsqlpg:** Add CloudSQL PostgreSQL pre-check tool
([#1722](https://github.com/googleapis/genai-toolbox/issues/1722))
([8752e05](8752e05ab6))
* **tools/postgres-list-publication-tables:** Add new
postgres-list-publication-tables tool
([#1919](https://github.com/googleapis/genai-toolbox/issues/1919))
([f4b1f0a](f4b1f0a680))
* **tools/postgres-list-tablespaces:** Add new postgres-list-tablespaces
tool ([#1934](https://github.com/googleapis/genai-toolbox/issues/1934))
([5ad7c61](5ad7c6127b))
* **tools/spanner-list-graph:** Tool impl + docs + tests
([#1923](https://github.com/googleapis/genai-toolbox/issues/1923))
([a0f44d3](a0f44d34ea))


### Bug Fixes

* Add import for firebirdsql
([#2045](https://github.com/googleapis/genai-toolbox/issues/2045))
([fb7aae9](fb7aae9d35))
* Correct FAQ to mention HTTP tools
([#2036](https://github.com/googleapis/genai-toolbox/issues/2036))
([7b44237](7b44237d4a))
* Format BigQuery numeric output as decimal strings
([#2084](https://github.com/googleapis/genai-toolbox/issues/2084))
([155bff8](155bff80c1))
* Set default annotations for tools in code if annotation not provided
in yaml
([#2049](https://github.com/googleapis/genai-toolbox/issues/2049))
([565460c](565460c4ea))
* **tools/alloydb-postgres-list-tables:** Exclude google_ml schema from
list_tables
([#2046](https://github.com/googleapis/genai-toolbox/issues/2046))
([a03984c](a03984cc15))
* **tools/alloydbcreateuser:** Remove duplication of project praram
([#2028](https://github.com/googleapis/genai-toolbox/issues/2028))
([730ac6d](730ac6d228))
* **tools/mongodb:** Remove `required` tag from the `canonical` field
([#2099](https://github.com/googleapis/genai-toolbox/issues/2099))
([744214e](744214e04c))

---
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-12-04 19:10:51 -05:00
Srividya Reddy
5ad7c6127b feat(tools/postgres-list-tablespaces): add new postgres-list-tablespaces tool (#1934)
## Description
Adds a postgresql custom list_tablespaces tool, that returns the details
of tablespaces present in database.

<img width="1719" height="698" alt="Screenshot 2025-11-12 at 9 11 13 AM"
src="https://github.com/user-attachments/assets/03964a1b-27e0-4da8-85a2-57db905163ed"
/>
<img width="1077" height="141" alt="Screenshot 2025-11-12 at 9 12 42 AM"
src="https://github.com/user-attachments/assets/f93f5692-eb62-4f30-8192-40c8873d4d00"
/>


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

Lists all tablespaces in the database. Returns the tablespace name,
owner name, size in bytes, internal object ID, the access control list
regarding permissions, and any specific tablespace options.

## 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
2025-12-04 20:38:54 +00:00
Srividya Reddy
f4b1f0a680 feat(tools/postgres-list-publication-tables): add new postgres-list-publication-tables tool (#1919)
## Description
Adds a postgresql custom list_publication_tables tool, that returns the
details of publication tables present in database.

Test Output:

<img width="845" height="239" alt="Screenshot 2025-11-11 at 12 50 59 AM"
src="https://github.com/user-attachments/assets/b7606e44-c5f6-4fc7-865e-7efadd112eff"
/>

<img width="1529" height="648" alt="Screenshot 2025-11-11 at 1 15 18 AM"
src="https://github.com/user-attachments/assets/6192b772-f0bc-4fb4-8032-ca487434d77c"
/>


> 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 #1738

Co-authored-by: Averi Kitsch <akitsch@google.com>
Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-12-04 19:26:45 +00:00
Dave Borowitz
17a979207d feat(serverless-spark): add create_spark_batch tool
This tool is almost identical to create_pyspark_batch, but for Java
Spark batches. There are some minor differences in how the main files
and args are provided.
2025-12-04 11:05:53 -08:00
Dave Borowitz
1bf0b51f03 feat(serverless-spark): add create_pyspark_batch tool
This tool creates a PySpark batch from a minimal set of parameters, to
keep things simple for the LLM. Advanced runtime and environment config
can be specified in tools.yaml.
2025-12-04 11:05:53 -08:00
Wenxin Du
744214e04c fix(tools/mongodb): remove required tag from the canonical field (#2099)
The `required` tag raises validation failure error when a boolean field
is defined as `false`:
```
ERROR "unable to parse tool file at "mongodb_tools.yaml": unable to parse tool "insert-one-device" as kind "mongodb-insert-one": [2:12] Key: 'Config.Canonical' Error:Field validation for 'Canonical' failed on the 'required' tag\n   1 | authRequired: []\n>  2 | canonical: false\n                  ^\n   3 | collection: Device\n   4 | database: xiar\n   5 | description: Inserts a single new document into the Device collection. The 'data' parameter must be a string containing the JSON object to insert.\n   6 | "
```
All the `required` tags are removed from the boolean `canonical` field
of the MongoDB tools. Unit tests are added.
2025-12-04 18:25:16 +00:00
Twisha Bansal
1e67810740 docs(toolbox-adk): Add quickstart for ADK JS SDK (#1862)
## Description

## 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
- [ ] 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 #<issue_number_goes_here>
2025-12-04 12:17:05 +05:30
Anubhav Dhawan
05799475b4 docs: update antigravity docs installation instructions and prerequisites (#2088)
This PR updates the documentation across the repository to reflect the
new installation workflow using `npx` and Node.js, replacing the
previous binary download instructions. It also standardizes the
prerequisites and adds helpful configuration notes for Windows users.

These changes simplify the setup process for users by leveraging `npx`
for executing the tools, ensuring they always use the latest version
without manual binary management. It also addresses feedback from PR
#2079 regarding installation clarity and Windows support.

---------

Co-authored-by: Twisha Bansal <twishabansal07@gmail.com>
2025-12-02 12:25:31 -08:00
gRedHeadphone
0e7fbf465c feat: add spanner list graphs to prebuiltconfigs (#2056)
## Description

Adds spanner list graphs to prebuildconfigs

## 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 #2051

---------

Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-12-01 22:33:41 +00:00
nandinisaini-google
5e43630907 feat(prebuilt/cloud-sql): Add clone instance tool for cloud sql (#1845)
## Description

---
This pull request adds a new tool, cloud-sql-clone-instance, which
enables cloning a Cloud SQL instance from the toolbox using the Cloud
SQL Admin API. The tool supports both standard cloning and point-in-time
recovery (PITR). It also supports specifying preferred zones for cloned
instances via the preferredZone and preferredSecondaryZone fields.

Key Features:
Instance Cloning: The tool allows you to clone a Cloud SQL instance by
specifying the source and destination instance names.
Point-in-Time Recovery (PITR): By providing a pointInTime timestamp, you
can create a clone of an instance as it existed at a specific moment.
High Availability Configuration: The preferredZone and
preferredSecondaryZone parameters allow you to configure the cloned
instance for high availability.

Tested: 
<img width="1182" height="446" alt="Screenshot 2025-11-11 at 12 21
47 PM"
src="https://github.com/user-attachments/assets/7f39a5a3-3967-43d0-8041-f1d47b4fbcd9"
/>


## 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)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #1915

Co-authored-by: prernakakkar-google <158031829+prernakakkar-google@users.noreply.github.com>
Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-12-01 21:31:58 +00:00
ishatilwani1301
7a9cc63376 feat(tool/mssql): Set default host and port for MSSQL source (#1943)
## Description

This pull request resolves issue
[#36](https://github.com/gemini-cli-extensions/sql-server/issues/36) by
introducing default connection parameters for the MSSQL prebuilt tool.
If a user does not specify a host or port, the tool will now default to
localhost:1433

**Changes Implemented**
The modification is in internal/prebuiltconfigs/tools/mssql.yaml, where
the host and port fields now include default values:
host: ${MSSQL_HOST:localhost}
port: ${MSSQL_PORT:1433}
This configuration allows the tool to function using the defaults, but
users can still set the MSSQL_HOST or MSSQL_PORT environment variables
to override them.

**Validation Process**
Validated changes by running the toolbox against a Microsoft SQL Server
instance hosted in a Docker container.

- **Database Setup:** A testdb database containing a products table was
initialized.
- **CLI Configuration:** The ~/.gemini/settings.json file was updated to
point to my local toolbox build.
- **Tool Launch:** The UI was started using go run . --prebuilt mssql
--ui
- **Testing:** Confirmed the connection logic by testing two scenarios.
One with the environment variables set and one without (to confirm the
default logic).

**1.** Default Value Connection: For this test, the MSSQL_HOST and
MSSQL_PORT environment variables were not defined. The application
correctly utilized the new default values (localhost:1433) to connect to
the testdb.
<img width="2175" height="1144" alt="Screenshot 2025-11-12 6 33 05 PM"
src="https://github.com/user-attachments/assets/bacfc9bf-8b35-42e1-ad53-4af3aef27125"
/>

**2.** Explicit Variable Connection: For the second test, MSSQL_HOST and
MSSQL_PORT were set to specific values. The application correctly
prioritized these variables over the new defaults and connected
successfully.
<img width="2175" height="1144" alt="Screenshot 2025-11-12 6 37 02 PM"
src="https://github.com/user-attachments/assets/61254849-211d-41f4-8c7d-ff92cf64a51c"
/>

Result: Both connection methods were verified by executing the
list_tables prebuilt tool via the UI. In each scenario, the tool
successfully retrieved the UserDetails table, confirming the changes.
<img width="2250" height="1144" alt="Screenshot 2025-11-12 6 38 12 PM"
src="https://github.com/user-attachments/assets/87085777-897e-4a74-9e3f-f36cc8a33305"
/>

## 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
[#36](https://github.com/gemini-cli-extensions/sql-server/issues/36)
2025-12-01 09:26:33 +00:00
Yuan Teoh
862868f284 feat: add allowed-origins flag (#1984)
Support `allowed-origins` flag to allow secure deployment of Toolbox.
Current Toolbox is **insecure by default**, which allows all origin
(`*`). This PR also updated docs to notify user of the new
`allowed-origins` flag in the Cloud Run, kubernetes, and docker
deployment docs.

This PR was tested manually by mocking a browser access:
1. Created a HTML file with Javascript fetch named
`malicious-client.html`:
```
<!DOCTYPE html>
<html>
<head>
    <title>Malicious CORS Test</title>
</head>
<body>
    <h1>Attempting to access API at http://127.0.0.1:5000/mcp</h1>
    <p>Check the **Chrome Developer Console** (F12 -> Console tab) for the result.</p>

    <script>
        fetch('http://127.0.0.1:5000/mcp', {
            method: 'POST',
            headers: {
                'Content-Type': 'application/json',
                // The browser automatically adds the 'Origin' header based on where this HTML is served from (http://localhost:8000)
            },
            body: JSON.stringify({
                "jsonrpc": "2.0",
                "id": 1,
                "method": "tools/list"
            })
        })
        .then(response => {
            console.log('Success (but check console for CORS enforcement details):', response);
            return response.json();
        })
        .then(data => console.log('Data received (only if CORS passes):', data))
        .catch(error => console.error('Fetch Error:', error));
    </script>

</body>
</html>
```
2. Run `python3 -m http.server 8000`
3. Open `http://localhost:8000/malicious-client.html` in browser.
4. Tried without `--allowed-origins` flag -- success.
     Tried with `--allowed-origins=http://localhost:8000` -- success.
     Tried with `--allowed-origins=http://foo.com` -- unsuccessful.

---------

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-11-27 17:03:53 +00:00