googleapis / googleapis/mcp-toolbox

Dynamic Data Source Selection

Open
#3,124 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

priority: p3 status: help wanted type: feature request
Dominant language
Go
Stars
16.5k
Forks
1.7k
Avg merge
4d 9h
Merged PRs (30d)
85

Description

Prerequisites
What are you trying to do that currently feels hard or impossible?

Currently, if i have to setup tools, they are binded to one data source. For ex, for blocking for 10 MySQL servers, i would have 10 different tools with the exact same query. Can the servername be passed as a header optionally during the call to call the corresponding mcp tool on a dynamic server?

Suggested Solution(s)

As an example, i have below for sql server which is a global tool to check for blocking and the target which is already configured in the data sources, can just be passed as a header

tools:
detect-blocking:
engine: mssql
timeout: 10
statement: |
SELECT *
FROM sys.dm_exec_requests
WHERE blocking_session_id <> 0;
description: |
Get blocking sessions from SQL Server

{
"target_source": "xxxx"
}

Alternatives Considered

No response

Additional Details

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files or tests are named. Start by tracing how tools are bound to configured data sources and how a call could provide the requested target source, then define the routing and validation behavior; done means one tool can select among configured database sources without duplicating the tool definition.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, mysql
Domain
backend, databases
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.