Skip to content

Add Model Context Protocol (MCP) Server using Node.js and TypeScript #233

@KaueReinbold

Description

@KaueReinbold

Description

Add a Model Context Protocol (MCP) server implementation to the Reminders project using Node.js and TypeScript. This will enable AI assistants to interact with the Reminders application through a standardized protocol.

Goals

  • Implement an MCP server that exposes Reminders API functionality
  • Use Node.js runtime with TypeScript for type safety
  • Follow MCP specification for server implementation
  • Integrate with existing API endpoints (load-balanced .NET and Go APIs)

Technical Considerations

  • Location: Create new directory at src/server/services/nodejs/reminders-mcp-server/
  • Technology Stack:
  • Integration: Connect to existing APIs via Nginx load balancer (http://reminders-nginx:9999)
  • Docker: Add service to docker-compose.yml with appropriate profile

Proposed Features

The MCP server should expose tools for:

  • Creating reminders
  • Retrieving reminders (single and list)
  • Updating reminders
  • Deleting reminders
  • Optionally: blockchain integration queries

Acceptance Criteria

  • MCP server successfully connects and responds to MCP protocol messages
  • All CRUD operations for reminders are exposed as MCP tools
  • TypeScript types properly defined for all operations
  • Docker Compose integration with appropriate profile
  • Documentation for connecting AI clients to the MCP server
  • Basic error handling and logging implemented

References

  • MCP Specification
  • Existing API: src/server/api/dotnet/Reminders.Api/
  • Current architecture documentation in README.md

Related Work

This builds on the existing multi-language API approach (already have .NET and Go implementations) by adding MCP protocol support for AI assistant integration.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions