LearnNewsExamplesServices
Frontmatter
id7486
titleRefactor to an MCP Tool-Providing Server
stateClosed
labels
enhancementai
assigneestobiu
createdAtOct 14, 2025, 1:49 PM
updatedAtOct 14, 2025, 2:11 PM
githubUrlhttps://github.com/neomjs/neo/issues/7486
authortobiu
commentsCount0
parentIssue7477
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtOct 14, 2025, 2:11 PM

Refactor to an MCP Tool-Providing Server

Closed v11.0.0 enhancementai
tobiu
tobiu commented on Oct 14, 2025, 1:49 PM

The server currently functions as a standard REST API, which forces the agent to use curl. This is inefficient and does not align with the Model Context Protocol (MCP) vision.

This ticket covers the refactoring of the server to become a true MCP-compliant, tool-providing server. It will parse its own openapi.yaml to dynamically expose its capabilities as tools for the agent.

Acceptance Criteria

  1. A new toolService.mjs is created that can parse the openapi.yaml and map API endpoints to their underlying service functions.
  2. A new tools.mjs route is created.
  3. A GET /tools/list endpoint is implemented. It returns a JSON array of available tools, derived from the OpenAPI spec.
  4. A POST /tools/call endpoint is implemented. It receives a toolName and arguments, executes the correct service function, and returns the result.
  5. The existing REST endpoints (e.g., /pull-requests, /labels) remain functional for now but are considered deprecated for agent use.
tobiu assigned to @tobiu on Oct 14, 2025, 1:49 PM
tobiu added the enhancement label on Oct 14, 2025, 1:49 PM
tobiu added the ai label on Oct 14, 2025, 1:49 PM
tobiu added parent issue #7477 on Oct 14, 2025, 1:49 PM
tobiu referenced in commit 70f3539 - "#7486 tools list endpoint" on Oct 14, 2025, 1:59 PM
tobiu referenced in commit 1ae245a - "#7486 tools call endpoint" on Oct 14, 2025, 2:11 PM
tobiu closed this issue on Oct 14, 2025, 2:11 PM