MCP ExplorerExplorer

Gomcp Sdk

@LerianStudioon 10 months ago
2 MIT
FreeCommunity
AI Systems
A comprehensive, production-ready Go implementation of the Model Context Protocol (MCP) that works with ANY MCP-compatible client. Features full protocol support including sampling, roots, discovery, subscriptions, and automatic client compatibility adaptation.

Overview

What is Gomcp Sdk

gomcp-sdk is a comprehensive, production-ready Go implementation of the Model Context Protocol (MCP) that is compatible with any MCP-compatible client. It fully supports the protocol, including features such as sampling, roots, discovery, subscriptions, and automatic client compatibility adaptation.

Use cases

Use cases for gomcp-sdk include building IoT applications that require real-time data sampling and subscriptions, developing distributed systems that need context-aware interactions, and creating applications that require seamless compatibility with multiple MCP clients.

How to use

To use gomcp-sdk, ensure all tests pass on the main branch, create a git tag for the release, and push it to the origin. The release workflow will automatically run tests, generate a changelog, and create a GitHub release. Manual testing can also be initiated from the Actions tab if needed.

Key features

Key features of gomcp-sdk include full protocol support, automatic client compatibility adaptation, CI/CD workflows for testing across platforms, and simplified release processes without complex packaging or artifact management.

Where to use

gomcp-sdk can be used in various fields where the Model Context Protocol is applicable, such as IoT applications, distributed systems, and any software requiring context-aware communication between clients.

Content

CI/CD Workflows

Simple, focused workflows for the GoMCP SDK.

Available Workflows

🔄 CI Workflow (ci.yml)

Trigger: Push to main, Pull requests
Purpose: Test SDK across platforms and Go versions

Features:

  • Tests on Linux, macOS, Windows
  • Go versions 1.23 and 1.24
  • Format checking and linting
  • Race condition detection

🚀 Release Workflow (release.yml)

Trigger: Git tags (v*)
Purpose: Create GitHub releases

Features:

  • Automatic changelog generation
  • Tests before release
  • GitHub release creation
  • Go module versioning

Workflow Philosophy

This SDK uses a simplified approach:

  1. CI - Tests everything on every push/PR
  2. Release - Creates GitHub releases on git tags

No complex packaging, Docker builds, or artifact management - just clean, simple SDK releases.

Usage

Creating a Release

  1. Ensure all tests pass on main branch
  2. Create and push a git tag:
    git tag v1.0.0
    git push origin v1.0.0
    
  3. The release workflow will automatically:
    • Run tests
    • Generate changelog
    • Create GitHub release

Manual Testing

Run the CI workflow manually from the Actions tab if needed.

Benefits of Simplification

  • Faster CI - No unnecessary builds
  • Easier maintenance - Fewer moving parts
  • SDK-focused - Just versioning and testing
  • Less complexity - Two workflows instead of five
  • Clear purpose - Each workflow has one job

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers