Skip to main content
Once you have set up your local environment and obtained a programmatic API key, you can begin configuring your tool infrastructure. The Tools Registry enables you to store and manage tool definitions, specifying the exact input parameters and expected output structure as JSON Schema specifications. This metadata allows LLM orchestration systems to discover and execute your tools dynamically. Unlike prompts, versions in the Tools Registry manage the evolution of these input and output schemas. This tutorial guides you through creating a project, a tool container, defining input and output schemas, and promoting your first version.
You can also perform all of these actions directly through the user-friendly px0 Web Console at http://localhost:8000. If you prefer configuring your tool infrastructure programmatically using our API, you can follow the detailed step-by-step instructions below.

Prerequisites

Before starting, ensure you have:
  • Started local services and created an account. See Run px0 Locally for details.
  • Retrieved your organization and team IDs and generated a programmatic API key. See Get an Access Key for details.
Export your session token and team ID in your terminal:

1. Create a Project

Create a project under your team. A project is a named container for your prompts, skills, and tools. Run the following request to create a project:
Save the project ID returned in the JSON response as an environment variable:

2. Create a Tool

Create a tool inside your project by sending a POST request containing the name, slug, and description of the tool. Run the following request to create a tool:
Save the tool ID returned in the JSON response as an environment variable:

3. Create a Tool Version

Once you have created a tool, initialize a version to define its input and output interfaces. Creating a version establishes a draft with optional input and output JSON Schema specifications. Run the following request to create your first tool version:
Save the tool version number returned in the JSON response as an environment variable:

4. Retrieve and Promote Your Tool Version

Once created, you can retrieve the version schemas or promote the version along the standard lifecycle pipeline: draft to stable, and stable to live.

Option A: Retrieve the Draft Version

Query the detailed schema information of your tool version:

Option B: Promote to Stable and Live

Promote your version to stable to make its schemas immutable:
Promote your version to live to make it active (this automatically demotes any previously live version of this tool to stable):

Next Steps

Now that you have successfully set up local services and managed a tool, you can proceed to configure telemetry to observe your workspace.