# skgate [Health: Active]

**Category:** 🔗 Aggregators  
**Repository:** https://github.com/helv-io/skgate  
**GitHub Stars:** 13  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/skgate

## Description
OAuth MCP gateway. SI proxy with model aliases. Grok subscription as OpenAI-compatible API, no key.

## Claude Desktop Quick Installation
No confirmed install details yet, so no config is published. Follow the setup steps in the repository above.

## Documentation

## What the skgate MCP server does

The skgate MCP server provides a single self-hosted gateway for MCP servers and LLM provider APIs. MCP upstreams can be remote services, REST APIs, GitHub repositories, npm packages, or PyPI packages. Managed sources run inside the gateway image using bundled tools such as Node.js, pnpm, Bun, Deno, Python, Go, .NET, and git in the `latest` image.

MCP clients can connect to one upstream at `/mcp/<alias>` or to an aggregate endpoint at `/mcp`. The aggregate includes upstreams marked for inclusion, subject to their lifecycle settings. The site root can also serve the aggregate for MCP requests while directing normal browser requests to the administration interface.

The gateway exposes an OpenAI-compatible API for configured providers. Supported provider examples include OpenAI, Anthropic, Gemini, Grok, Mistral, DeepSeek, Groq, OpenRouter, Ollama, LM Studio, and other compatible endpoints. Grok can use subscription sign-in instead of an API key. User-created aliases let applications send a stable model name while the administrator changes its target.

## How it works

The skgate MCP server uses OIDC for administrator authentication and OAuth 2.1 for access to exposed MCP endpoints. Scripts and command-line clients can authenticate with keys created in the admin interface. Hosted connectors can use OAuth by leaving the client ID and secret empty where supported.

Managed MCP processes default to on-demand operation. A process starts when its individual endpoint receives a request and stops after ten minutes without requests. The first request after shutdown waits for startup. Administrators can choose an always-on lifecycle, and an imported configuration can set a different idle timeout. On-demand upstreams are not included in the aggregate endpoint, so clients must use their individual aliases.

For model access, applications use the gateway's `/v1` base URL and a generated `sk-...` key. `/api`, `/api/v1`, and the bare host provide equivalent API base URL forms. Model aliases appear first in `/v1/models` and are translated to their configured target before the request reaches a provider.

## Setup and configuration

A Docker deployment needs a persistent `/data` volume and an externally reachable `PUBLIC_URL`. The standard configuration also sets `OIDC_ISSUER`, `OIDC_CLIENT_ID`, and `OIDC_CLIENT_SECRET` for a confidential OIDC client. Start the container with Docker Compose, open `/admin`, and sign in through the identity provider.

After setup, add MCP upstreams from the administration interface. A managed process can be configured manually or imported from JSON. The Suggest configuration feature can inspect a source README and common manifests, then propose the command, arguments, installation step, and environment variables; the proposed values are not saved until reviewed and submitted. It requires the `latest` image and an available MCP helper model.

The `slim` image contains the proxy only. Use `latest` when the gateway must run managed MCP servers.

## Tools and capabilities

The skgate MCP server supports:

- OAuth 2.1 protection for MCP endpoints
- OIDC-based administrator login
- Remote, OpenAPI, and managed MCP upstreams
- Package and Git repository based MCP process management
- Individual and aggregate MCP URLs
- On-demand and always-on process lifecycles
- OpenAI-compatible chat and model endpoints
- Virtual API keys and user-defined model aliases
- Provider configuration for subscription or API-key access

## Limitations and notes

The administrator login requires an OIDC provider unless the bundled quickstart is used. The `latest` image is required for managed MCP servers and configuration suggestions; `slim` is proxy-only. On-demand startup adds wait time to the first request after a process has stopped. Empty environment values are not passed to managed servers, so required upstream settings must be supplied before saving the configuration.

_Full upstream README: https://allmcps.com/mcp/skgate/readme_

