MCP server
Control your Picked workspace from an AI tool that writes code, with the Model Context Protocol (MCP).
Tools
Discovery
| Tool | Description |
|---|---|
list_projects | Lists your organizations and projects |
list_workspaces | Lists the workspaces in a project |
get_workspace_overview | Reads the live version and the workspace draft |
get_schema_info | Reads the documentation for Picked concepts and the data model |
list_picked_docs | Lists every Picked documentation page with its URL |
read_picked_doc | Reads one documentation page, or one section of it |
Experiences
| Tool | Description |
|---|---|
create_experience | Creates an experience |
get_experience | Reads an experience, with its flow graph |
list_experiences | Lists your experiences |
update_experience_flow | Creates, updates, or deletes steps, conditions, actions, fields, nodes, and edges as one operation |
Steps, fields, conditions, and actions
| Tool | Description |
|---|---|
get_step / list_steps | Read steps |
update_step | Renames a step, or binds it to the content entry that it renders |
get_field / list_fields | Read fields |
get_condition / list_conditions | Read conditions |
get_action / list_actions | Read actions |
Feature flags
| Tool | Description |
|---|---|
create_feature | Creates a feature flag |
get_feature | Reads a feature flag |
list_features | Lists your feature flags |
update_feature | Updates the name, description, state, or weight |
Workflows
A workflow runs a graph of nodes when its trigger occurs. The trigger is a domain event or one action.
| Tool | Description |
|---|---|
list_workflows | Lists the workflows in a workspace, with search and sort |
get_workflow | Reads a workflow, with its trigger, graph, warnings, and the paths that its nodes use |
list_workflow_tools | Lists the tools that a tool node can run, with the arguments of each tool |
create_workflow | Creates a workflow with its trigger. You cannot change the trigger after this step |
update_workflow | Renames a workflow |
update_workflow_graph | Creates, updates, or deletes nodes and edges as one operation |
guide_delete_workflow | Gives the link to the workflow in the dashboard, where you delete it |
list_workflow_runs | Lists the runs of a workflow, with the newest run first |
get_workflow_run | Reads the status of a run and the reason for a failure |
list_workflow_run_tasks | Lists the nodes that a run started, and the leads and labels that each node changed |
test_run_workflow | Runs the draft of a workflow one time as a test, and shows what each node did |
If update_workflow_graph refuses a change, it saves nothing. The result names each
node or edge that has a problem. If the origin node does not connect to a node, the
change is saved, and the result gives a warning for that node.
A workflow run uses the published version of the workflow. Publish the workspace to apply a change.
test_run_workflow runs the draft, so you can test a change before you publish it. Give
the responses of the action, or the entity_id of the event. The result shows the
input, the output, the status, and the branch of each node.
A tool that reads, such as search_leads or an http GET, runs. A tool that writes
does not run: the result shows what it would send. A wait node does not wait. The test
run saves nothing. You must have each scope that the workflow uses.
Analytics
| Tool | Description |
|---|---|
query_pickedql | Runs a PickedQL analytics query and returns the rows as a table |
Call get_schema_info with the topic pickedql to see the tables, the virtual
functions, and the dimension columns before you write a query.
Publish
| Tool | Description |
|---|---|
get_preview_url | Makes a preview URL for your unpublished work |
guide_publish_workspace | Gives the link to publish the workspace in the dashboard |
list_workspace_versions | Lists the published versions of a project, and shows the live one |
compare_workspace_versions | Shows the differences between the live version, a version, and a draft |
The list_* and get_* tools read the workspace draft. The draft can be
different from the live version that visitors see. Use
compare_workspace_versions to see what is live and what changes when you publish.
Example prompts
- "List my Picked projects and show me the options on each one"
- "Create a feature flag called 'new-checkout' at 50% traffic"
- "Create an experience with a step that collects an email address"
- "Show me control and variant users by the device type for the last 30 days"
- "Make a preview URL for my workspace on
https://example.com" - "Create a workflow that adds the label
plan.proto each lead from the sign-up action" - "Show me why the last run of my workflow failed"
- "Test my sign-up workflow with the email
a@example.comand show me what each node does"
Tips
- Ask your agent for a list of your projects first. Then ask it to read your workspace and report the options on each record.
- For a large experience, ask your agent about flow graphs and JSON Logic. The agent can read the documentation for you.
- An update to an experience flow is atomic. Your agent can create steps, fields, nodes, and edges in one operation.
- See a preview of your work on your site before you publish, to check that each page is correct.
- The
create_workflowprompt tells your agent how to build a workflow. The resourcepicked://workflow/{workflowId}/graphgives the graph of a workflow as JSON. - Ask your agent to run a PickedQL query on your analytics data. The agent can read the schema, write the SQL, and explain the rows.
