Problem
The Bublik MCP tool list_results() is difficult to use correctly because its current name and description do not clearly explain what the tool actually returns.
MCP tool description issue
The description says:
List test results with filtering.
parent_id: Filter by parent package ID
start_exec_seqno: Retain only the consecutive sequence of results
starting from the specified execution number, based on the global run sequence
From an MCP client/agent perspective, this sounds like list_results() lists results under a parent package, possibly filtered by result status/properties. However, the actual behavior appears to be more specific:
- parent_id selects only direct children of the given result-tree node.
- It does not include nested descendants.
- start_exec_seqno then limits the response to a consecutive direct-child slice starting from the specified global execution sequence number.
- The query stops when the next result in the global execution sequence is not a direct child of the selected parent.
This behavior may be valid for Bublik UI lazy-loading, but it is not obvious from the MCP tool documentation.
MCP tool parameter issue
Also, start_exec_seqno appears to be optional in the underlying Bublik service/API, but the MCP tool schema marks it as required. If omitted at the service level, list_results() can return all direct children of parent_id without applying the consecutive-sequence slice. The MCP wrapper should make start_exec_seqno optional as well, or clearly document why MCP requires it.
Example
For a tree like:
packageA
packageAA
resultAA1
resultAA2
packageAB
resultAB1
packageB
If execution sequence is:
1 packageA
2 packageAA
3 resultAA1
4 resultAA2
5 packageAB
6 resultAB1
7 packageB
Then:
list_results(parent_id=packageA, start_exec_seqno=2)
returns only:
It does not return packageAB, because resultAA1 appears next in the global execution sequence and is not a direct child of packageA.
To get packageAB, the caller must know to call:
list_results(parent_id=packageA, start_exec_seqno=5)
For:
list_results(parent_id=packageAA, start_exec_seqno=3)
the result is:
because those are consecutive direct children of packageAA.
This behavior is non-obvious from the current MCP description.
Problem
The Bublik MCP tool list_results() is difficult to use correctly because its current name and description do not clearly explain what the tool actually returns.
MCP tool description issue
The description says:
From an MCP client/agent perspective, this sounds like list_results() lists results under a parent package, possibly filtered by result status/properties. However, the actual behavior appears to be more specific:
This behavior may be valid for Bublik UI lazy-loading, but it is not obvious from the MCP tool documentation.
MCP tool parameter issue
Also,
start_exec_seqnoappears to be optional in the underlying Bublik service/API, but the MCP tool schema marks it as required. If omitted at the service level,list_results()can return all direct children ofparent_idwithout applying the consecutive-sequence slice. The MCP wrapper should makestart_exec_seqnooptional as well, or clearly document why MCP requires it.Example
For a tree like:
If execution sequence is:
Then:
returns only:
It does not return packageAB, because resultAA1 appears next in the global execution sequence and is not a direct child of packageA.
To get packageAB, the caller must know to call:
For:
the result is:
because those are consecutive direct children of packageAA.
This behavior is non-obvious from the current MCP description.