LearnNewsExamplesServices
Frontmatter
id7931
titleEpic: MCP Client Implementation for Agents
stateClosed
labels
epicai
assigneestobiu
createdAtNov 29, 2025, 6:32 PM
updatedAtDec 1, 2025, 6:14 PM
githubUrlhttps://github.com/neomjs/neo/issues/7931
authortobiu
commentsCount0
parentIssuenull
subIssues
7935 Feat: Implement MCP Client SDK and Demo Agent
7936 Feat: Implement MCP Client Configuration
7937 Feat: Implement MCP Client CLI and NPM Script
7938 Refactor: Standardize MCP Client CLI Filename
7939 Feat: Implement Dynamic Tool Proxies for MCP Client
7940 Feat: Add Neo.snakeToCamel utility function
7941 Investigate Multi-Server Tool Namespacing for MCP Client
7942 Feat: Enable External Configuration and Generic Runner for MCP Client CLI
7945 Refactor: MCP Client Lifecycle and CLI Runner Renaming
7946 Feat: Implement Client-Side Tool Validation in MCP Client
7949 Refactor Shared Tool Validation Service for MCP Client and Server
7950 Refactor ToolService to Class-based Architecture
7951 Enhance MCP Client with Connection State and Env Validation
7952 Fix ToolService.mjs Git Case Sensitivity Issue
7953 Refactor Client Configuration Consistency
subIssuesCompleted15
subIssuesTotal15
blockedBy[]
blocking[]
closedAtDec 1, 2025, 6:14 PM

Epic: MCP Client Implementation for Agents

Closed v11.14.0 epicai
tobiu
tobiu commented on Nov 29, 2025, 6:32 PM

Context

Currently, our agents (like pm.mjs) use the "Code Execution" pattern by importing service classes directly from ai/services.mjs. This is efficient but tightly coupled to the repo structure.

To achieve true decoupling and enable agents to use any MCP server (not just ours, and not just local ones), we need to implement a standard MCP Client within our SDK.

Strategic Value

  1. Standardization: Agents communicate via the standard MCP protocol (Stdio/SSE), making them agnostic to the server's implementation.
  2. Extensibility: Agents can connect to 3rd-party MCP servers (e.g., a PostgreSQL MCP, a Google Drive MCP) just by spawning them.
  3. Recursion: Agents can spawn new Agents, and those Agents can connect to the same (or different) MCP servers.

Key Deliverables

  1. Client SDK: Implement Neo.ai.mcp.Client using @modelcontextprotocol/sdk.
    • Support StdioClientTransport.
    • Support dynamic tool discovery (list_tools).
  2. Agent Integration: Update Neo.ai.Agent (future class) to accept a list of MCP Server configs, connecting to them on startup.
  3. Demo: An agent that uses the github-workflow server via MCP protocol instead of direct import.

Tech Stack

  • @modelcontextprotocol/sdk
tobiu added the epic label on Nov 29, 2025, 6:32 PM
tobiu added the ai label on Nov 29, 2025, 6:32 PM
tobiu assigned to @tobiu on Nov 29, 2025, 6:32 PM
tobiu cross-referenced by #7935 on Nov 29, 2025, 11:33 PM
tobiu added sub-issue #7935 on Nov 29, 2025, 11:33 PM
tobiu added sub-issue #7936 on Nov 29, 2025, 11:45 PM
tobiu added sub-issue #7937 on Nov 29, 2025, 11:48 PM
tobiu added sub-issue #7938 on Nov 29, 2025, 11:56 PM
tobiu referenced in commit fe69334 - "Epic: MCP Client Implementation for Agents #7931" on Nov 29, 2025, 11:57 PM
tobiu added sub-issue #7939 on Nov 30, 2025, 12:03 AM
tobiu added sub-issue #7940 on Nov 30, 2025, 12:19 AM
tobiu added sub-issue #7941 on Nov 30, 2025, 12:30 AM
tobiu added sub-issue #7942 on Nov 30, 2025, 12:57 AM
tobiu added sub-issue #7945 on Nov 30, 2025, 1:50 AM
tobiu added sub-issue #7946 on Nov 30, 2025, 12:00 PM
tobiu cross-referenced by #7947 on Nov 30, 2025, 1:24 PM
tobiu added sub-issue #7949 on Nov 30, 2025, 2:51 PM
tobiu added sub-issue #7950 on Nov 30, 2025, 3:38 PM
tobiu added sub-issue #7951 on Nov 30, 2025, 4:22 PM
tobiu added sub-issue #7952 on Nov 30, 2025, 4:44 PM
tobiu added sub-issue #7953 on Nov 30, 2025, 4:58 PM
tobiu closed this issue on Dec 1, 2025, 6:14 PM