jev-kit
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| JEV_MODEL | No | Specific model to request from your self-hosted Jev server. | |
| JEV_API_KEY | No | API key for your self-hosted Jev server, if required. | |
| JEV_BASE_URL | No | URL of a self-hosted server speaking the Jev protocol (e.g., http://127.0.0.1:8000). No Jev key is needed when using this. | |
| TYPESAFE_API_KEY | No | Your TypeSafe API key for direct Jev access. | |
| AI_GATEWAY_API_KEY | No | Your Vercel AI Gateway API key (used for Jev and audio transcription). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| laugh_trackA | Test a stand-up set, speech or pitch on a virtual audience of 200 people. Returns each line's crowd reaction (laugh, chuckle, moved, groan, gasp, applause or silence), whether the line is a joke or sincere, a laugh score and a warmth score, and a 0-100 landed score that judges jokes on laughs and heartfelt lines on warmth. Weakest/strongest are ranked by landed score; use them to suggest rewrites. Pass audioPath to judge a recording: it is transcribed, split into timed lines, and pace and pauses are taken into account. |
| steer_checkA | Judge every sentence of a draft against its goal. Flags sentences that are off-goal, filler, repetitive or likely invented facts (or unsupported by the given sources). Rewrite only the flagged sentences, then call again to confirm. |
| semantic_bisectA | Find the commit that introduced a problem a normal test can't detect. Runs |
| physics_interactA | Resolve what happens when any two things meet (a rubber duck and a laser, a toddler and a vending machine) using common sense instead of hand-written rules. Returns the outcome, intensity 0-10 and likely effects with probabilities. Narrate the result vividly. |
| physics_sandboxC | Drop 2-8 things into one setting; every pair interacts in parallel and events come back sorted by intensity. Use it to narrate a chain of chaos. |
| collision_engineA | Find surprising, useful combinations in a pile of notes by scoring every pair with Jev. Give either a folder/file path or a list of notes. Returns the top collisions; develop each into a concrete idea. maxPairs caps cost (2,000 pairs is typically well under $0.05). |
| jev_askA | Low-level access: evaluate a state against your own typed questions. Question types: {"type":"noul","instructions":"..."} (probability 0-1), {"type":"choice","instructions":"...","criteria":{"key":"description"}} and {"type":"score","instructions":"...","criteria":["level 0","level 1"]}. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 7 tools
Most tools target clearly distinct tasks: comedy testing (laugh_track), goal alignment (steer_check), git bisection (semantic_bisect), pairwise physics (physics_interact/physics_sandbox), idea collision (collision_engine), and generic typed evaluation (jev_ask). The physics pair/sandbox tools share a domain but differ in single-pair versus 2-8 item batch usage, and jev_ask is explicitly low-level, so boundaries are mostly clear.
All names use lowercase snake_case and are readable, with no camelCase or case inconsistency. However the semantic pattern varies (noun_noun, noun_verb, adjective_verb, prefix_verb), so it is not a strict verb_noun convention, but it remains predictable enough.
Seven tools is within the well-scoped 3-15 range and each covers a distinct capability: specialized evaluators plus one low-level primitive. No obvious redundant filler.
The low-level jev_ask primitive allows arbitrary typed evaluations to fill many gaps, while the specialized tools cover audience reaction, goal checking, bisection, physics, and idea collisions. No major lifecycle operation is obviously missing for this judgment/evaluation toolkit, though more domain-specific evaluators could be added later.