AndrewDonelson_go-mcp-server-service

AndrewDonelson_go-mcp-server-service

3.2

A JSON-RPC 2.0 compliant server implementing the Model Context Protocol (MCP) for note management.

The go-mcp-server-service is a JSON-RPC 2.0 compliant server designed to implement the Model Context Protocol (MCP) for managing notes. It serves as a boilerplate for developers to create their own projects, offering cross-platform support for Windows, Linux, and macOS. The server includes both a command-line interface and a service component, making it suitable for both development and release builds. It features a thread-safe note management system and supports a custom URI scheme for accessing notes. The server is built using Go and requires GNU Make and Git for building and versioning.

Features

  • JSON-RPC 2.0 compliant API
  • Cross-platform support (Windows, Linux, macOS)
  • Thread-safe note management
  • Development and release build configurations
  • Service and command-line interface components

MCP Tools

  • {'add-note': 'Adds a new note to the server with required arguments: name and content. It updates the state in a thread-safe manner and returns a confirmation message.'}

Usage with Different Platforms

Development builds

bash
# Build all components for all platforms
make dev

# Build for specific platform
make dev-windows
make dev-linux
make dev-darwin

# Build specific components
make build-cmd
make build-service

Release builds

bash
# Build all components for all platforms
make release-all

# Build for specific platform
make release-windows
make release-linux
make release-darwin

Run locally

bash
# Run command-line interface
make run-cmd

# Run service
make run-service

Claude Desktop Integration


{
  "mcpServers": {
    "notes-server": {
      "command": "./bin/dev/<platform>/notes-server",
      "args": []
    }
  }
}