Commit Graph

172 Commits

Author SHA1 Message Date
Wenxin Du
fd300dc606 feat: Add support for HTTP Tool pathParams (#726)
Allow users to specify dynamic path for HTTP tools.

fix: https://github.com/googleapis/genai-toolbox/issues/680
2025-06-20 14:53:49 -04:00
Yuan
4827771b78 feat: add support for optional parameters (#617)
Add a `default` field to parameters, that enables users to specify a
default value.

e.g.

```
  parameters:
    - name: name
      type: string
      default: "some-default-value"
      description: The name of the hotel.
```
if this parameter is invoked without specifying `name`, the parameter
would default to "some-default-value"


For parameter manifest, there will be an additional `Required` field.
The default `Required` field is true. If a `default` value is presented,
`Required: false`. Array parameter's item's `Required` field will
inherit the array's `Required` field.

Fixes #475
2025-06-20 10:46:59 -07:00
Yuan
a3aaf93525 docs: update template parameter docs for tools (#706)
documentation for #535
2025-06-18 14:34:41 -07:00
Wenxin Du
4055b0c356 feat: Support disable SSL verification for HTTP Source (#674)
Fix issue: https://github.com/googleapis/genai-toolbox/issues/661
2025-06-16 17:22:09 -04:00
Averi Kitsch
cb87f765a6 docs: redirect dev assist docs to official cloud documentation (#676) 2025-06-12 21:09:51 +00:00
Wenxin Du
054ec198b9 feat: Add Valkey Source and Tool (#532) 2025-06-11 23:17:32 -04:00
Wenxin Du
f0aef29b0c feat: Add Redis Source and Tool (#519)
1. Added Redis Source and Tool
2. Moved some integration test helpers from tools.go to common.go
3. Make auth integration test want an input variable
2025-06-11 22:47:27 -04:00
Yuan
850b32c5b0 docs(tools/alloydbainl): update broken links (#688)
Fixes #631
2025-06-10 11:25:12 -07:00
Anubhav Dhawan
927ef3c508 docs: Add toolbox-core examples to quickstart guide (#642)
## Description
This PR enhances our documentation by integrating `toolbox-core` code
snippets into the quickstart examples on the docsite.

## Context
Previously, our client-facing documentation primarily showcased agent
implementations using third-party frameworks like LangChain, LlamaIndex,
and ADK. This created a documentation gap, as there were no baseline
examples demonstrating how to use our foundational `toolbox-core` SDK
directly. Users who wanted to build a custom integration without a
specific framework had no direct reference in the guides.

## Changes
This PR introduces a new "Core" tab to all relevant code examples within
the auth services and local quickstart (with BigQuery) documentations.

---------

Co-authored-by: Yuan <45984206+Yuan325@users.noreply.github.com>
2025-06-10 18:30:39 +05:30
release-please[bot]
714d990c34 chore(main): release 0.7.0 (#640)
🤖 I have created a release *beep* *boop*
---


##
[0.7.0](https://github.com/googleapis/genai-toolbox/compare/v0.6.0...v0.7.0)
(2025-06-10)


### Features

* Add templateParameters field for mssqlsql
([#671](https://github.com/googleapis/genai-toolbox/issues/671))
([b81fc6a](b81fc6aa6c))
* Add templateParameters field for mysqlsql
([#663](https://github.com/googleapis/genai-toolbox/issues/663))
([0a08d2c](0a08d2c15d))
* **metrics:** Add user agent for prebuilt tools
([#669](https://github.com/googleapis/genai-toolbox/issues/669))
([29aa0a7](29aa0a70da))
* **tools/postgressql:** Add templateParameters field
([#615](https://github.com/googleapis/genai-toolbox/issues/615))
([b763469](b76346993f))


### Bug Fixes

* Improve versionString
([#658](https://github.com/googleapis/genai-toolbox/issues/658))
([cf96f4c](cf96f4c249))
* **server/stdio:** Notifications should not return a response
([#638](https://github.com/googleapis/genai-toolbox/issues/638))
([69d047a](69d047af46))
* **tools/mysqlsql:** Handled the null value for string case in mysqlsql
tools ([#641](https://github.com/googleapis/genai-toolbox/issues/641))
([ef94648](ef94648455))
* Update path library
([#678](https://github.com/googleapis/genai-toolbox/issues/678))
([4998f82](4998f82852)),
closes [#662](https://github.com/googleapis/genai-toolbox/issues/662)

---
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>
2025-06-09 17:15:26 -07:00
AlexTalreja
2f42de9507 docs: add templateParameters to postgres documentation (#657) 2025-06-05 17:33:58 -07:00
Kurtis Van Gent
ef0cbdb4bf docs: fix SQL capitalization (#667) 2025-06-05 20:01:17 +00:00
Yuan
1830702fd8 docs: update llms.txt (#652) 2025-06-04 11:45:51 -07:00
Anubhav Dhawan
f5de1af5bd docs: Simplify repetitive auth login command in bigquery quickstart (#643)
Co-authored-by: Yuan <45984206+Yuan325@users.noreply.github.com>
2025-06-04 10:12:52 -07:00
Yuan
46d7cdf4ba docs: add llms.txt file (#651)
Generating a `/llmstxt.txt` to provide LLM-friendly content. For more
information, checkout https://llmstxt.org/.
2025-06-04 10:01:26 -07:00
Twisha Bansal
4700dd363c docs: update to latest stable gemini models (#633)
Update to the latest Stable gemini models. See the [latest stable models
list](https://cloud.google.com/vertex-ai/generative-ai/docs/learn/model-versions#latest-stable).

Closes https://github.com/googleapis/genai-toolbox/issues/518
2025-06-02 10:40:52 +05:30
Averi Kitsch
3d10f85302 docs: add tool list to dev assist docs (#626)
Co-authored-by: Yuan <45984206+Yuan325@users.noreply.github.com>
2025-05-29 22:52:35 +00:00
Averi Kitsch
5a4cc9af6b docs: highlight dev assist workflow (#625) 2025-05-29 15:47:49 -07:00
Averi Kitsch
032b333961 docs: Add prebuilt tools documentation (#602)
Co-authored-by: trehanshakuntG <trehanshakunt@google.com>
Co-authored-by: Prerna Kakkar <prernakakkar@google.com>
Co-authored-by: prernakakkar-google <158031829+prernakakkar-google@users.noreply.github.com>
Co-authored-by: Yuan <45984206+Yuan325@users.noreply.github.com>
Co-authored-by: Yuan Teoh <yuanteoh@google.com>
2025-05-28 22:38:16 +00:00
Yuan
25afd63496 chore: fix release please version update (#622) 2025-05-28 15:33:50 -07:00
release-please[bot]
3180830403 chore(main): release 0.6.0 (#545)
🤖 I have created a release *beep* *boop*
---


##
[0.6.0](https://github.com/googleapis/genai-toolbox/compare/v0.5.0...v0.6.0)
(2025-05-28)


### Features

* Add Execute sql tool for SQL Server(MSSQL)
([#585](https://github.com/googleapis/genai-toolbox/issues/585))
([6083a22](6083a224aa))
* Add mysql-execute-sql tool
([#577](https://github.com/googleapis/genai-toolbox/issues/577))
([8590061](8590061ae4))
* Add new BigQuery tools: execute_sql, list_datatset_ids,
list_table_ids, get_dataset_info, get_table_info
([0fd88b5](0fd88b574b))
* Add spanner-execute-sql tool
([#576](https://github.com/googleapis/genai-toolbox/issues/576))
([d65747a](d65747a2dc))
* Add support for read-only in Spanner tool
([#563](https://github.com/googleapis/genai-toolbox/issues/563))
([6512704](6512704e77))
* Adding support for the --prebuilt flag
([#604](https://github.com/googleapis/genai-toolbox/issues/604))
([a29c800](a29c80012e))
* Support MCP stdio transport protocol
([#607](https://github.com/googleapis/genai-toolbox/issues/607))
([1702ce1](1702ce1e00))


### Bug Fixes

* Explicitly set query location for BigQuery queries
([#586](https://github.com/googleapis/genai-toolbox/issues/586))
([eb52b66](eb52b66d82))
* Fix spellings in comments
([#561](https://github.com/googleapis/genai-toolbox/issues/561))
([b58bf76](b58bf76dda))
* Prevent tool calls through MCP when auth is required
([#544](https://github.com/googleapis/genai-toolbox/issues/544))
([e747b6e](e747b6e289))
* Reinitialize required slice if nil
([#571](https://github.com/googleapis/genai-toolbox/issues/571))
([04dcf47](04dcf47912)),
closes [#564](https://github.com/googleapis/genai-toolbox/issues/564)

---
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>
2025-05-28 15:08:44 -07:00
Huan Chen
0fd88b574b feat: add new bigquery tools. (#619)
Added five new tools and corresponding documents:
1. bigquery-execute-sql
2. bigquery-list-dataset-ids
3. bigquery-list-table-ids
4. bigquery-get-dataset-info
5.  bigquery-get-table-info

---------

Co-authored-by: duwenxin <duwenxin@google.com>
Co-authored-by: Wenxin Du <117315983+duwenxin99@users.noreply.github.com>
2025-05-28 14:38:08 -07:00
Yuan
1702ce1e00 feat: support MCP stdio transport protocol (#607)
Support MCP
[stdio](https://modelcontextprotocol.io/specification/2024-11-05/basic/transports#stdio)
transport protocol!

To run stdio with Toolbox, user have to use the `--stdio` flag.

Example of running MCP Toolbox with MCP Inspector via stdio transport
protocol: `npx @modelcontextprotocol/inspector ./toolbox --stdio`.

---------

Co-authored-by: Kurtis Van Gent <31518063+kurtisvg@users.noreply.github.com>
Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-05-28 10:10:34 -07:00
Yuan
1bf6003eae docs: add note to tools (#608)
Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-05-28 15:38:18 +00:00
Anubhav Dhawan
22edbea579 docs: Update docs to guide with proper lifecycle management (#606)
Fixes
[#208](https://github.com/googleapis/mcp-toolbox-sdk-python/issues/208)
2025-05-26 20:12:53 +05:30
Huan Chen
8df757b280 docs: add note for bigquery parameter replacement introduction. (#589)
For issue https://github.com/googleapis/genai-toolbox/issues/566

---------

Co-authored-by: Yuan <45984206+Yuan325@users.noreply.github.com>
Co-authored-by: Kurtis Van Gent <31518063+kurtisvg@users.noreply.github.com>
2025-05-23 17:54:05 +00:00
prernakakkar-google
6083a224aa Feat: Add Execute sql tool for SQL Server(MSSQL) (#585)
This tool can be used across mssql(SQL Server) sources.

`mssql-execute-sql` config is as below:

```
tools:
  mssql_execute_sql_tool:
     kind: "mssql-execute-sql"
     source: my-mssql-source
     description: Use this tool to execute sql.
```

The `mssql-execute-sql` tool takes one parameter. Example request as
follow:
```
curl -X POST -H "Content-Type: application/json" -d '{"sql": "SELECT 1"}' http://127.0.0.1:5000/api/tool/mssql_execute_sql_tool/invoke
```

Reference for bug: b/416163913

---------

Co-authored-by: Yuan <45984206+Yuan325@users.noreply.github.com>
Co-authored-by: Mend Renovate <bot@renovateapp.com>
Co-authored-by: Kurtis Van Gent <31518063+kurtisvg@users.noreply.github.com>
Co-authored-by: Anubhav Dhawan <anubhavdhawan@google.com>
Co-authored-by: Huan Chen <142538604+Genesis929@users.noreply.github.com>
2025-05-22 00:10:55 +05:30
Jack Wotherspoon
0c07e15c2c docs: update ADK samples to use toolbox-core (#584)
`ToolboxTool` has been removed from `google-adk` package in
11ca528090

Instead `toolbox-core` should be used directly to remove the need for a
dependency on `toolbox-langchain` and `langchain`.

The new recommendation is to install `toolbox-core`.

```shell
pip install toolbox-core
```

And then load toolbox tools directly and pass it to the ADK agent.

```python
from google.adk.agents import Agent
# NEW IMPORT
from toolbox_core import ToolboxSyncClient

# Full control over MCP Toolbox
toolbox_client = ToolboxSyncClient("http://127.0.0.1:5000")
toolbox_tools = toolbox_client.load_toolset("my-toolset")

root_agent = Agent(
    model="gemini-2.0-flash",
    name="root_agent",
    instruction=agent_instruction,
    # Add Toolbox tools to ADK agent
    tools=toolbox_tools,
)
```
2025-05-20 17:44:50 +00:00
Twisha Bansal
0e4564f383 docs: change docs to add authenticated Toolbox Cloud Run access (#575) 2025-05-20 21:26:38 +05:30
trehanshakuntG
d65747a2dc feat: add spanner-execute-sql tool (#576)
This tool can be used across spanner sources.

`spanner-execute-sql` config is as below:

```
tools:
  spanner_execute_sql_tool:
    kind: "spanner-execute-sql"
    source: my-spanner-source
    description: Use this tool to execute sql.
```

The `spanner-execute-sql` tool takes one parameter. Example request as
follow:
```
curl -X POST -H "Content-Type: application/json" -d '{"sql": "SELECT 1"}' http://127.0.0.1:5000/api/tool/spanner_execute_sql_tool/invoke
```

---------

Co-authored-by: Yuan <45984206+Yuan325@users.noreply.github.com>
2025-05-19 14:48:11 -07:00
trehanshakuntG
8590061ae4 feat: add mysql-execute-sql tool (#577)
This tool can be used across mysql sources.

`mysql-execute-sql` config is as below:

```
tools:
  mysql_execute_sql_tool:
    kind: "mysql-execute-sql"
    source: my-mysql-source
    description: Use this tool to execute sql.
```

The `mysql-execute-sql` tool takes one parameter. Example request as
follow:
```
curl -X POST -H "Content-Type: application/json" -d '{"sql": "SELECT 1"}' http://127.0.0.1:5000/api/tool/mysql_execute_sql_tool/invoke
```
2025-05-20 02:17:39 +05:30
trehanshakuntG
6512704e77 feat: Add support for read-only in Spanner tool (#563)
Allowing user to add `readOnly` field in spanner tools.

The existing tool doesn't work for reading schema tables since schema
tables can only be accessed through read-only transaction.

This PR also resolve #435 for Spanner tool.

---------

Co-authored-by: Yuan <45984206+Yuan325@users.noreply.github.com>
2025-05-16 12:08:05 +05:30
Averi Kitsch
ca4491b0a9 docs: separate MCP docs (#569)
Create a doc page per database for MCP Dev Assist workflows
2025-05-15 15:40:19 -07:00
An Nguyen
2068f26302 chore: fix bigtable doc typo (#570)
Fix bigtable doc typo
2025-05-15 21:44:04 +00:00
AlexTalreja
e8e0125eaa docs: fix typo and import in local quickstart (#565) 2025-05-14 16:58:37 -07:00
Jack Wotherspoon
352b3ed91c chore: update typo (#555)
Windsurf was formerly https://codeium.com/

updating typo `codium` --> `codeium`
2025-05-12 13:35:11 -04:00
Averi Kitsch
df31fa6680 docs: Add Dev Assist docs for AlloyDB (#546)
Co-authored-by: duwenxin <duwenxin@google.com>
2025-05-09 16:01:49 -04:00
Kurtis Van Gent
b2ff195831 chore: update diagram for couchbase (#547)
Update diagram to include Couchbase.
2025-05-08 15:07:24 -06:00
Jack Wotherspoon
00e3a87258 docs: update typo in export_telemetry.md (#549)
Changing "Connector" --> "Collector".
2025-05-08 11:48:53 -04:00
Twisha Bansal
8834a36445 chore: auto update toolbox version in colab quickstarts (#534) 2025-05-07 10:50:49 +05:30
release-please[bot]
9a5d76e2dc chore(main): release 0.5.0 (#484)
🤖 I have created a release *beep* *boop*
---


##
[0.5.0](https://github.com/googleapis/genai-toolbox/compare/v0.4.0...v0.5.0)
(2025-05-06)


### Features

* Add Couchbase as Source and Tool
([#307](https://github.com/googleapis/genai-toolbox/issues/307))
([d7390b0](d7390b06b7))
* Add postgres-execute-sql tool
([#490](https://github.com/googleapis/genai-toolbox/issues/490))
([11ea7bc](11ea7bc584))


### Bug Fixes

* **deps:** Update module cloud.google.com/go/cloudsqlconn to v1.17.0
([#500](https://github.com/googleapis/genai-toolbox/issues/500))
([ad040cf](ad040cfb8b))
* **deps:** Update module cloud.google.com/go/spanner to v1.80.0
([#481](https://github.com/googleapis/genai-toolbox/issues/481))
([1e1348f](1e1348f5f0))
* **deps:** Update module google.golang.org/api to v0.231.0
([#505](https://github.com/googleapis/genai-toolbox/issues/505))
([50ec7f4](50ec7f4a06))

---
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 <45984206+Yuan325@users.noreply.github.com>
Co-authored-by: Yuan Teoh <yuanteoh@google.com>
2025-05-06 16:32:01 -06:00
Yuan
a087280fe2 docs: fix indentation for release please (#540) 2025-05-06 16:08:02 -06:00
Averi Kitsch
31a1fe971a docs: add dev assist tools using MCP documentation (#510)
Co-authored-by: Yuan <45984206+Yuan325@users.noreply.github.com>
2025-05-06 13:58:17 -07:00
Twisha Bansal
1d096de82f docs: use env-based project in LlamaIndex Quickstart (#531)
The `GoogleGenAI` llm directly takes in the `Project ID` [set
up](https://googleapis.github.io/genai-toolbox/samples/bigquery/local_quickstart/#before-you-begin)
in the quickstart.

Partially fixes https://github.com/googleapis/genai-toolbox/issues/518
2025-05-06 22:09:57 +05:30
Jack Wotherspoon
652dc5c2dd docs: update colab badge link (#536)
The "Open in Colab" badge on the getting started quickstart links to the
GitHub file and not the colab.

Updating it to properly point at
https://colab.research.google.com/github/googleapis/genai-toolbox/blob/main/docs/en/getting-started/colab_quickstart.ipynb
2025-05-06 19:56:54 +05:30
Anubhav Dhawan
1dce40fc26 docs: Bump Toolbox version in Colab Quickstart + fix typo (#533) 2025-05-06 16:51:52 +05:30
Anubhav Dhawan
717f43420a docs: Address connection issues in local quickstart with clearer guidance (#520)
Fix for #517 

This PR improves the Local Quickstart guide by adding troubleshooting
advice for common PostgreSQL connection issues in [step
1](https://googleapis.github.io/genai-toolbox/getting-started/local_quickstart/#step-1-set-up-your-database).

This reduces friction and improves the setup experience for users
following the local quickstart by addressing feedback in #517 regarding
difficulties in the initial database connection step.

### Problem
Users faced issues like password prompts or "role 'postgres' does not
exist" errors when trying to connect to PostgreSQL with `psql -h
127.0.0.1 -U postgres`.

### Solution
This PR adds a notice that provides solutions for common connection
errors, including guidance on using `sudo -i -u postgres` for peer
authentication.

---------

Co-authored-by: Averi Kitsch <akitsch@google.com>
2025-05-06 11:24:59 +05:30
Jack Wotherspoon
8b68764ef6 docs: update wording and typos for AuthServices (#525)
The wording for `Authorized Invocations` reads a bit funny and has a
typo.

Updating it to make a bit more sense and fixing a couple other typos
around auth.
2025-05-05 16:24:03 +00:00
Jack Wotherspoon
c7189e9fcf docs: use --tools-file over deprecated --tools_file (#524)
Updating docs to use the `--tools-file` flag over the now deprecated
`--tools_file`.

The new flag was added as of `v0.3.0` in #384 

This change reduces confusion as current usage in docs results in
following message on startup of Toolbox server:

```sh
Flag --tools_file has been deprecated, please use --tools-file instead
```

Fixes #514

---------

Co-authored-by: Yuan <45984206+Yuan325@users.noreply.github.com>
2025-05-05 16:16:40 +00:00
Jack Wotherspoon
8b635955fc docs: update typo in MySQL tool (#526)
Updating description of MySQL tool to properly mention MySQL as it
has a typo and currently says SQL Server.
2025-05-05 10:10:59 -06:00