drdroid-mcp-oauth-sim
An MCP server that is also its own OAuth 2.1 authorization server — for testing the DrDroid MCP OAuth connector end to end.
Point the connector here
| MCP Server URL | https://mcp-oauth-sim.20.84.32.208.nip.io/mcp |
|---|---|
| Auth | OAuth (discovery + DCR are both live — no client id needed) |
| Consent password | _b••••••••••
(set via the LOGIN_PASSWORD secret) |
Endpoints
| Protected resource metadata | /.well-known/oauth-protected-resource/mcp |
|---|---|
| Authorization server metadata | /.well-known/oauth-authorization-server |
| Registration (DCR) | POST /oauth/register
|
| Authorize | GET /oauth/authorize |
| Token | POST /oauth/token |
| Introspect / revoke | POST /oauth/introspect, POST /oauth/revoke |
Behaviour
- Access token TTL
3600s, refresh token TTL2592000s. Tokens are HS256 JWTs and survive pod restarts. - Grants supported:
authorization_code(PKCE S256 required),refresh_token,client_credentials. restart_servicerequires themcp:adminscope — untick it at consent to see scope enforcement.- Fault injection:
FORCE_401=false,DISABLE_DCR=false.
Tools
| Name | Description |
|---|---|
whoami | Return the OAuth identity behind the current request: subject, client_id, granted scopes, grant type and token expiry. Use this to verify the OAuth connection is working. |
echo | Echo a message back. Smoke test for tool invocation. |
list_services | List services in the demo catalog with tier, owner, health status, error rate and p99 latency. |
get_service_health | Get current health metrics for one service in the demo catalog. |
search_logs | Search the demo log corpus, optionally scoped to one service. |
list_incidents | List demo incidents with severity, status and summary. |
get_incident | Fetch one demo incident by id (e.g. INC-1042). |
restart_service | Simulate restarting a service. Requires the 'mcp:admin' scope — this is the tool to call when testing scope enforcement. |
Registered clients
| client_id | Name | Auth method | Source | redirect_uris | Registered |
|---|---|---|---|---|---|
drd-f79e71ad5d994129b893 |
DrDroid | client_secret_post | dcr | https://jfrog-dev-backend.prateekkanurkar.in/connectors/integrations/handlers/mcp/oauth/callback | 2026-08-03 11:37 |
drd-cf4b4a0fee394e76bc18 |
DrDroid | client_secret_post | dcr | https://jfrog-dev-backend.example/connectors/integrations/handlers/mcp/oauth/callback | 2026-08-03 09:17 |
drd-527d809fa0674b0a97de |
DrDroid | client_secret_post | dcr | https://jfrog-dev-backend.example/connectors/integrations/handlers/mcp/oauth/callback | 2026-08-03 09:16 |
drd-ec9b81361d8b48bca012 |
DrDroid | client_secret_post | dcr | https://jfrog-dev-backend.example/connectors/integrations/handlers/mcp/oauth/callback | 2026-08-03 09:16 |
drd-62debf7402474315a415 |
DrDroid | client_secret_post | dcr | https://jfrog-dev-backend.example/connectors/integrations/handlers/mcp/oauth/callback | 2026-08-03 09:15 |
drd-c039db33cc3245ceba08 |
DrDroid | client_secret_post | dcr | https://jfrog-dev-backend.example/connectors/integrations/handlers/mcp/oauth/callback | 2026-08-03 09:15 |
drd-5678b631650b44d8959d |
DrDroid | client_secret_post | dcr | https://jfrog-dev-backend.example/connectors/integrations/handlers/mcp/oauth/callback | 2026-08-03 09:15 |
drd-2caf73e84f6b4e898ea4 |
DrDroid | client_secret_post | dcr | https://jfrog-dev-backend.example/connectors/integrations/handlers/mcp/oauth/callback | 2026-08-03 09:04 |
drd-980e874720af4995b0ce |
DrDroid | client_secret_post | dcr | https://jfrog-dev-backend.example/connectors/integrations/handlers/mcp/oauth/callback | 2026-08-03 08:49 |
drdroid-m2m |
DrDroid M2M (client_credentials) | client_secret_post | static | — | 2026-08-03 08:32 |
Recent grants
| When (UTC) | Grant | Client | Scope | Detail | |
|---|---|---|---|---|---|
| 2026-10-02 07:49:30 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-02 07:49:27 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-02 06:19:25 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-02 06:19:23 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-02 04:49:21 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-02 04:49:19 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-02 03:19:17 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-02 03:19:15 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-02 01:49:12 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-02 01:49:11 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-02 00:19:08 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-02 00:19:05 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-01 22:49:04 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-01 22:49:02 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-01 21:18:59 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-01 21:18:57 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-01 19:48:56 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-01 19:48:54 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-01 18:18:52 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-01 18:18:50 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-01 17:17:59 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-01 17:17:57 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-01 16:17:50 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-01 16:17:48 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin | |
| 2026-10-01 15:17:36 | ok | refresh_token | drd-f79e71ad5d994129b893 |
mcp:read mcp:tools mcp:admin |