Skip to content

[BUG][PLUGINS]: tool_pre_invoke gets executed post MCP Tool Call #4103

@gnthaker

Description

@gnthaker

🐞 Bug Summary

Briefly describe the issue or unexpected behavior.
Intention was to invoke custom code for license check before actual MCP tool gets invoked. When we added tool_pre_invoke as plugin, tool calls are not getting blocked as it seems tool gets executed before plugin gets called.


🧩 Affected Component

Select the area of the project impacted:

  • mcpgateway - API
  • mcpgateway - UI (admin panel)
  • mcpgateway.wrapper - stdio wrapper
  • Federation or Transports
  • CLI, Makefiles, or shell scripts
  • Container setup (Docker/Podman/Compose)
  • Other (explain below)
    Tool Call

🔁 Steps to Reproduce

  1. created a plugin with config.yaml and py file for plugin
  2. start gateway with plugin
  3. observe tool call execution

🤔 Expected Behavior

What should have happened instead?


📓 Logs / Error Output

Paste any relevant stack traces or logs here.
⚠️ Do not paste secrets, credentials, or tokens.


🧠 Environment Info

You can retrieve most of this from the /version endpoint.

Key Value
Version or commit e.g. v0.9.0 or main@a1b2c3d
Runtime e.g. Python 3.11, Gunicorn
Platform / OS e.g. Ubuntu 22.04, macOS
Container e.g. Docker, Podman, none

🧩 Additional Context (optional)

Add any configuration details, flags, or related issues.

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingtriageIssues / Features awaiting triage

Type

No fields configured for Bug.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions