Frontmatter
| id | 7939 |
| title | Feat: Implement Dynamic Tool Proxies for MCP Client |
| state | Closed |
| labels | enhancementai |
| assignees | tobiu |
| createdAt | Nov 30, 2025, 12:03 AM |
| updatedAt | Nov 30, 2025, 12:11 AM |
| githubUrl | https://github.com/neomjs/neo/issues/7939 |
| author | tobiu |
| commentsCount | 1 |
| parentIssue | 7931 |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Nov 30, 2025, 12:11 AM |
Feat: Implement Dynamic Tool Proxies for MCP Client
tobiu assigned to @tobiu on Nov 30, 2025, 12:03 AM
tobiu added parent issue #7931 on Nov 30, 2025, 12:03 AM

tobiu
Nov 30, 2025, 12:11 AM
Input from Gemini 2.5:
✦ I have implemented Dynamic Tool Proxies for the MCP Client.
Deliverables Completed
- Dynamic Tool Proxy Implementation: Enhanced
Neo.ai.mcp.client.Clientto dynamically create proxy methods on aclient.toolsobject for each discovered tool. Tool names are converted fromsnake_casetocamelCasefor ergonomic access.- Demo Agent Update: Modified
ai/agents/mcp-demo-agent.mjsto successfully use the newclient.tools.<toolName>()syntax (e.g.,ghClient.tools.listIssues()).
tobiu closed this issue on Nov 30, 2025, 12:11 AM
This task aims to enhance the MCP Client by implementing Dynamic Tool Proxies. After connecting to an MCP server, the client will expose the server''s tools as directly callable methods under a
client.toolsnamespace. This improves ergonomics, discovery, and enables future argument validation.Deliverables
Neo.ai.mcp.client.Clientto:listTools()).client.toolsobject for each discovered tool.client.callTool()with the correct tool name and passed arguments.ai/agents/mcp-demo-agent.mjsto demonstrate using the newclient.tools.<toolName>()syntax.listTools()to perform client-side argument validation before making thecallToolrequest.