{
"mcpServers": {
"mcp-demo-server": {
"command": "<see-readme>",
"args": []
}
}
}No install config available. Check the server's README for setup instructions.
Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
MCP demo server in golang, with OAauth 2.1 support.
Is it safe?
No package registry to scan.
No authentication — any process on your machine can connect.
License not specified.
Is it maintained?
Last commit 258 days ago.
Will it work with my client?
Transport: stdio. Works with Claude Desktop, Cursor, Claude Code, and most MCP clients.
No automated test available for this server. Check the GitHub README for setup instructions.
No known vulnerabilities.
This server is missing a description. Tools and install config are also missing.If you've used it, help the community.
Add informationHave you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Persistent memory using a knowledge graph
Privacy-first. MCP is the protocol for tool access. We're the virtualization layer for context.
Pre-build reality check. Scans GitHub, HN, npm, PyPI, Product Hunt — returns 0-100 signal.
Monitor browser logs directly from Cursor and other MCP compatible IDEs.
MCP Security Weekly
Get CVE alerts and security updates for Mcp Demo Server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
A comprehensive three-phase educational implementation of Model Context Protocol (MCP) servers in Go, demonstrating the progression from simple stdio communication to full OAuth 2.1 authentication. This project follows the MCP 2025-06-18 specification and serves as a practical learning resource for understanding MCP concepts and server development.
This repository contains three complete MCP server implementations, each building upon the previous phase:
Each phase implements the same core functionality (file reading, directory listing, system information) while adding increasingly sophisticated transport and security features.
stdio/network/auth/# Phase 1 - Stdio Transport
cd stdio/
go build -o ~/bin/mcp-demo-server-stdio .
mcp-demo-server-stdio
# Phase 2 - Network Transport
cd network/
go build -o ~/bin/mcp-demo-server-network .
mcp-demo-server-network
# Available at http://localhost:8080
# Phase 3 - OAuth 2.1 Authentication
cd auth/
go build -o ~/bin/mcp-demo-server-auth .
mcp-demo-server-auth
# Available at https://localhost:8443
# Phase 1: Use any MCP-compatible client with stdio transport
# Phase 2: HTTP requests
curl -X POST http://localhost:8080/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc": "2.0", "method": "tools/list", "id": 1}'
# Phase 3: OAuth 2.1 authentication flow
# 1. Get token
TOKEN=$(curl -s -X POST https://localhost:8443/oauth/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials" | jq -r '.access_token')
# 2. Use authenticated endpoint
curl -X POST https://localhost:8443/mcp \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"jsonrpc": "2.0", "method": "tools/list", "id": 1}'
All phases implement the same three tools:
file_path (string, required)directory_path (string, required)info_type (string, required)
os: Operating system namearch: System architecturego_version: Go runtime versionworking_dir: Current working directory