Files
mcp-python-sdk/examples/clients/simple-auth-client/README.md
2025-05-19 20:38:04 +01:00

71 lines
1.4 KiB
Markdown

# Simple Auth Client Example
A demonstration of how to use the MCP Python SDK with OAuth authentication over streamable HTTP transport.
## Features
- OAuth 2.0 authentication with PKCE
- Streamable HTTP transport
- Interactive command-line interface
## Installation
```bash
cd examples/clients/simple-auth-client
uv sync --reinstall
```
## Usage
### 1. Start an MCP server with OAuth support
```bash
# Example with mcp-simple-auth
cd path/to/mcp-simple-auth
uv run mcp-simple-auth --transport streamable-http --port 3001
```
### 2. Run the client
```bash
uv run mcp-simple-auth-client
# Or with custom server URL
MCP_SERVER_URL=http://localhost:3001 uv run mcp-simple-auth-client
```
### 3. Complete OAuth flow
The client will open your browser for authentication. After completing OAuth, you can use commands:
- `list` - List available tools
- `call <tool_name> [args]` - Call a tool with optional JSON arguments
- `quit` - Exit
## Example
```
🔐 Simple MCP Auth Client
Connecting to: http://localhost:3001
Please visit the following URL to authorize the application:
http://localhost:3001/authorize?response_type=code&client_id=...
✅ Connected to MCP server at http://localhost:3001
mcp> list
📋 Available tools:
1. echo - Echo back the input text
mcp> call echo {"text": "Hello, world!"}
🔧 Tool 'echo' result:
Hello, world!
mcp> quit
👋 Goodbye!
```
## Configuration
- `MCP_SERVER_URL` - Server URL (default: http://localhost:3001)