Skip to content

Conversation

arjavdongaonkar
Copy link

🐛 Bug-fix PR

Before opening this PR please:

  1. make lint - passes ruff, mypy, pylint
  2. make test - all unit + integration tests green
  3. make coverage - ≥ 90 %
  4. make docker docker-run-ssl or make podman podman-run-ssl
  5. Update relevant documentation.
  6. Tested with sqlite and postgres + redis.
  7. Manual regression no longer fails. Ensure the UI and /version work correctly.

📌 Summary

Associated tools checkboxes in the Edit of virtual servers are not being pre-populated correctly.

🔁 Reproduction Steps

  1. Associate a tool with a server.
  2. Reopen the "Edit Server" modal.
  3. Observe that no checkboxes are checked, even though the server does have associated tools.

🐞 Root Cause

The server returns a list of tool names (e.g., ["test"]), while the checkboxes use tool IDs (e.g., "6e95c70ea2cb4fdf87237e9ed6b0468b") as their values.
As a result, no checkboxes are checked even when tools are associated with the server.

💡 Fix Description

  1. Change backend response for associatedTools to return a list of objects { id, name, displayName } instead of a list of strings.
  2. This will require changes in multiple places across the pipeline, but it provides stable identifiers and avoids name collisions.

🧪 Verification

Check Command Status
Lint suite make lint
Unit tests make test
Coverage ≥ 90 % make coverage
Manual regression no longer fails steps / screenshots

📐 MCP Compliance (if relevant)

  • Matches current MCP spec
  • No breaking change to MCP clients

✅ Checklist

  • Code formatted (make black isort pre-commit)
  • No secrets/credentials committed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant