sebastianbartmann/mcp-oauth-server
If you are the rightful owner of mcp-oauth-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
This project is a learning initiative focused on building remote MCP servers with GitHub OAuth authentication using FastMCP 2.x.
MCP Remote Server with OAuth
A learning project for building remote MCP (Model Context Protocol) servers with GitHub OAuth authentication using FastMCP 2.x.
Project Status
Current Stage: Basic MCP server working ✅ Next: Adding GitHub OAuth authentication 🚧
What is MCP?
The Model Context Protocol (MCP) is a standardized way for AI applications (like Claude) to interact with external tools and data sources. Think of it as "USB-C for AI" - a universal protocol for connecting AI to your systems.
Project Goals
- Learn how to build remote MCP servers
- Understand OAuth integration in MCP context
- Practice modern Python development with
uv
and FastMCP - Prepare for production deployment (Hetzner VPS → Google Cloud)
Tech Stack
- Python: 3.13+
- Package Manager: uv
- Framework: FastMCP 2.12.4
- Auth: GitHub OAuth (OAuthProxy pattern)
- Transport: HTTP/SSE (Server-Sent Events)
Setup
Prerequisites
- Python 3.10+
- uv package manager
- GitHub account (for OAuth)
Installation
# Clone the repository
git clone <repo-url>
cd mcptest
# Install dependencies
uv sync
# Run the basic server (no auth yet)
uv run python server.py
The server will start at http://localhost:8000/mcp
Testing
# Test the server with the included client
uv run python client_test.py
Current Features
Tools (Functions the AI can call)
greet(name)
- Simple greeting tooladd_numbers(a, b)
- Add two numbersget_server_info()
- Get server information
Resources (Data the AI can read)
info://welcome
- Welcome message with learning notes
Next Steps
- Register GitHub OAuth App
- Implement OAuthProxy authentication
- Test OAuth flow
- Document for production deployment
Learning Resources
Project Context
See claude.md
for detailed project context, decisions, and learning notes.
License
MIT License - Learning project