
GOMCP
模型上下文协议的安全意识实现
3 years
Works with Finder
0
Github Watches
0
Github Forks
0
Github Stars
Model Context Protocol (MCP) - Go Implementation (WIP)
🚧 Work in Progress — This is an experimental implementation of the Model Context Protocol (MCP) in Go. It aims to provide a structured, extensible, and interoperable way to manage, stream, and persist model contexts across various AI/LLM runtimes.
🔍 Overview
The Model Context Protocol (MCP) defines a standard way to:
- Represent contextual state for models (e.g. LLM session state, memory, scratchpads).
- Serialize and deserialize context into a portable format (e.g. JSON, MessagePack, etc.).
- Define and stream context updates (e.g.
Add
,Forget
,Recall
,Clear
,Metadata
, etc.). - Enable modular backends (file, memory, remote storage, event logs).
This Go library provides:
- 🧠 Core context model types (
Context
,ContextUpdate
,MemoryBlock
, etc.) - 🔄 Encoders/decoders for standard formats (JSON, MsgPack planned)
- ⚙️ Streaming support via Go channels and/or gRPC (WIP)
- 💾 Storage backends (in-memory, file-based) — pluggable architecture
- 🛠️ Utilities for merging, pruning, chunking, and diffing context
📦 Installation
Note: This package is not yet stable. API subject to change.
go get github.com/null-create/gomcp
✨ Quickstart
import (
mcp "github.com/null-create/gomcp"
)
func main() {
ctx := mcp.NewContext("session-123")
ctx.AddMemoryBlock(mcp.MemoryBlock{
Role: "user",
Content: "How do I build a Go server?",
})
serialized, _ := ctx.ToJSON()
fmt.Println(string(serialized))
}
🧱 Core Concepts
Context
Represents a session or model runtime context. It may contain memory blocks, metadata, timestamps, etc.
MemoryBlock
The atomic unit of context — can represent messages, instructions, files, summaries, etc.
ContextUpdate
Represents a diff/change to a context. Useful for real-time or streaming updates.
🔧 Planned Features
- Streaming context updates over gRPC/WebSocket
- Context pruning and summarization
- Pluggable backend support (SQLite, Redis, S3)
- Context versioning and audit logs
- Schema validation (JSON Schema / Protobuf)
- Secure context signing + encryption
🧪 Project Status
This implementation is early-stage and under active development. Expect breaking changes as the protocol evolves.
Want to contribute or discuss ideas? Open an issue or start a discussion!
📂 Project Structure
/auth # JWT implementations
/backend # Storage plugins
/client # MCP client implementation
/cmd # CLI command implementations
/codec # JSON/MsgPack (de)serialization
/context # Context structure definitions
/docs # Project documentation
/examples # Example uses of the MCP API
/logger # Logger module
/mcp # MCP type and structure definitions
/server # MCP server implemnentation
/transport # Stdio transport
/validate # Validation tool implementations
相关推荐
😎简单易用、🧩丰富生态 -大模型原生即时通信机器人平台| 适配QQ / 微信(企业微信、个人微信) /飞书 /钉钉 / discord / telegram / slack等平台| 支持chatgpt,deepseek,dify,claude,基于LLM的即时消息机器人平台,支持Discord,Telegram,微信,Lark,Dingtalk,QQ,Slack
Reviews

user_PJAIMgXW
Gomcp is an outstanding application by null-create that I highly recommend! I've been using it for a while now, and it has significantly improved my workflow. Its intuitive interface and robust features make it a must-have tool. Whether you’re a beginner or an experienced user, gomcp is sure to meet your needs efficiently. Don't miss out on this fantastic app!

user_7Bc6qYtM
I've been using gomcp for a while, and it's truly outstanding. Created by null-create, this application has streamlined my tasks efficiently. Its seamless integration and intuitive design make it a must-have tool for anyone looking to enhance productivity. Highly recommend!

user_QTHFqZWz
As a devoted user of gomcp, I cannot recommend it enough. Created by null-create, this application has truly transformed my workflow. Its intuitive interface and efficient performance make it a standout choice. Whether you're a beginner or an advanced user, gomcp caters to all. The seamless integration and robust capabilities have made my tasks easier and more enjoyable. Highly impressed!

user_iN8GZQ7y
I have been using gomcp for a while now and I absolutely love it! Created by null-create, this application truly enhances my productivity. The interface is user-friendly and the features are well-designed. It's a must-have for anyone looking to streamline their workflow. Highly recommend!