Skip to content

Conversation

@gophergogo
Copy link
Collaborator

@gophergogo gophergogo commented Dec 31, 2025

issue #144

gophergogo added 7 commits December 30, 2025 15:42
Document that tools and prompts use vector types directly in the
ResponseResult variant since they have simpler serialization needs.
…144)

Remove intermediate metadata conversion in handleListResources,
handleListTools, and handleListPrompts. Return results directly through
ResponseResult variant which supports ListResourcesResult, vector<Tool>,
and vector<Prompt> types.
)

Update listResources and listTools methods to properly extract results
from ResponseResult variant. listResources extracts ListResourcesResult
directly, while listTools extracts vector<Tool> and wraps it in
ListToolsResult.
Parse the Metadata response from server to extract the content string
and isError flag. Convert content string to TextContent wrapped in
ExtendedContentBlock for proper CallToolResult structure.
The Tool type only requires "name" field, inputSchema is optional per
MCP spec. Changed detection logic from checking (name && inputSchema)
to (name && !uri) to distinguish tools from resources.
Arguments were being flattened as "arguments.key" instead of nested
"arguments" object. Server looks for params["arguments"] which failed.
Now serialize arguments as JSON string to support nested object format
that server expects.

Also add debug output when callTool returns isError=true.
@gophergogo gophergogo merged commit de1605f into main Dec 31, 2025
2 checks passed
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.

3 participants