-
Notifications
You must be signed in to change notification settings - Fork 3.1k
Open
Description
Github MCP Tools aren't working with Gemini 2.5 models familly and deepagents javascript library
Code defines the mcp tools 'retriver':
export async function getGithubMCPTools(userToken: string, config?: { beforeToolCall?: () => Promise<void> | void, afterToolCall: () => Promise<void> | void }, toolName: string = "mcpGithubTool") {
const githubServerConfig: ClientConfig = {
mcpServers: {
github: {
transport: "http" as const,
url: "https://api.githubcopilot.com/mcp/",
headers: {
"Authorization": `Bearer ${userToken}`
},
}
},
beforeToolCall: config?.beforeToolCall,
afterToolCall: config?.afterToolCall,
additionalToolNamePrefix: toolName
};
// Initialize the client
const mcpClient = new MultiServerMCPClient(githubServerConfig);
await mcpClient.initializeConnections();
// Load the tools exposed by the GitHub server
const githubMCPTools = await mcpClient.getTools();
console.log('Tools', githubMCPTools)
// Returns
return githubMCPTools;
}Error Trace:
Error occured while computing the Deep agents outcome GoogleGenerativeAIFetchError: Error in middleware "todoListMiddleware": Error in middleware "FilesystemMiddleware": Error in middleware "PromptCachingMiddleware": [GoogleGenerativeAI Error]: Error fetching from https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent: [400 Bad Request] Invalid JSON payload received. Unknown name "lc" at 'tools[0]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[0]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[0]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[1]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[1]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[1]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[2]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[2]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[2]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[3]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[3]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[3]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[4]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[4]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[4]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[5]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[5]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[5]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[6]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[6]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[6]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[7]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[7]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[7]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[8]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[8]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[8]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[9]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[9]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[9]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[10]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[10]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[10]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[11]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[11]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[11]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[12]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[12]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[12]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[13]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[13]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[13]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[14]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[14]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[14]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[15]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[15]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[15]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[16]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[16]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[16]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[17]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[17]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[17]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[18]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[18]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[18]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[19]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[19]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[19]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[20]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[20]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[20]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[21]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[21]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[21]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[22]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[22]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[22]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[23]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[23]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[23]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[24]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[24]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[24]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[25]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[25]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[25]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[26]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[26]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[26]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[27]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[27]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[27]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[28]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[28]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[28]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[29]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[29]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[29]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[30]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[30]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[30]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[31]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[31]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[31]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[32]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[32]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[32]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[33]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[33]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[33]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[34]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[34]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[34]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[35]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[35]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[35]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[36]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[36]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[36]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[37]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[37]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[37]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[38]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[38]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[38]': Cannot find field.
Invalid JSON payload received. Unknown name "lc" at 'tools[39]': Cannot find field.
Invalid JSON payload received. Unknown name "type" at 'tools[39]': Cannot find field.
Invalid JSON payload received. Unknown name "id" at 'tools[39]': Cannot find field. [{"@type":"type.googleapis.com/google.rpc.BadRequest","fieldViolations":[{"field":"tools[0]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[0]': Cannot find field."},{"field":"tools[0]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[0]': Cannot find field."},{"field":"tools[0]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[0]': Cannot find field."},{"field":"tools[1]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[1]': Cannot find field."},{"field":"tools[1]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[1]': Cannot find field."},{"field":"tools[1]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[1]': Cannot find field."},{"field":"tools[2]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[2]': Cannot find field."},{"field":"tools[2]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[2]': Cannot find field."},{"field":"tools[2]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[2]': Cannot find field."},{"field":"tools[3]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[3]': Cannot find field."},{"field":"tools[3]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[3]': Cannot find field."},{"field":"tools[3]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[3]': Cannot find field."},{"field":"tools[4]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[4]': Cannot find field."},{"field":"tools[4]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[4]': Cannot find field."},{"field":"tools[4]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[4]': Cannot find field."},{"field":"tools[5]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[5]': Cannot find field."},{"field":"tools[5]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[5]': Cannot find field."},{"field":"tools[5]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[5]': Cannot find field."},{"field":"tools[6]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[6]': Cannot find field."},{"field":"tools[6]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[6]': Cannot find field."},{"field":"tools[6]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[6]': Cannot find field."},{"field":"tools[7]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[7]': Cannot find field."},{"field":"tools[7]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[7]': Cannot find field."},{"field":"tools[7]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[7]': Cannot find field."},{"field":"tools[8]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[8]': Cannot find field."},{"field":"tools[8]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[8]': Cannot find field."},{"field":"tools[8]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[8]': Cannot find field."},{"field":"tools[9]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[9]': Cannot find field."},{"field":"tools[9]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[9]': Cannot find field."},{"field":"tools[9]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[9]': Cannot find field."},{"field":"tools[10]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[10]': Cannot find field."},{"field":"tools[10]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[10]': Cannot find field."},{"field":"tools[10]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[10]': Cannot find field."},{"field":"tools[11]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[11]': Cannot find field."},{"field":"tools[11]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[11]': Cannot find field."},{"field":"tools[11]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[11]': Cannot find field."},{"field":"tools[12]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[12]': Cannot find field."},{"field":"tools[12]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[12]': Cannot find field."},{"field":"tools[12]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[12]': Cannot find field."},{"field":"tools[13]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[13]': Cannot find field."},{"field":"tools[13]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[13]': Cannot find field."},{"field":"tools[13]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[13]': Cannot find field."},{"field":"tools[14]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[14]': Cannot find field."},{"field":"tools[14]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[14]': Cannot find field."},{"field":"tools[14]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[14]': Cannot find field."},{"field":"tools[15]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[15]': Cannot find field."},{"field":"tools[15]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[15]': Cannot find field."},{"field":"tools[15]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[15]': Cannot find field."},{"field":"tools[16]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[16]': Cannot find field."},{"field":"tools[16]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[16]': Cannot find field."},{"field":"tools[16]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[16]': Cannot find field."},{"field":"tools[17]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[17]': Cannot find field."},{"field":"tools[17]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[17]': Cannot find field."},{"field":"tools[17]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[17]': Cannot find field."},{"field":"tools[18]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[18]': Cannot find field."},{"field":"tools[18]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[18]': Cannot find field."},{"field":"tools[18]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[18]': Cannot find field."},{"field":"tools[19]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[19]': Cannot find field."},{"field":"tools[19]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[19]': Cannot find field."},{"field":"tools[19]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[19]': Cannot find field."},{"field":"tools[20]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[20]': Cannot find field."},{"field":"tools[20]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[20]': Cannot find field."},{"field":"tools[20]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[20]': Cannot find field."},{"field":"tools[21]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[21]': Cannot find field."},{"field":"tools[21]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[21]': Cannot find field."},{"field":"tools[21]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[21]': Cannot find field."},{"field":"tools[22]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[22]': Cannot find field."},{"field":"tools[22]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[22]': Cannot find field."},{"field":"tools[22]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[22]': Cannot find field."},{"field":"tools[23]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[23]': Cannot find field."},{"field":"tools[23]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[23]': Cannot find field."},{"field":"tools[23]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[23]': Cannot find field."},{"field":"tools[24]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[24]': Cannot find field."},{"field":"tools[24]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[24]': Cannot find field."},{"field":"tools[24]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[24]': Cannot find field."},{"field":"tools[25]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[25]': Cannot find field."},{"field":"tools[25]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[25]': Cannot find field."},{"field":"tools[25]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[25]': Cannot find field."},{"field":"tools[26]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[26]': Cannot find field."},{"field":"tools[26]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[26]': Cannot find field."},{"field":"tools[26]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[26]': Cannot find field."},{"field":"tools[27]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[27]': Cannot find field."},{"field":"tools[27]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[27]': Cannot find field."},{"field":"tools[27]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[27]': Cannot find field."},{"field":"tools[28]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[28]': Cannot find field."},{"field":"tools[28]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[28]': Cannot find field."},{"field":"tools[28]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[28]': Cannot find field."},{"field":"tools[29]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[29]': Cannot find field."},{"field":"tools[29]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[29]': Cannot find field."},{"field":"tools[29]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[29]': Cannot find field."},{"field":"tools[30]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[30]': Cannot find field."},{"field":"tools[30]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[30]': Cannot find field."},{"field":"tools[30]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[30]': Cannot find field."},{"field":"tools[31]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[31]': Cannot find field."},{"field":"tools[31]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[31]': Cannot find field."},{"field":"tools[31]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[31]': Cannot find field."},{"field":"tools[32]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[32]': Cannot find field."},{"field":"tools[32]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[32]': Cannot find field."},{"field":"tools[32]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[32]': Cannot find field."},{"field":"tools[33]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[33]': Cannot find field."},{"field":"tools[33]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[33]': Cannot find field."},{"field":"tools[33]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[33]': Cannot find field."},{"field":"tools[34]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[34]': Cannot find field."},{"field":"tools[34]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[34]': Cannot find field."},{"field":"tools[34]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[34]': Cannot find field."},{"field":"tools[35]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[35]': Cannot find field."},{"field":"tools[35]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[35]': Cannot find field."},{"field":"tools[35]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[35]': Cannot find field."},{"field":"tools[36]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[36]': Cannot find field."},{"field":"tools[36]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[36]': Cannot find field."},{"field":"tools[36]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[36]': Cannot find field."},{"field":"tools[37]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[37]': Cannot find field."},{"field":"tools[37]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[37]': Cannot find field."},{"field":"tools[37]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[37]': Cannot find field."},{"field":"tools[38]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[38]': Cannot find field."},{"field":"tools[38]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[38]': Cannot find field."},{"field":"tools[38]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[38]': Cannot find field."},{"field":"tools[39]","description":"Invalid JSON payload received. Unknown name \"lc\" at 'tools[39]': Cannot find field."},{"field":"tools[39]","description":"Invalid JSON payload received. Unknown name \"type\" at 'tools[39]': Cannot find field."},{"field":"tools[39]","description":"Invalid JSON payload received. Unknown name \"id\" at 'tools[39]': Cannot find field."}]}]
at handleResponseNotOk (C:\x\node_modules\@langchain\google-genai\node_modules\@google\generative-ai\dist\index.js:434:11)
at processTicksAndRejections (node:internal/process/task_queues:95:5)
at makeRequest (C:\x\node_modules\@langchain\google-genai\node_modules\@google\generative-ai\dist\index.js:403:9)
at generateContent (C:\x\node_modules\@langchain\google-genai\node_modules\@google\generative-ai\dist\index.js:867:22)
at C:\Users\x\node_modules\@langchain\google-genai\src\chat_models.ts:984:18
at RetryOperation._fn (C:\x\node_modules\p-retry\index.js:50:12) {
status: 400,
statusText: 'Bad Request',
errorDetails: [
{
'@type': 'type.googleapis.com/google.rpc.BadRequest',
fieldViolations: [Array]
}
],
attemptNumber: 1,
retriesLeft: 6,
pregelTaskId: 'some_id_idk_what_sb_can_do_with_it'
}
While console.log prints:
[
DynamicStructuredTool {
lc_serializable: false,
lc_kwargs: {
name: 'mcpGithubTool__update_pull_request',
description: 'Update an existing pull request in a GitHub repository.',
schema: [Object],
responseFormat: 'content_and_artifact',
metadata: [Object],
defaultConfig: undefined,
func: [AsyncFunction: func]
},
lc_runnable: true,
name: 'mcpGithubTool__update_pull_request',
verbose: false,
callbacks: undefined,
tags: [],
metadata: { annotations: [Object] },
returnDirect: false,
verboseParsingErrors: false,
responseFormat: 'content_and_artifact',
defaultConfig: undefined,
description: 'Update an existing pull request in a GitHub repository.',
func: [AsyncFunction: func],
schema: { type: 'object', properties: [Object], required: [Array] }
},
DynamicStructuredTool {
lc_serializable: false,
lc_kwargs: {
name: 'mcpGithubTool__update_pull_request_branch',
description: 'Update the branch of a pull request with the latest changes from the base branch.',
schema: [Object],
responseFormat: 'content_and_artifact',
metadata: [Object],
defaultConfig: undefined,
func: [AsyncFunction: func]
},
lc_runnable: true,
name: 'mcpGithubTool__update_pull_request_branch',
verbose: false,
callbacks: undefined,
tags: [],
metadata: { annotations: [Object] },
returnDirect: false,
verboseParsingErrors: false,
responseFormat: 'content_and_artifact',
defaultConfig: undefined,
description: 'Update the branch of a pull request with the latest changes from the base branch.',
func: [AsyncFunction: func],
schema: { type: 'object', properties: [Object], required: [Array] }
},
...and_so_on
]The error is on side of Google.
Has somebody the working solution will make the tools executable? since this:
export async function getGithubMCPTools(userToken: string, config?: { beforeToolCall?: () => Promise<void> | void, afterToolCall: () => Promise<void> | void }, toolName: string = "mcpGithubTool") {
const githubServerConfig: ClientConfig = {
mcpServers: {
github: {
transport: "http" as const,
url: "https://api.githubcopilot.com/mcp/",
headers: {
"Authorization": `Bearer ${userToken}`
},
}
},
beforeToolCall: config?.beforeToolCall,
afterToolCall: config?.afterToolCall,
additionalToolNamePrefix: toolName
};
// Initialize the client
const mcpClient = new MultiServerMCPClient(githubServerConfig);
await mcpClient.initializeConnections();
// Load the tools exposed by the GitHub server
const githubMCPTools = await mcpClient.getTools();
const formattedFunctionDeclarations = githubMCPTools.map(tool => {
const sanitizedSchema = sanitizeSchema(tool.schema);
return {
name: tool.name,
description: tool.description,
parameters: sanitizedSchema,
};
});
// 2. Wrap the array of formatted tools in the final structure Gemini expects.
const geminiFormattedTools = [{
functionDeclarations: formattedFunctionDeclarations
}];
// --- END: NEW FORMATTING LOGIC ---
console.log('Final formatted tools for Gemini:', JSON.stringify(geminiFormattedTools, null, 2));
// Return the correctly structured and wrapped tools
return {
executableTools: githubMCPTools,
formattedToolsForGemini: geminiFormattedTools
};
}is the solution but tools aren't executable anymore
Metadata
Metadata
Assignees
Labels
No labels