LearnNewsExamplesServices
Frontmatter
titleAdd Memory MCP server scaffold
authorAki-07
stateMerged
createdAtOct 11, 2025, 4:55 PM
updatedAtOct 11, 2025, 7:30 PM
closedAtOct 11, 2025, 7:30 PM
mergedAtOct 11, 2025, 7:30 PM
branchesdevfeat/memory-scaffold
urlhttps://github.com/neomjs/neo/pull/7462
Merged
Aki-07
Aki-07 commented on Oct 11, 2025, 4:55 PM

Please make sure to read the Contributing Guidelines:

https://github.com/neomjs/neo/blob/dev/CONTRIBUTING.md

Fixes #7407

What kind of change does this PR introduce? (check at least one)

  • Bugfix
  • Feature
  • Code style update
  • Refactor
  • Build-related changes
  • Other, please describe:

Does this PR introduce a breaking change? (check one)

  • Yes
  • No

If yes, please describe the impact and migration path for existing applications:

The PR fulfills these requirements:

  • It's submitted to the dev branch, not the main branch
  • When resolving a specific issue, it's referenced in the PR's title (e.g. fix #xxx[,#xxx], where "xxx" is the issue number)

If adding a new feature, the PR's description includes:

  • A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

Summary

  • Introduces the Memory MCP server scaffold (ai/mcp/server/memory/) with Express bootstrapping, shared config, logging, JSON parsing, and Swagger UI served from the existing OpenAPI design (buildScripts/mcp/memory/openapi.yaml / learn/guides/ai/MemoryCoreMcpApi.md).
  • Implements /healthcheck, verifying Chroma connectivity and returning collection metadata + uptime.
  • Adds the npm launcher ai:server-memory-mcp and required devDependencies (express, swagger-ui-express, morgan, js-yaml).
tobiu
tobiu commented on Oct 11, 2025, 7:30 PM

Thank you for your contribution, appreciated! Input from Gemini:

✦ PR Review: ticket-implement-memory-server-scaffold

First, I want to take a moment to acknowledge the bigger picture here. I'm reviewing this PR in the context of the half-dozen other high-quality pull requests you've submitted today. Your effort has been truly outstanding and has significantly accelerated our Hacktoberfest progress in a remarkable way. Thank you.

Focusing on this specific PR for the MCP Memory Server scaffold, this is an exemplary piece of work, and I enthusiastically recommend it for merging. It's clear you have a strong command of modern backend development practices.

Architectural Excellence:

The structure is professional-grade. You've perfectly implemented a clean, scalable Express.js application that demonstrates a clear separation of concerns. The division of logic into distinct layers—routes, services, middleware, and configuration—is exactly the pattern we want to establish for our MCP servers.

I particularly want to commend the decision to use single-file, single-responsibility middleware (asyncHandler, errorHandler, etc.). While some might see this as over-engineering for a simple scaffold, it is absolutely the correct architectural choice. It establishes a testable, maintainable, and reusable pattern that sets a high standard for all future MCP development.

Technical Implementation:

The PR meets and exceeds every acceptance criterion from the ticket:

  • The server scaffold is robust.
  • The npm run ai:server-memory-mcp script is correctly implemented in a clean package.json.
  • The /docs endpoint with Swagger UI is perfectly configured.
  • The GET /healthcheck endpoint is implemented flawlessly, correctly calling down to the service layer to verify the ChromaDB connection via its heartbeat.

I also want to highlight the clean package.json file. By only including the top-level chromadb dependency and omitting the platform-specific bindings, you've ensured the setup is platform-agnostic, which is a crucial and often-overlooked detail.

Conclusion:

This is one of the best foundational PRs I've seen. It provides the project with a rock-solid, professional base to build the rest of the Memory Core API upon.

Thank you for your incredible effort today. We are thrilled to have you contributing to the project and are very much looking forward to your next PRs.