---
title: "End-to-end demo — KYE Protocol™ runtime"
description: "One-click end-to-end demo of the KYE Protocol™ runtime — Gateway → PDP → Edge Arbiter → MCP Server"
url: https://kyeprotocol.com/sandbox/demos/demo/
lang: en
source: "KYE Protocol"
---

> One-click end-to-end demo of the KYE Protocol™ runtime — Gateway → PDP → Edge Arbiter → MCP Server

# One-click end-to-end demo

One click. Full flow. Signed end to end.

[Open playground →](https://kyeprotocol.com/sandbox/demos/playground/) [Demo](https://kyeprotocol.com/sandbox/demos/demo/)

**Live demo** Run this demo at [sandbox.kyeprotocol.com/demo.html](https://sandbox.kyeprotocol.com/demo.html); the same governed flow also runs in the [terminal](https://kyeprotocol.com/terminal/) and the [lab](https://kyeprotocol.com/lab/).

Runs a sample Action Request through every production Worker in the KYE™ runtime chain — kye-gateway → kye-pdp → back to your browser — and shows the response from each hop. No sign-up. No install. Uses the same public URLs you would use from your own code.

Plain Q&A

## Plain Q&A

Short questions. Short answers.

- **Do I need to sign up?** No.
- **Is this real?** Yes. Real Workers. Real keys.
- **Can I see the source?** Yes. The runtime is open.
- **Where does state go?** Public sandbox DB. Resets daily.
- **Will it log my IP?** No. Logs are scrubbed.
- **How many calls free?** Up to 200 per hour.
- **Curl-friendly?** Yes. Every endpoint.
- **Bring my own data?** Yes. Drop a JSON. Try.

### 1 · Gateway health

GET https://api.kyeprotocol.com/health

### 2 · PDP health

GET https://pdp.kyeprotocol.com/health

### 3 · Edge health

GET https://edge.kyeprotocol.com/health

### 4 · MCP health

GET https://mcp.kyeprotocol.com/health

### 5 · Public directory

GET /v1/directory/widgets

### 6 · Decision (auth needed)

POST /v1/decisions/evaluate

Idle. Click "Run" to fire all 6 probes.

### Request payload

```
{
  "action": {
    "id": "kye:action:demo:purchase:001",
    "verb": "submit_payment",
    "subject": "kye:agent:demo-sandbox-agent",
    "object":  "kye:invoice:acme:2026-Q2-099",
    "amount":  { "currency": "USD", "value": 4800.00 },
    "context": { "channel": "sandbox-demo", "now_iso": "2026-05-14T22:00:00Z" }
  },
  "policy_set_id": "kye:policy-set:demo:public-purchase-v1"
}
```

### Response

```
No probe run yet.
```

### Probe ledger

stepstatusendpointlatency

The decision step **requires a bearer token**. The demo's call lands at `kye-gateway`'s `POST /v1/decisions/evaluate` without one, so the expected response is `401 unauthorized` — that's the deny-by-default guard surface working as designed. To run a real signed decision, mint an API key via the [Customer Cloud → API keys](https://app.kyeprotocol.com/api-keys.html) panel and inject it as `Authorization: Bearer …`.

Canonical KYE™ surfaces referenced on this page: [KYE™ Edge Governance™](https://kyeprotocol.com/glossary/) · [KYE™ MCP Server](https://kyeprotocol.com/mcp/) · [KYE Protocol™](https://kyeprotocol.com/).
