VCP playground

Build a context token, see how your current state changes a rule-based guess at what you want, and match everyday values to constitution modules.

See exactly what a CSM-1 token built from your choices contains, and which private fields stay out of it.
Learn about the token format

No WebMCP tools registered. WebMCP lets AI agents in a browser use a page's tools, but this browser does not expose it (document.modelContext).
Quick load:

Context builder

Profile

Constitution

A constitution is the set of rules an AI follows. The persona is the role it plays, and adherence sets how strictly it keeps to the rules.

Persona

Constraint flags

Preferences

How are you right now? These go into your token. The chat below receives them only if you tick its sharing box, and even then the model sees a protection level, not the values.

Quick states:
3/5 · Moderate
2/5 · Low
3/5 · Moderate
2/5 · Low
1/5 · Minimal

Context lifecycle

🧠 Cognitive Set
now 3 (set at 3)
💭 Emotional Set
now 2 (set at 2)
🔋 Energy Set
now 3 (set at 3)
⚡ Urgency Set
now 2 (set at 2)
🩺 Body Set
now 1 (set at 1)

Generated token

VCP:1.0:playground-user
C:personal.growth.creative@1.0.0
P:M:3
G:learn_guitar:beginner:hands_on
X:🔇,⏰lim,💰lim,🔇quiet,💰low,⏱️30minutes
F:time_limited,noise_restricted,budget_limited
S:🔒present
R:🧠focused:3|💭calm:2|🔋rested:3|⚡unhurried:2|🩺neutral:1
LC:🧠S:0s|💭S:0s|🔋S:0s|⚡S:0s|🩺S:0s

Emoji key

🔇 quiet mode
🔕 silent required
💰 budget tier / budget limited
🆓 free only
⏰ time limited
⏱️ session length
📅 irregular schedule
🔒 private context present (no values carried)
🧠 cognitive state
⚡ perceived urgency (R-line); ⚡var on the X-line is variable energy
💭 emotional tone
🔋 energy level
🩺 body signals

Transmission summary

Transmitted lists the profile, constraint and personal-state fields written into the token above; portable-preference markers on the X-line are not listed. Influencing picks out the ones meant to change how an AI replies, with personal-state values as you set them. Withheld fields stay in this browser, and the token says only that private fields exist.

Transmitted (11)

goalexperiencelearning_styletime_limitedbudget_limitednoise_restrictedcognitive_stateemotional_toneenergy_levelperceived_urgencybody_signals

Influencing (8)

time_limitedbudget_limitednoise_restricted🧠 focused:3💭 calm:2🔋 rested:3⚡ unhurried:2🩺 neutral:1

Withheld (2)

work_typehousing

Ask the VCP Advisor muse

Sends your constitution ID, persona and constraint flags. Tick the box to share personal state; a live model, when one is configured, sees only a protection level.

Checking whether live chat is available…

Ask your question to begin the conversation.

Token inspector Loading runtime

Parse Token, Wire Decoder and Identity Validator run a WebAssembly build of the Rust SDK in your browser. It is built from VCP-SDK source later than the published vcp-wasm 4.2.0, so it also accepts adherence 0, R:none and known extension lines such as LC:. Parse Token reads the CSM-1 token you built above. Wire Decoder reads a VCP/A context wire string, the separate format for situational and personal state. Identity Validator checks a UVC token, the dotted name of a constitution with an optional version. Welfare Signal builds a prototype token in the site's own JavaScript.

Loading the local WASM runtime…

Related demos

Each guided demo shows these ideas with its own persona and context. What you built here does not carry over.