# Prompt Verse > The workspace for AI assets: prompts, agents, workflows, MCP tools and skills, versioned, tested and shared. Your own AI runs them. Prompt Verse is in pre-beta. Documentation pages are available as Markdown by adding .md to their address. ## Docs - [Getting started](https://prompt-verse.io/docs/getting-started.md): Your first prompt in Prompt Verse in about ten minutes: create it from a starter, mark a variable, commit it, and let your AI use it. - [Writing prompts with variables](https://prompt-verse.io/docs/writing-prompts.md): How prompts are built in Prompt Verse: typed pieces, the four prompt types, wrappers such as role and constraint, {{variables}} and rendering in 11 formats. - [Library and collections](https://prompt-verse.io/docs/library-and-collections.md): Prompts, agents, workflows, MCP tools and skills live in one library with tags, search and collections. How to organise it. - [Sharing a prompt](https://prompt-verse.io/docs/sharing.md): Share a Prompt Verse prompt by link as private, unlisted or public, and turn the link off again. What other people can see. - [Versions, branches and merges](https://prompt-verse.io/docs/versions.md): How Prompt Verse versions prompts, agents and workflows: commits, branches, tags, releases, merging and restoring an older version. - [Testing with evals](https://prompt-verse.io/docs/testing-with-evals.md): Write cases, choose a scoring method and a threshold, and compare two versions of a prompt with numbers. Who runs the model in the pre-beta. - [Agents and workflows](https://prompt-verse.io/docs/agents-and-workflows.md): Keep agent instructions and multi-step workflows in Prompt Verse, with versions, tags and sharing. What running them means in the pre-beta. - [The marketplace](https://prompt-verse.io/docs/marketplace.md): Publish a committed version, browse, install and withdraw listings in Prompt Verse. What works in the pre-beta and what is only planned. - [Use Prompt Verse with your AI](https://prompt-verse.io/docs/use-with-your-ai.md): Connect Claude, ChatGPT or any MCP assistant to Prompt Verse: through Geenius OS or with the app's own MCP address. - [prompts](https://prompt-verse.io/docs/reference/prompts.md): Reference for the prompts tool: create, get, list, search, render, share and update prompts, responses and contexts. - [versions](https://prompt-verse.io/docs/reference/versions.md): Reference for the versions tool: commit, branch, checkout, merge and tag prompts, workflows and agents. - [evals](https://prompt-verse.io/docs/reference/evals.md): Reference for the evals tool: create evals with cases and a scoring method, read them and their past runs. - [agents](https://prompt-verse.io/docs/reference/agents.md): Reference for the agents tool: create, read and list agents; running is part of the AI features. - [workflows](https://prompt-verse.io/docs/reference/workflows.md): Reference for the workflows tool: create, read, list and update workflows of connected prompt steps. - [collections](https://prompt-verse.io/docs/reference/collections.md): Reference for the collections tool: shelves that hold any kind of asset in your library. - [library](https://prompt-verse.io/docs/reference/library.md): Reference for the library tool: reusable pieces, skills, MCP tools and the models you have enabled. - [runs](https://prompt-verse.io/docs/reference/runs.md): Reference for the runs tool: the history of prompt runs, agent answers and workflow runs. - [market](https://prompt-verse.io/docs/reference/market.md): Reference for the market tool: browse, install, buy, publish and withdraw marketplace listings. Checkout is mocked. - [Plans and limits](https://prompt-verse.io/docs/plans-and-limits.md): What Pro, Premium and Max count in Prompt Verse, how Geenius OS plans include them, and what happens when you reach a limit. - [Troubleshooting](https://prompt-verse.io/docs/troubleshooting.md): Fixes for the common problems with Prompt Verse: AI_DISABLED, PLAN_REQUIRED, LIMIT_REACHED, missing variables, and an AI that cannot see your library. - [Glossary](https://prompt-verse.io/docs/glossary.md): The words used by Prompt Verse in plain language: asset, piece, wrapper, variable, render, commit, branch, eval, MCP, listing and more. ## Blog - [Your prompts are already software, so give them version control](https://prompt-verse.io/blog/your-prompts-are-already-software/): A prompt that decides what your product says is code in everything but name. Four things software teams do that prompt owners usually skip. - [How to write a prompt with variables that does not break](https://prompt-verse.io/blog/write-prompts-with-variables/): Turn a prompt you retype into a template. How to choose variable names, what to keep out of them, and how to find the missing ones before your AI does. - [Test a prompt with five cases and no tooling](https://prompt-verse.io/blog/test-a-prompt-with-five-cases/): A practical way to check whether a changed prompt is better: pick five inputs, write what a good answer contains, score both versions and keep the winner. - [Connect Claude or ChatGPT to your prompt library over MCP](https://prompt-verse.io/blog/connect-your-ai-over-mcp/): What MCP is, why it beats copy and paste, and the steps to let your AI search, render and improve prompts in Prompt Verse, in about five minutes. - [Why Prompt Verse runs no model](https://prompt-verse.io/blog/why-prompt-verse-runs-no-model/): The reasoning behind a prompt workspace without a built-in AI: your choice of model stays open, there are no credits to meter, and the storage stays honest. - [A folder of text files, Git, or Prompt Verse?](https://prompt-verse.io/blog/folder-git-or-prompt-verse/): An honest comparison of three ways to keep prompts: a folder or notes app, a Git repository, and a prompt workspace. What each is good at, and when to pick which. ## Pages - [Features](https://prompt-verse.io/features/): The Prompt Verse features: library, variables and formats, versions and merges, evals, agents and workflows, MCP, and the marketplace. Honest about what is live. - [Prompt library](https://prompt-verse.io/features/library/): Prompts, agents, workflows, MCP tools and skills in one searchable library with tags and collections. Start from six starters and keep what works. - [Variables and formats](https://prompt-verse.io/features/variables/): Mark {{variables}} in a prompt, fill them, and render the finished text in Markdown, XML, JSON, YAML, chat messages, Prompty and more. No AI involved. - [Versions and merges](https://prompt-verse.io/features/versions/): Commit, branch, tag and merge prompts, agents and workflows. Restore any version and resolve conflicts with both sides in front of you. - [Evals](https://prompt-verse.io/features/evals/): An eval is a set of cases and a scoring method run against a prompt version. Compare versions with numbers instead of opinions. Your own AI does the scoring. - [Agents and workflows](https://prompt-verse.io/features/agents/): Keep agent instructions and multi-step workflows in the same library as your prompts, with the same history, tags and sharing. - [Connect your AI](https://prompt-verse.io/features/mcp/): Connect Claude, ChatGPT, Grok or any MCP assistant to your Prompt Verse library: through Geenius OS with one connection, or with the app’s own MCP address. - [Marketplace](https://prompt-verse.io/features/marketplace/): Publish a committed version of a prompt, agent or workflow, install one into your library, or withdraw yours. Paid checkout is mocked until payments open. - [How it works](https://prompt-verse.io/how-it-works/): How Prompt Verse works in four steps: compose a prompt, connect your AI, test with an eval, and commit and share the version that wins. - [Use cases](https://prompt-verse.io/use-cases/): How developers, creators, teams and support operations use Prompt Verse to keep, version, test and share prompts and agents. - [Prompt Verse for developers](https://prompt-verse.io/use-cases/developers/): How developers keep the prompts behind their product in Prompt Verse: versioned, tested with evals, rendered as chat messages and fetched over MCP or the API. - [Prompt Verse for creators and consultants](https://prompt-verse.io/use-cases/creators/): How creators, writers and consultants keep their best prompts and agents in Prompt Verse, improve them with versions and share them by link. - [Prompt Verse for teams](https://prompt-verse.io/use-cases/teams/): How teams use Prompt Verse as a shared, versioned prompt library, so everyone uses the current wording and changes have an author and a reason. - [Prompt Verse for support and operations](https://prompt-verse.io/use-cases/support/): How support and operations teams keep reply prompts with rules, variables and an eval in Prompt Verse, so the wording is fixed once and used everywhere. - [Pricing](https://prompt-verse.io/pricing/): Prompt Verse costs €9, €19 or €49 a month and is included in the matching Geenius OS plan. No free plan, no trial period. Payments are in test mode in the pre-beta. - [FAQ](https://prompt-verse.io/faq/): Answers about Prompt Verse: what it is, how your AI connects, versions, evals, the marketplace, pricing, privacy and the pre-beta. - [Changelog](https://prompt-verse.io/changelog/): The Prompt Verse changelog: what shipped in the pre-beta, and when. This site and the product are tracked here. - [About](https://prompt-verse.io/about/): About Prompt Verse and AVS Media: why prompts need version control, how the product relates to Geenius OS, and what we promise. - [Contact and feature requests](https://prompt-verse.io/contact/): Write to the Prompt Verse team or request a feature. Feature requests help us decide what to build next. - [Request access](https://prompt-verse.io/request-access/): Prompt Verse is invite-only in its pre-beta. Request access in the app, or join the waitlist here. - [Find your setup](https://prompt-verse.io/find-your-setup/): Answer a few questions and see which Prompt Verse features to use first, which docs to read and which plan fits. Runs in your browser; nothing is sent. - [Search and ask](https://prompt-verse.io/search/): Search the Prompt Verse docs, blog and FAQ, or ask a question and get an answer card with links. --- # Getting started > Your first prompt in Prompt Verse in about ten minutes: create it from a starter, mark a variable, commit it, and let your AI use it. Source: https://prompt-verse.io/docs/getting-started/ This walk-through takes about ten minutes. You will create a prompt, mark a variable, commit a version and fetch it with your AI. ## Before you begin Prompt Verse is invite-only in its pre-beta. You need an account, which you get by [requesting access](/request-access/) and signing in once your place is ready. If you use Geenius OS you can sign in with that account. ## 1. Create a prompt from a starter Open your **Library** and choose **New**. You can start from a blank prompt or from a starter. The starters are real, editable assets: | Starter | What it is | |---|---| | Rewrite it clearly | A simple prompt that returns a passage plainer, with one variable | | Support reply | A structured prompt with role and constraint wrappers and three variables | | The critic | An agent that names the weakest sentence of a draft | | Draft, then sharpen | A workflow of two prompt steps | | Look up an order | A skill an agent can call | | Order status | An MCP tool with a canned answer | Pick **Rewrite it clearly** for this walk-through. ## 2. Look at the studio The studio has four modes, which you can switch with the keys 1 to 4: - **Write** is the canvas, where you add and arrange pieces. - **Source** shows the same prompt as structured text. - **Use** is where you copy the finished prompt for your AI (the *Use your AI* tab). - **Preview** shows the rendered result. ## 3. Mark a variable The starter already contains `{{passage}}`. A variable is any name in double braces. Add another, such as `{{audience}}`, by typing it into the text: ```prompt title="Rewrite it clearly" Rewrite the passage below so {{audience}} understands it on one pass. Keep every fact. Cut hedging, repetition and throat-clearing. Return only the rewritten passage. --- {{passage}} ``` When you render the prompt, you give a value for each variable. ## 4. Commit a version Press **History** and commit with a message that says what changed, for example “Add audience”. This is your first version. See [Versions](/docs/versions/) for branches, tags and merges. ## 5. Let your AI use it Connect your AI once, as described in [Use with your AI](/docs/use-with-your-ai/). Then ask it: ```text title="A first ask" Use Prompt Verse. Find my prompt "Rewrite it clearly", render it with audience "a busy manager" and this passage: "…". Then do what it says. ``` Your AI searches your library, renders the prompt with the variables filled and answers it on its own model. > [!TIP] > You can skip the connection at first. In **Use**, copy the finished prompt and paste it into any chat. ## What next - [Writing prompts](/docs/writing-prompts/) explains pieces, wrappers and prompt types. - [Testing with evals](/docs/testing-with-evals/) shows how to check a change. - [Sharing](/docs/sharing/) covers links. --- # Writing prompts with variables > How prompts are built in Prompt Verse: typed pieces, the four prompt types, wrappers such as role and constraint, {{variables}} and rendering in 11 formats. Source: https://prompt-verse.io/docs/writing-prompts/ A prompt in Prompt Verse is not one long string. It is a tree of **pieces**, rendered into text when you need it. ## Pieces Every piece has a type: | Type | Use it for | |---|---| | `text` | A paragraph of instruction | | `section` | A titled group of pieces. Sections nest | | `module` | A reusable content module | | `block` | A group of modules, for large prompts | | `wrapper` | A directive around other pieces | A piece can also point at a **library piece**, so a rule written once is reused everywhere, or nest **another prompt**. ## Prompt types The type decides what the root of the tree may contain. - **Simple**: one text body. - **Structured**: nestable, titled sections. This is the default. - **Modular**: reusable content modules. - **Advanced**: blocks that group modules. The render tells you if the structure breaks the type you chose. ## Wrappers A wrapper changes how the pieces inside it are processed. Typical ones: - **Role** (AS): “a support agent who has read the whole thread”. - **Constraint** (CONSTRAIN): “never invent a refund, a date or a policy”. - **Format** (FORMAT): “respond only in JSON”. - **Examples** (EXAMPLES): a few worked cases. - **Conditional**, **Repeat**, **For each**, **Chain**, **Retry**, **Fallback**, **Guard**, **Temperature** and **Parallel** for larger designs. ## Variables Write a variable as `{{name}}`. Names are letters, digits and underscores, for example `{{account_age}}`. Variables can appear in any text piece. ```prompt title="A structured prompt with variables" # The message {{message}} # What we know Order: {{order}} Account age: {{account_age}} # Write the reply Answer the question that was actually asked, in at most six sentences. ``` When you render, you give values. Anything you leave out is reported as **missing**, so you or your AI can ask for it. ## Rendering Rendering is plain code and does not use an AI. It resolves library pieces and nested prompts, applies wrappers, fills variables and writes the result in a format: `markdown` (default), `text`, `xml`, `json`, `yaml`, `html`, `csv`, `toml`, `jsonl`, `messages` and `prompty`. The `messages` format gives a chat message list for APIs that take one. Over MCP, call `prompts` with action `render`, see the [reference](/docs/reference/prompts/). ## Good habits - Name variables for what they hold, not where they go. - Put rules in wrappers, not buried in sentences. - Commit before you rewrite. See [Versions](/docs/versions/). --- # Library and collections > Prompts, agents, workflows, MCP tools and skills live in one library with tags, search and collections. How to organise it. Source: https://prompt-verse.io/docs/library-and-collections/ The **Library** is where everything lives. It holds five kinds of asset: | Kind | What it is | |---|---| | Prompt | Typed pieces that render into text. Prompts can also be saved as a response or a context | | Agent | Instructions, a provider and settings | | Workflow | Nodes that pass results on in order | | MCP tool | A name, a description and an input schema, with a mock or HTTP execution | | Skill | Know-how your AI can pick up: a description and its inputs | **Pieces** are reusable fragments that prompts can include. They have their own page in the Library. ## Tags and search Give assets tags as you create them. Search covers everything you own, by title, tag or text, across all kinds. Your AI can search the same way with `prompts` and action `search`. ## Collections A collection is a named shelf. It can hold any kind of asset, and an asset can sit on several shelves. - Create a collection, then add assets to it. - Taking an asset off a shelf does not touch the asset. - Deleting a collection leaves its assets where they are. A collection is a good way to group everything for a client or a project: the prompts, the agent that uses them and the workflow that chains them. ## Plan limits Prompts, workflows and agents are counted per plan. See [Plans and limits](/docs/plans-and-limits/). ## For your AI The `collections` tool has `create`, `list`, `get`, `add`, `remove`, `update` and `delete`. See the [reference](/docs/reference/collections/). --- # Sharing a prompt > Share a Prompt Verse prompt by link as private, unlisted or public, and turn the link off again. What other people can see. Source: https://prompt-verse.io/docs/sharing/ Everything you make is **private to your workspace** until you decide otherwise. ## Three settings | Setting | Who can open it | |---|---| | Private | Only your workspace. This is the default | | Unlisted | Anyone who has the link | | Public | Anyone, and it can be listed | Sharing mints a link of the form `/s/` on the web app. Set the prompt back to **private** and the link stops working. ## What people see A person who opens the link sees the prompt. They do not get access to the rest of your library. > [!WARNING] > Do not put real customer data, keys or passwords into a prompt you share. Keep prompts as templates and fill the variables when you run them. ## Over MCP Your AI can mint or revoke a link with `prompts` and action `share`, passing the prompt `id` and a `visibility`. See the [reference](/docs/reference/prompts/). ## Marketplace Sharing by link is different from listing on the [marketplace](/docs/marketplace/), which publishes a committed version for others to install. --- # Versions, branches and merges > How Prompt Verse versions prompts, agents and workflows: commits, branches, tags, releases, merging and restoring an older version. Source: https://prompt-verse.io/docs/versions/ Prompts, agents and workflows share one history model that works like Git: commits, branches, tags and merges. ## The working copy and commits What you edit is the **working copy**. A **commit** saves it with a message. Write messages that say why: - Good: “Cut to six sentences, no promises”. - Not useful: “update”. In the studio, open **History** to commit and to read past commits. Reading an old commit is safe; the app shows a banner and a **Back to working copy** button. ## Branches A branch lets you try an idea without touching the version in use. 1. Create a branch, for example `shorter`. 2. Change the prompt and commit on that branch. 3. When it works, merge it back. ## Merging Merging a branch into the current one combines the changes. If both sides changed the same part, the merge returns the **conflicts** and you choose, per conflict, **ours** or **theirs**. Nothing is overwritten silently. ## Tags and releases Name a commit as a **tag** (for a point you want to find) or a **release** (for a version you ship). Names look like `v1.0` or `launch`, and a tag can have notes. ## Go back to an older version Create a branch from the older commit and check it out. The newer history stays where it is, so you can go forward again. ## Over MCP The `versions` tool has `commit`, `commits`, `branch`, `branches`, `checkout`, `current`, `merge`, `tag` and `tags`, and works on `prompt`, `workflow` and `agent`. See the [reference](/docs/reference/versions/). ```json title="Commit a prompt" { "tool": "versions", "action": "commit", "args": { "entity_type": "prompt", "entity_id": "", "message": "Cut to six sentences" } } ``` --- # Testing with evals > Write cases, choose a scoring method and a threshold, and compare two versions of a prompt with numbers. Who runs the model in the pre-beta. Source: https://prompt-verse.io/docs/testing-with-evals/ An **eval** answers one question: is this version of the prompt better than that one? ## Anatomy of an eval - **Cases**: a list of inputs, each with an id and what you expect. - **A method** that scores an answer from 0 to 1. - **A threshold** from 0 to 1. The default is 0.8. - **The target**: a prompt, workflow or agent. ```json title="An eval with two cases" { "entity_type": "prompt", "entity_id": "", "title": "Reply stays within the rules", "method": "contains", "threshold": 0.8, "cases": [ { "id": "angry-refund", "input": "I want my money back NOW. Order A-1043.", "expected": "next steps" }, { "id": "not-found", "input": "Where is order Z-9?", "expected": "could not find" } ] } ``` ## The five methods | Method | A case passes when | |---|---| | `exact` | the answer equals what you expect | | `contains` | the answer includes what you expect | | `structural` | the answer has the shape you expect, such as valid JSON with certain keys | | `judge` | a model reads the answer and scores it against your expectation | | `hybrid` | a mix of rules and a judge | ## Writing good cases - Start with the cases that hurt: the angry customer, the missing order, the odd input. - Ten good cases beat a hundred similar ones. - Add a case whenever a bug teaches you something. ## Who runs the model > [!HONEST] > Prompt Verse runs no model in the pre-beta, so `evals run` refuses with `AI_DISABLED`. Your own AI does the testing: it reads the cases with `evals get`, renders and runs your prompt for each one, scores the answers and tells you the result in the conversation. Keeping scored runs inside the app belongs to the AI features of Premium and Max, which are switched off for now. Ask your AI something like: ```text title="Test a prompt with your AI" Use Prompt Verse. Get my eval "Reply stays within the rules". For each case render my prompt "Support reply" with the case input, answer it yourself, and score each answer from 0 to 1 against the expected text. Give me the mean and say whether it beats 0.8. ``` ## Compare versions Run the same cases on two commits and compare the means. Use the result in your commit message when you merge. --- # Agents and workflows > Keep agent instructions and multi-step workflows in Prompt Verse, with versions, tags and sharing. What running them means in the pre-beta. Source: https://prompt-verse.io/docs/agents-and-workflows/ ## Agents An agent holds **instructions**, a **provider** and settings such as **temperature**. Providers are `internal`, `anthropic`, `openai`, `google` and `vercel`. The starter agent, **The critic**, shows the shape: ```text title="The critic: instructions" You read drafts and say what is wrong with them. Rules: - Name the single weakest sentence and quote it. - Say what it costs the reader, not whether you like it. - Offer one concrete replacement. ``` Agents are versioned with the same commits, branches and tags as prompts. ## Workflows A workflow is a list of **nodes**. An input node takes your text. A prompt node runs one of your prompts on what came before, and each node can depend on others. The starter **Draft, then sharpen** has three nodes: your notes, a draft step and a sharpen step. Change a prompt and every workflow that uses it follows. Workflows are versioned too. ## Running them > [!HONEST] > The `run` actions for agents and workflows are switched off in the pre-beta and answer `AI_DISABLED`. Your AI reads the agent or workflow with `get`, renders the prompts it uses and does the running. ## For your AI The `agents` tool has `create`, `get`, `list` and `run`. The `workflows` tool has `create`, `get`, `list`, `update` and `run`. See the references for [agents](/docs/reference/agents/) and [workflows](/docs/reference/workflows/). --- # The marketplace > Publish a committed version, browse, install and withdraw listings in Prompt Verse. What works in the pre-beta and what is only planned. Source: https://prompt-verse.io/docs/marketplace/ The marketplace lets you share a **committed version** of a prompt, agent or workflow, and install what others share. > [!HONEST] > Browsing, installing, publishing and withdrawing work in the pre-beta. **Paid checkout is mocked** until payments open: you can create and buy a paid listing in test mode, and no real money moves. Selling prompt runs without showing the prompt is **planned, not built**. ## Publish 1. Commit the version you want to share (see [Versions](/docs/versions/)). 2. In the studio, choose **Publish**. Give it a title, a one-line summary and tags. 3. Optionally set a price. It is a one-time price in euros; empty or 0 is free. A listing points at the **commit**, never at your working copy. If you keep editing, what someone installed does not change under them. ## Install Installing makes a **private copy** in your library at the published version. Later changes by the author do not reach it. ## Withdraw Take your own listing down any time. New installs stop. Copies that people already have stay with them. ## Over MCP The `market` tool has `browse`, `read`, `install`, `buy`, `publish`, `withdraw` and `try`. `try` runs a listing and is switched off with the AI features. See the [reference](/docs/reference/market/). ## Your responsibility You are responsible for what you publish. Do not publish content that is illegal, that infringes the rights of others, or that hides malicious instructions. The app’s terms have the details. --- # Use Prompt Verse with your AI > Connect Claude, ChatGPT or any MCP assistant to Prompt Verse: through Geenius OS or with the app's own MCP address. Source: https://prompt-verse.io/docs/use-with-your-ai/ Prompt Verse runs no model. Your own AI, Claude, ChatGPT, Grok or any assistant that supports MCP, connects to your library, finds a prompt, asks for it rendered with its variables filled, and runs it on its own subscription. This page shows the two ways to connect and what your AI can do once it is connected. > [!HONEST] > The pre-beta is invite-only. You need a Prompt Verse account, or a Geenius OS workspace that has Prompt Verse installed. The in-app run actions are switched off, so everything on this page is about your AI doing the running. ## Way 1: through Geenius OS If you use Geenius OS, one connection gives your AI all your apps. 1. Install Prompt Verse in your Geenius OS workspace. 2. Add the Geenius OS connector to your AI, using the address that Geenius OS shows you, and approve it once. 3. Your AI now has a tool called `geenius_promptverse`. It takes a `tool` (the area, such as `prompts`), an `action` (the verb) and `args`. ```json title="A call through Geenius OS" { "tool": "prompts", "action": "search", "args": { "q": "support reply" } } ``` Every call acts in the Prompt Verse workspace of your Geenius OS workspace, after a plan check. If the workspace has no Prompt Verse plan, the call answers with `PLAN_REQUIRED`. ## Way 2: Prompt Verse’s own address On its own, Prompt Verse has an MCP address that ends in `/mcp`. You find yours in the app under **Connect**, with a button to copy it. ### Claude 1. In Claude, open Settings, then Connectors, then Add custom connector. 2. Paste your Prompt Verse address and save. 3. Sign in with your Prompt Verse account when Claude asks. ### ChatGPT 1. In ChatGPT, open Settings, then Connectors, and add a remote MCP server. 2. Paste your Prompt Verse address. 3. Sign in with your Prompt Verse account when it asks. ### Other MCP clients and scripts 1. In the app, open Connect and make a key under **Keys**. It is shown once, so copy it then. 2. Point your client at your Prompt Verse address. 3. Send the key as a bearer token. ::mcp-config > [!WARNING] > Never paste a key into a chat. Use a key only in the configuration of a client that cannot sign in, name each key after what uses it, and revoke it in the app when you stop using that client. ## Your first ask Paste this to your AI, with your own topic and input: ```text title="A first ask" Use Prompt Verse. Find my prompts about (prompts, action search), open the best one (prompts, action get), answer it for , and suggest one improvement I can save (prompts, action update). ``` For a prompt with variables, ask for the rendered text: `prompts` with action `render`, the prompt’s `id`, a `format` such as `messages`, and a `variables` object. The answer lists any variable you left out. ## The tools Your AI sees a short list: one entry per area, with the detail on request. Ask for the actions of an area with `action: "help"`, and for the exact arguments of one action with `action: "help"` and `of`. ::mcp-tools ## What your AI cannot do yet The `run` actions of prompts, agents and workflows, `evals run` and `market try` are listed but refuse with `AI_DISABLED` in the pre-beta. The error tells your AI to call `prompts render` and to answer the text itself, which is the intended way. To test a prompt, your AI can read the saved cases with `evals get`, run the prompt and score the answers in the conversation. --- # prompts > Reference for the prompts tool: create, get, list, search, render, share and update prompts, responses and contexts. Source: https://prompt-verse.io/docs/reference/prompts/ The prompts tool works on prompts, responses (an example of the answer you want) and contexts. This is the tool your AI uses most. Call it as `geenius_promptverse(tool: "prompts", action: "", args: {...})` through Geenius OS, or as the `prompts` tool of the Prompt Verse MCP server with `action` and `args`. ## Actions | Action | What it does | |---|---| | `create` | A new prompt, response or context. Returns its id. Private until you share it. | | `get` | One prompt with its tree, wrappers and tags. | | `list` | Newest first. Optionally filtered by kind. | | `render` | The finished text, no AI: library pieces and nested prompts resolved, wrappers applied, variables filled, in the format you ask for. Says which variables are still missing and what breaks the prompt’s type. | | `run` | Run it on one of your models. Switched off in the pre-beta: it answers AI_DISABLED and points to render. | | `search` | Everything you own, by title, tag or text. | | `share` | Mint or revoke a public link. Returns the token and the public URL of the web app (/s/ followed by the token). | | `update` | Change title, subtype, tree, wrappers or tags. | ## Arguments we have checked ### prompts · create A new prompt, response or context. Returns its id. Private until you share it. - `title` (required): Title. - `kind`: prompt (default), response or context. - `subtype`: Prompt type: simple, structured (default), modular or advanced. - `tags`: A list of tags. - `tree`: The pieces: a list of objects with an id, an inline piece (type text, section, module, block or wrapper) and optional children. A string becomes one text piece. ### prompts · get One prompt with its tree, wrappers and tags. - `id` (required): Prompt id. ### prompts · list Newest first. Optionally filtered by kind. - `kind`: prompt, response or context. ### prompts · render The finished text, no AI: library pieces and nested prompts resolved, wrappers applied, variables filled, in the format you ask for. Says which variables are still missing and what breaks the prompt’s type. - `id` (required): Prompt id. - `format`: markdown (default), text, xml, json, yaml, html, csv, toml, jsonl, messages or prompty. - `variables`: An object with a value for each {{name}}. ### prompts · run Run it on one of your models. Switched off in the pre-beta: it answers AI_DISABLED and points to render. - `id` (required): Prompt id. - `model_id`: A model id from library models. - `variables`: Values for the variables. - `format`: The output format. ### prompts · search Everything you own, by title, tag or text. - `q` (required): What to look for. - `limit`: Maximum number of hits. ### prompts · share Mint or revoke a public link. Returns the token and the public URL of the web app (/s/ followed by the token). - `id` (required): Prompt id. - `visibility` (required): private, unlisted or public. ### prompts · update Change title, subtype, tree, wrappers or tags. - `id` (required): Prompt id. - `title`: New title. - `tags`: New tags. - `tree`: New pieces, same shape as in create. > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "create"`. The server answers from its own definitions, so that answer is always current. > [!HONEST] > run is listed but refuses with AI_DISABLED while the AI features are off. The message tells your AI to call render and answer the prompt itself. --- # versions > Reference for the versions tool: commit, branch, checkout, merge and tag prompts, workflows and agents. Source: https://prompt-verse.io/docs/reference/versions/ The versions tool gives prompts, workflows and agents a history. Every action takes an entity_type (prompt, workflow or agent) and an entity_id. Call it as `geenius_promptverse(tool: "versions", action: "", args: {...})` through Geenius OS, or as the `versions` tool of the Prompt Verse MCP server with `action` and `args`. ## Actions | Action | What it does | |---|---| | `commit` | Commit the working copy with a message. Returns the commit id. | | `commits` | Commits, newest first. | | `branch` | Create a branch. Give from_commit_id and checkout to restore an older version. | | `branches` | The branches of the asset. | | `checkout` | Switch to a branch. | | `current` | The branch the asset is on. | | `merge` | Merge a branch into the current one. Conflicts come back so you can resolve them. | | `tag` | Name a commit as a tag or a release. | | `tags` | The tags and releases of the asset. | ## Arguments we have checked ### versions · commit Commit the working copy with a message. Returns the commit id. - `entity_type` (required): prompt, workflow or agent. - `entity_id` (required): Its id. - `message` (required): What changed. ### versions · commits Commits, newest first. - `entity_type` (required): prompt, workflow or agent. - `entity_id` (required): Its id. ### versions · branch Create a branch. Give from_commit_id and checkout to restore an older version. - `entity_type` (required): prompt, workflow or agent. - `entity_id` (required): Its id. - `name` (required): Branch name. - `from_commit_id`: Where to start. - `checkout`: Switch to the new branch at once. ### versions · branches The branches of the asset. - `entity_type` (required): prompt, workflow or agent. - `entity_id` (required): Its id. ### versions · checkout Switch to a branch. - `entity_type` (required): prompt, workflow or agent. - `entity_id` (required): Its id. - `branch_id` (required): Branch id. ### versions · current The branch the asset is on. - `entity_type` (required): prompt, workflow or agent. - `entity_id` (required): Its id. ### versions · merge Merge a branch into the current one. Conflicts come back so you can resolve them. - `entity_type` (required): prompt, workflow or agent. - `entity_id` (required): Its id. - `source_branch_id` (required): The branch to merge in. - `resolutions`: An object that maps each conflict key to ours or theirs. ### versions · tag Name a commit as a tag or a release. - `entity_type` (required): prompt, workflow or agent. - `entity_id` (required): Its id. - `commit_id` (required): Commit id. - `name` (required): For example v1.0. - `kind`: release or tag. - `notes`: Optional notes. ### versions · tags The tags and releases of the asset. - `entity_type` (required): prompt, workflow or agent. - `entity_id` (required): Its id. > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "commit"`. The server answers from its own definitions, so that answer is always current. --- # evals > Reference for the evals tool: create evals with cases and a scoring method, read them and their past runs. Source: https://prompt-verse.io/docs/reference/evals/ An eval is a list of cases (an id, an input and what you expect) and a method that scores answers from 0 to 1. A threshold, 0.8 by default, says whether a version passes. Call it as `geenius_promptverse(tool: "evals", action: "", args: {...})` through Geenius OS, or as the `evals` tool of the Prompt Verse MCP server with `action` and `args`. ## Actions | Action | What it does | |---|---| | `create` | A new eval with its cases and method. | | `get` | One eval with its cases. Your AI can use these cases to test a prompt itself. | | `list` | Your evals, newest first. | | `run` | Score a prompt on a model with the saved cases. Switched off in the pre-beta. | | `runs` | Past runs of an eval. | ## Arguments we have checked ### evals · create A new eval with its cases and method. - `entity_type` (required): prompt, workflow or agent. - `entity_id` (required): Its id. - `title` (required): What it checks. - `cases` (required): A list of cases: objects with id, input and expected. - `method` (required): exact, contains, structural, judge or hybrid. - `threshold`: From 0 to 1. Default 0.8. ### evals · get One eval with its cases. Your AI can use these cases to test a prompt itself. - `id` (required): Eval id. ### evals · run Score a prompt on a model with the saved cases. Switched off in the pre-beta. - `eval_id` (required): Eval id. - `prompt_id` (required): Prompt id. - `model_id` (required): Model id. ### evals · runs Past runs of an eval. - `eval_id` (required): Eval id. - `limit`: Default 20. > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "create"`. The server answers from its own definitions, so that answer is always current. > [!HONEST] > run is listed but refuses while the AI features are off. Your AI can still read the saved cases with get, run the prompt itself and score the answers in your conversation. --- # agents > Reference for the agents tool: create, read and list agents; running is part of the AI features. Source: https://prompt-verse.io/docs/reference/agents/ An agent holds instructions, a provider and settings such as temperature. Use versions to give it a history. Call it as `geenius_promptverse(tool: "agents", action: "", args: {...})` through Geenius OS, or as the `agents` tool of the Prompt Verse MCP server with `action` and `args`. ## Actions | Action | What it does | |---|---| | `create` | A new agent. | | `get` | One agent with its definition. | | `list` | Newest first, optionally filtered by provider. | | `run` | One turn: your message and its answer. Remembers the last 20 turns. Switched off in the pre-beta. | ## Arguments we have checked ### agents · create A new agent. - `title` (required): Name. - `provider` (required): internal, anthropic, openai, google or vercel. - `data`: The definition, such as instructions and temperature. ### agents · get One agent with its definition. - `id` (required): Agent id. ### agents · list Newest first, optionally filtered by provider. - `provider`: Provider. ### agents · run One turn: your message and its answer. Remembers the last 20 turns. Switched off in the pre-beta. - `id` (required): Agent id. - `message` (required): What you say. - `model_id`: Optional model id. > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "create"`. The server answers from its own definitions, so that answer is always current. > [!HONEST] > run is listed but refuses while the AI features are off. --- # workflows > Reference for the workflows tool: create, read, list and update workflows of connected prompt steps. Source: https://prompt-verse.io/docs/reference/workflows/ A workflow is a list of nodes. Input nodes take text; prompt nodes run one of your prompts on what came before. Call it as `geenius_promptverse(tool: "workflows", action: "", args: {...})` through Geenius OS, or as the `workflows` tool of the Prompt Verse MCP server with `action` and `args`. ## Actions | Action | What it does | |---|---| | `create` | An empty workflow. | | `get` | One workflow with its nodes. | | `list` | Newest first. | | `update` | Replace the title and, or, the whole node list. | | `run` | Run every node in order. The input seeds the input nodes. Switched off in the pre-beta. | ## Arguments we have checked ### workflows · create An empty workflow. - `title` (required): Name. ### workflows · get One workflow with its nodes. - `id` (required): Workflow id. ### workflows · update Replace the title and, or, the whole node list. - `id` (required): Workflow id. - `title`: New name. - `data`: An object with a nodes list. ### workflows · run Run every node in order. The input seeds the input nodes. Switched off in the pre-beta. - `id` (required): Workflow id. - `input`: Optional input text. - `model_id`: Optional model id. > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "create"`. The server answers from its own definitions, so that answer is always current. > [!HONEST] > run is listed but refuses while the AI features are off. --- # collections > Reference for the collections tool: shelves that hold any kind of asset in your library. Source: https://prompt-verse.io/docs/reference/collections/ A collection holds assets of any kind. Removing an item never touches the asset, and deleting a collection leaves its assets where they are. Call it as `geenius_promptverse(tool: "collections", action: "", args: {...})` through Geenius OS, or as the `collections` tool of the Prompt Verse MCP server with `action` and `args`. ## Actions | Action | What it does | |---|---| | `create` | A new, empty collection. | | `list` | Your collections with their item references. | | `get` | One collection with its items resolved to titles. | | `add` | Put an asset on it. | | `remove` | Take an asset off it. The asset stays. | | `update` | Rename it or change its line. | | `delete` | Delete the collection. Its assets stay. | ## Arguments we have checked ### collections · create A new, empty collection. - `title` (required): Its name. - `description`: An optional line. ### collections · get One collection with its items resolved to titles. - `id` (required): Collection id. ### collections · add Put an asset on it. - `id` (required): Collection id. - `kind` (required): prompt, agent, workflow, skill or mcpTool. - `asset_id` (required): Asset id. ### collections · remove Take an asset off it. The asset stays. - `id` (required): Collection id. - `kind` (required): Asset kind. - `asset_id` (required): Asset id. ### collections · update Rename it or change its line. - `id` (required): Collection id. - `title`: New name. - `description`: New line. ### collections · delete Delete the collection. Its assets stay. - `id` (required): Collection id. > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "create"`. The server answers from its own definitions, so that answer is always current. --- # library > Reference for the library tool: reusable pieces, skills, MCP tools and the models you have enabled. Source: https://prompt-verse.io/docs/reference/library/ The rest of the library: reusable pieces that prompts can include, skills, your own MCP tools, and the models runs can target. Call it as `geenius_promptverse(tool: "library", action: "", args: {...})` through Geenius OS, or as the `library` tool of the Prompt Verse MCP server with `action` and `args`. ## Actions | Action | What it does | |---|---| | `pieces` | Reusable pieces, optionally filtered by type. | | `piece` | One piece. | | `skills` | Your skills. | | `skill` | One skill. | | `create_skill` | A new skill. | | `tools` | Your own MCP tools. | | `create_tool` | A new MCP tool. Name it with title (or name); call_tool uses that name. | | `call_tool` | Call one of your tools by name (mock or http). | | `models` | The models you have enabled, for the run actions. | ## Arguments we have checked ### library · pieces Reusable pieces, optionally filtered by type. - `type`: Optional piece type. ### library · piece One piece. - `id` (required): Piece id. ### library · skill One skill. - `id` (required): Skill id. ### library · create_skill A new skill. - `title` (required): Name. - `data`: description, kind and inputSchema. ### library · create_tool A new MCP tool. Name it with title (or name); call_tool uses that name. - `title`: Name. - `description`: What it does. - `execution`: mock or http. - `input_schema`: A JSON Schema. - `mock_response`: For mock execution. - `endpoint`: For http execution. ### library · call_tool Call one of your tools by name (mock or http). - `name` (required): Tool name. - `input`: Arguments. > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "pieces"`. The server answers from its own definitions, so that answer is always current. --- # runs > Reference for the runs tool: the history of prompt runs, agent answers and workflow runs. Source: https://prompt-verse.io/docs/reference/runs/ Every prompt run, agent answer and workflow run, newest first, with the model and whether it was mocked. While the AI features are off there is nothing new to list. Call it as `geenius_promptverse(tool: "runs", action: "", args: {...})` through Geenius OS, or as the `runs` tool of the Prompt Verse MCP server with `action` and `args`. ## Actions | Action | What it does | |---|---| | `list` | The latest runs across kinds. | | `workflow` | The latest runs of one workflow. | ## Arguments we have checked ### runs · list The latest runs across kinds. - `limit`: Default 30, maximum 200. ### runs · workflow The latest runs of one workflow. - `workflow_id` (required): Workflow id. > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "list"`. The server answers from its own definitions, so that answer is always current. --- # market > Reference for the market tool: browse, install, buy, publish and withdraw marketplace listings. Checkout is mocked. Source: https://prompt-verse.io/docs/reference/market/ Listings are committed versions of prompts, agents and workflows. A listing points at a commit, so installs never change under their owners. Call it as `geenius_promptverse(tool: "market", action: "", args: {...})` through Geenius OS, or as the `market` tool of the Prompt Verse MCP server with `action` and `args`. ## Actions | Action | What it does | |---|---| | `browse` | Published listings. | | `read` | One listing by slug. | | `install` | A private copy at the published version. | | `buy` | Buy a paid listing. The checkout is mocked until payments open, and the answer says so. | | `publish` | List a committed version. A price above zero makes it paid. | | `withdraw` | Take your own listing down. Installs keep their copy. | | `try` | Run a listing without installing it. Switched off in the pre-beta. | ## Arguments we have checked ### market · browse Published listings. - `entity_type`: Optional kind. - `tag`: Optional tag. - `q`: Optional phrase. - `limit`: Optional cap. ### market · read One listing by slug. - `slug` (required): Listing slug. ### market · install A private copy at the published version. - `slug` (required): Listing slug. ### market · buy Buy a paid listing. The checkout is mocked until payments open, and the answer says so. - `slug` (required): Listing slug. ### market · publish List a committed version. A price above zero makes it paid. - `entity_type` (required): prompt, workflow or agent. - `entity_id` (required): Its id. - `commit_id` (required): From versions commit. - `title` (required): Listing title. - `summary`: One line. - `tags`: Tags. - `price_cents`: Optional price in cents. ### market · withdraw Take your own listing down. Installs keep their copy. - `slug` (required): Listing slug. ### market · try Run a listing without installing it. Switched off in the pre-beta. - `slug` (required): Listing slug. - `variables`: Inputs. - `model_id`: Optional model id. > [!TIP] > Ask for the exact arguments of any action with `action: "help", of: "browse"`. The server answers from its own definitions, so that answer is always current. > [!HONEST] > Paid checkout is mocked in the pre-beta: no real money moves. try is listed but refuses while the AI features are off. --- # Plans and limits > What Pro, Premium and Max count in Prompt Verse, how Geenius OS plans include them, and what happens when you reach a limit. Source: https://prompt-verse.io/docs/plans-and-limits/ Prompt Verse has three plans and no free plan. Payments are in test mode during the pre-beta, so nothing is charged yet. | | Pro | Premium | Max | |---|---|---|---| | Price per month | €9 | €19 | €49 | | Prompts | 50 | 100 | Unlimited | | Workflows | 25 | 50 | Unlimited | | Agents | 25 | 50 | Unlimited | | Versions, evals, sharing, marketplace | Yes | Yes | Yes | | AI features inside the app | No | Carried, off in the pre-beta | Carried, off in the pre-beta | Your own AI over MCP works on **every plan**. ## When you reach a limit Creating one more prompt, workflow or agent than your plan allows is refused, and the app shows a sheet with the plans. Nothing is deleted. Raise your plan or remove an asset. ## Geenius OS A Geenius OS plan includes the matching Prompt Verse plan: OS Pro includes Pro, OS Premium includes Premium and OS Max includes Max. You sign in with the same account. ## Trials There is no trial period. A promo key from us can grant a 7, 14 or 30 day trial. Enter it on the Plan page. --- # Troubleshooting > Fixes for the common problems with Prompt Verse: AI_DISABLED, PLAN_REQUIRED, LIMIT_REACHED, missing variables, and an AI that cannot see your library. Source: https://prompt-verse.io/docs/troubleshooting/ ## My AI says AI_DISABLED You (or your AI) called a `run` action, such as `prompts run`. Prompt Verse runs no model in the pre-beta. The message names the fix: call `prompts render` for the finished text and let your own AI answer it. ## My AI says PLAN_REQUIRED You connected through Geenius OS, but the workspace has no Prompt Verse plan. Add Prompt Verse to the workspace or choose a plan that includes it. ## I get LIMIT_REACHED or a sheet with plans You reached the number of prompts, workflows or agents your plan counts. See [Plans and limits](/docs/plans-and-limits/). ## My AI does not see Prompt Verse 1. Check that the connector is added and approved in your AI’s settings. 2. Start a new chat. Connectors are picked up at the start of a chat. 3. If you connected with a key, check that it has not been revoked under Connect. 4. Ask your AI to call `help` on the `prompts` tool. If that answers, the connection works. ## The render says variables are missing You did not give a value for every `{{name}}` in the prompt. The answer lists the missing names. Give them in `variables`, or ask the person. ## The render says the structure breaks the prompt type A **simple** prompt takes one text body, a **modular** prompt takes modules. Change the type or move the pieces. ## A merge returned conflicts Both branches changed the same part. Choose `ours` or `theirs` for each conflict key and merge again, passing your choices as `resolutions`. See [Versions](/docs/versions/). ## A share link stopped working The prompt was set back to **private**, or the link was revoked. Share it again to mint a new link. ## Still stuck? [Write to us](/contact/) with what you did and what you saw. If something should work and does not, that is a bug we want to know about. --- # Glossary > The words used by Prompt Verse in plain language: asset, piece, wrapper, variable, render, commit, branch, eval, MCP, listing and more. Source: https://prompt-verse.io/docs/glossary/ **Agent.** An asset that holds instructions, a provider and settings such as temperature. **Asset.** Anything in your library: a prompt, agent, workflow, MCP tool or skill. **Block.** A piece that groups modules. Used in advanced prompts. **Branch.** A line of commits that lets you try a change without touching the version in use. **Collection.** A named shelf that holds assets of any kind. **Commit.** A saved version of the working copy, with a message. **Context.** A prompt saved as background to attach to others. **Eval.** A set of cases plus a scoring method and a threshold, used to compare versions. **Format.** The shape a rendered prompt is written in, such as Markdown, JSON or chat messages. **Library.** Everything you own in Prompt Verse. **Listing.** A committed version offered on the marketplace. **MCP.** The Model Context Protocol, the open standard AI assistants use to connect to other software. **MCP tool.** An asset with a name, a description and an input schema that executes as a mock or over HTTP. Do not confuse it with the tools your AI sees when it connects. **Merge.** Combining a branch into the current one. Conflicts come back for you to resolve. **Module.** A reusable content piece. **Piece.** A unit of a prompt: text, section, module, block or wrapper. **Pre-beta.** The current stage: invite-only, payments in test mode, no built-in AI. **Prompt.** A tree of pieces that renders into text. **Release.** A tag that marks a version you ship. **Render.** Turning a prompt into finished text by resolving pieces, applying wrappers and filling variables. It uses no AI. **Response.** A prompt saved as an example of the answer you want. **Skill.** An asset with a description and the inputs it needs, which your AI can pick up. **Starter.** A ready-made asset you can add and change. **Tag.** A label you put on an asset to find it again, or a name you give to a commit. **Variable.** A value written as `{{name}}` that you fill in when you render. **Workflow.** A list of nodes that pass results on in order. **Wrapper.** A piece that changes how the pieces inside it are processed, such as a role or a constraint. ---