mcp-server-playground
by chrisleekr·★ 7·Score 41
A TypeScript MCP server with HTTP transport, OAuth proxy support, and tools for AWS services, system operations, and data streaming.
Overview
This is a comprehensive MCP server playground built with TypeScript that implements HTTP-based transport with SSE resumability. It features OAuth authentication/authorization with support for third-party providers like Auth0, GitHub, and Google. The server includes various tools for AWS services (ECS, S3), system operations (time, echo), and data streaming capabilities. It supports pluggable storage abstractions and stateful sessions across multiple server instances using Valkey for persistence. The architecture documentation is thorough, with detailed explanations of how OAuth integration works with dynamic client registration while addressing security concerns.
Try asking AI
After installing, here are 5 things you can ask your AI assistant:
When to choose this
Choose this when you need to build secure MCP services with OAuth integration, require reliable connection handling with SSE, or need to deploy MCP servers in clusters with stateful sessions.
When NOT to choose this
Avoid if you need a simple MCP server without OAuth complexity, are working in an environment without Node.js/Bun support, or require a fully managed service rather than a self-hosted solution.
Tools this server exposes
6 tools extracted from the READMEaws-ecsInvestigate the ECS service, task and cloudwatch logs using AWS ECS, Cloudwatch Logs and Bedrock
aws-s3Get the list of S3 buckets and objects
system-timeGet the current system time in various formats with timezone support
echoEcho a message back with transformations, repetition
streamingSimulate real-time streaming data with live updates
projectFind keywords in the current project directory
Comparable tools
Installation
Installation
- Clone the repository:
git clone <your-repo>
cd mcp-server-playground- Install Bun (if not already installed):
curl -fsSL https://bun.sh/install | bash- Install dependencies:
bun install- Set up environment variables:
cp .env.example .env- Set up the MCP server for local development:
bun run dev:setupClaude Desktop Configuration
Add to your Claude Desktop config.json:
{
"mcpServers": {
"mcp-server-playground": {
"command": "bun",
"args": ["run", "start"],
"env": {
"PORT": "3000"
}
}
}
}FAQ
- How does this server handle OAuth authentication?
- The server implements an OAuth proxy that delegates authorization to third-party providers like Auth0. This enables dynamic client registration while maintaining security by preventing abuse of public registration endpoints.
- Can this server be deployed as a cluster with stateful sessions?
- Yes, the server supports stateful sessions across multiple instances using Valkey to store session data. When a request comes to a different server instance, it checks if the session exists in Valkey and replays the initial request if needed.
Compare mcp-server-playground with
Last updated · Auto-generated from public README + GitHub signals.