googleapis/mcp-toolbox · error
error generating manifest for tool %q: %w
Error message
error generating manifest for tool %q: %w
What it means
Error "error generating manifest for tool %q: %w" thrown in googleapis/mcp-toolbox.
Source
Thrown at internal/server/api.go:124
err = fmt.Errorf("invalid tool name: tool with name %q does not exist", toolName)
s.logger.DebugContext(ctx, err.Error())
_ = render.Render(w, r, newErrResponse(err, http.StatusNotFound))
return
}
srcName := tool.GetSourceName()
var src sources.Source
if srcName != "" {
src, ok = s.PrimitiveMgr.GetSource(srcName)
if !ok {
err = fmt.Errorf("unable to retrieve source for tool %s", toolName)
s.logger.DebugContext(ctx, err.Error())
_ = render.Render(w, r, newErrResponse(err, http.StatusNotFound))
return
}
}
toolManifest, err := tool.Manifest(src)
if err != nil {
err = fmt.Errorf("error generating manifest for tool %q: %w", toolName, err)
s.logger.DebugContext(ctx, err.Error())
_ = render.Render(w, r, newErrResponse(err, http.StatusInternalServerError))
return
}
// TODO: this can be optimized later with some caching
m := tools.ToolsetManifest{
ServerVersion: s.version,
ToolsManifest: map[string]tools.Manifest{
toolName: toolManifest,
},
}
render.JSON(w, r, m)
}
// toolInvokeHandler handles the API request to invoke a specific Tool.
func toolInvokeHandler(s *Server, w http.ResponseWriter, r *http.Request) {
ctx, span := s.instrumentation.Tracer.Start(r.Context(), "toolbox/server/tool/invoke")View on GitHub (pinned to 8cc6e09de2)
When it happens
Trigger: Thrown at internal/server/api.go:124 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of googleapis/mcp-toolbox@8cc6e09de2 (2026-09-05).
Data as JSON: /api/errors/7ff8f9259e94d9ad.
Report an issue: GitHub.