Connect Claude, ChatGPT or any other AI assistant to your Personyze account and work with it in plain conversation — ask how campaigns are doing, find where you are losing traffic, build a campaign, pause an action, get a how-to answer.
What this is
MCP (Model Context Protocol) is the open standard AI assistants use to work with outside services. Personyze runs an MCP server, so an assistant can reach your account directly: no code, no copying data between tabs, no export files.
It runs on the same external API as the Full-featured API, under the same permissions.
Install it in one click
Personyze is listed in both directories. Open the listing, add it, and sign in to your Personyze account when asked — there is nothing to copy or paste.
Add Personyze to Claude →
Add Personyze to ChatGPT →
Using a different assistant, or a tool that cannot open a browser? See connecting any other assistant.
Server URL: https://personyze.com/mcp/
Getting started, step by step
1. Connect it
From the directory listings above it is one click. If you would rather add it by hand, or you use an assistant that is not listed:
- In Personyze, open Integrations → Claude & ChatGPT (MCP) and copy the Server URL.
- In the assistant, add a custom connector and paste it — in Claude, Settings → Connectors → Add custom connector; in ChatGPT, Settings → Connectors.
- Approve the connection on the Personyze screen that opens.
The assistant receives its own credential during that approval. There is no key to enter, and the credential belongs to the assistant rather than to you personally, so revoking it later does not touch your login.

2. Check it can see your account
Ask it something small and factual first — “which Personyze account am I connected to?” or “list my live campaigns”. If it answers with your own campaign names, everything downstream will work. If it says it cannot reach Personyze, the connection did not complete; reconnect rather than debugging the question.
3. Ask in plain words, not in tool names
You never name a tool. Say what you want — “why did conversions drop last week?”, “build me a popup for cart abandoners” — and the assistant picks the tools it needs, often several in a row. The full tool list further down is there so you know the boundaries, not so you can recite them.
4. Know what it will and will not do on its own
- Anything it builds lands in staging, never live. You review it in Personyze and publish yourself — the assistant cannot put content in front of your visitors.
- It works inside your permissions. It can reach exactly what your own user can reach, and nothing else.
- It reads real data — campaigns, reports, audiences, visitor profiles — so treat a shared chat the way you would treat a shared report.
5. A good first hour
- “Summarise how my campaigns performed in the last 30 days.” — gets you oriented, and proves reporting works.
- “Which campaign has the worst click-through, and what would you change?” — analysis rather than lookup.
- “Draft a banner for visitors who viewed a product but did not add to cart, and put it in staging.” — the build path, end to end, with nothing at risk.
- Open Personyze, look at what it made, and publish it or throw it away.
What you can ask it to do
Everything below works today. The wording is yours — these are examples of the kind of question, not commands with a fixed syntax.
Understand how your campaigns are performing
- “Which campaigns performed best in the last 30 days?”
- “Which action got the most clicks last month?”
- “How is the pricing-page banner doing compared to April?”
- “Which campaigns had no activity at all in the last 30 days?”
- “Did the checkout popup actually get shown, or just executed?”
It reads the daily performance summary per action: impressions, deliveries, clicks, dismissals, failures, your own configured goals, and revenue-style totals. It will decline to quote a click-through rate on a sample too small to mean anything, and say so rather than quoting it anyway.
Find where you are losing traffic
- “Which landing pages lose the most sessions?”
- “What are my most-visited pages this week?”
- “Where is my traffic coming from?”
- “Which traffic sources convert worst?”
- “What devices and browsers do my visitors use?”
- “Which countries and cities do my visitors come from?”
- “What organic search terms bring people in?”
Site-wide traffic for any date range, broken down by page, landing page, referrer, search term, device, city or country — with sessions, visits, users, bounces, goals, goal value, time on page, and the personalization impressions and clicks on those pages. Rates (bounce, goal, click-through, new-user, mobile) are computed after grouping, and low-traffic rows are excluded when ranking by a rate, so a 100% bounce rate over three sessions does not outrank a real problem.
Look at products
- “What are my best-selling products?”
- “Which products get viewed a lot but rarely bought?”
- “What is being recommended most often?”
See what is running, and why
- “List my campaigns.”
- “Which campaigns run on my home page?”
- “Why isn’t the welcome banner showing?”
- “What is the targeting on campaign 1834?”
- “Which campaigns target mobile visitors?”
- “Show me the HTML of the banner in this campaign.”
- “Which of my actions are live and which are still in testing?”
Targeting comes back as readable rule text — “Include on current page: Contains /pricing and not Full URL contains login” — not as raw configuration.
Build and change campaigns
- “Create a campaign targeting returning mobile visitors.”
- “Build me a campaign for visitors on the pricing page who have not bought.”
- “Rename it to Summer Promo and change the targeting to visitors from paid search.”
- “Switch that draft on so I can test it.”
- “Pause the popup on the checkout page.”
- “Resume the exit-intent banner.”
Two things worth knowing about how this behaves:
New campaigns are created in staging mode. They are shown only to visitors arriving from a staging IP. Real traffic keeps seeing whatever is live now, and you publish it yourself in the panel. The assistant gives you a direct link to the campaign so you can open it. Describe targeting in plain words and it is compiled into real rules — the assistant reads the compiled result back to you, because a rule that says something slightly different from what you asked for looks identical from the outside.
Pausing or resuming an action is live. It takes effect for real visitors as soon as your account’s JavaScript rebuilds. The assistant confirms before doing it, and confirms in concrete terms — naming the action, the campaign it sits in, and what your visitors stop or start seeing. It is fully reversible. One action at a time: “pause the campaign” is not taken as licence to switch everything in it off without telling you.
Work with audiences and visitor profiles
- “How many audiences do I have, and how big is each one?”
- “Create an audience called Enterprise Prospects.”
- “Add everyone in this list to it.”
- “Add john@example.com to the Enterprise Prospects audience.”
- “Remove visitor 48213 from that audience.”
- “Find the profile for CRM id crm-123.”
- “Which visitors have visited more than five times?”
- “Update Ann’s profile with her new phone number.”
Visitors can be identified by Personyze’s numeric profile id, by your own CRM/site id, or by email.
Manage placeholders
- “What placeholders do I have?”
- “Create a placeholder for the element with id hero-banner.”
Work with promotions, surveys, reviews and feedback
- “List my promotions and how each one is doing.”
- “Create a 10% coupon promotion called Spring.”
- “How did the exit survey do?”
- “What is our NPS this month?”
- “How many reviews have we collected?”
- “Build a survey for visitors leaving the pricing page, and give it its own page.”
A promotion it creates is always a draft, for you to approve in Personyze, and it edits only drafts and paused promotions. Results are read only: the same numbers the panel’s reports show.
Set up the AI Chat and the AI finders
- “Is our AI chat set up?”
- “Teach the chat our returns page.”
- “What couldn’t the chat answer this week?”
- “Make the product finder’s results open as a panel at the side.”
Setting a chat up is four things — configured, given something to read, placed on the site by a campaign, and switched on — and the assistant says which are left. The chat’s look and the people who take over are set on their screens in Personyze.
Ask how the product works
- “How do I import my product catalog?“
- “How do I set up conversion tracking?“
- “How do I install Personyze on Shopify?“
- “What is the difference between a campaign and an action?”
- “How do web push notifications work?”
The assistant searches this knowledge base and answers from what it finds, linking the articles it used so you can check them. If the documentation does not cover your question, it says so and offers to open a support ticket rather than guessing.
Get help from a human
- “Open a support ticket — recommendations are not showing on mobile.”
It asks first, writes up what you were doing and what it already checked so support does not start from nothing, and gives you the ticket number. Replies arrive in the panel under Support Tickets.
Anything else
For requests the dedicated tools do not cover, the assistant can call the Personyze REST API directly — the same objects available to any API client.
Full tool list
Every tool the server offers, by what it is for. You never have to name one.
Campaigns and actions: read
| Tool | What it does |
|---|---|
list_campaigns |
The account’s campaigns, with enough about each to find one from a partial memory |
get_campaign_targeting |
The rules deciding who a campaign is shown to, in readable form |
list_actions |
Personalization actions — banners, popups, recommendations, email widgets |
get_action_content |
One action with its editable HTML and presenting rules |
get_widget_settings |
Every setting of an action built from a gallery template, as its editor sidebar shows it |
get_finder_settings |
Every setting of an AI Product Finder or AI Content Finder, card by card |
check_campaign_readiness |
Would this campaign actually show anything? |
check_widget_on_site |
Open a page of your site with a campaign’s staging version forced on |
Building and changing campaigns (staging)
| Tool | What it does |
|---|---|
create_campaign_draft |
Create a campaign in staging mode — including Promotions, Surveys, Reviews and Feedback campaigns |
update_campaign_draft |
Rename, re-target or switch a staging campaign |
edit_campaign_rules |
Add or remove one targeting rule, keeping the rest |
set_campaign_schedule |
Run a campaign only between two dates |
set_frequency_cap |
How often one visitor sees a campaign |
set_traffic_split |
Split traffic between A/B variants |
duplicate_campaign |
Copy a campaign into a new staging campaign |
publish_to_staging |
Put a saved campaign on staging |
list_campaign_ideas |
Campaign ideas worth building on this account |
build_campaign_idea |
Build a campaign from one of those ideas |
list_action_templates |
Browse the template gallery |
get_template_preview |
Show gallery designs as images |
create_action_from_template |
Add an action built from a gallery design |
create_action |
Add an action you write yourself |
save_action_as_template |
Keep an action as a design in your own gallery |
update_action_content |
Write an action’s HTML |
replace_action_text |
Change an action’s wording, keeping its design |
change_widget_settings |
Change a gallery-built action’s settings, as its editor sidebar would |
change_finder_settings |
Change an AI finder’s settings, as its designer would |
hide_site_elements |
Hide parts of your page while an action shows |
add_goal_to_action |
Make an action report a goal |
place_action |
Put an existing action into placeholders |
list_tags |
The tags on campaigns, actions, goals and placeholders |
set_tags |
Put tags on, or take them off |
Live operations (real visitors see the change)
| Tool | What it does |
|---|---|
set_active |
Stop or restart a campaign, a goal, a tracking source, a visitor-attribute source or a placeholder, without deleting it |
set_action_active |
Pause or resume one live action |
Promotions, surveys, reviews and feedback
| Tool | What it does |
|---|---|
get_promotions |
Your promotions, and how each performs |
create_promotion |
Add a promotion — always as a draft |
update_promotion |
Edit a draft or paused promotion |
add_survey_page |
Give a survey a page of its own |
get_survey_email_code |
A survey’s first question as HTML for another tool’s email |
get_survey_results |
What a survey was answered (read only) |
get_feedback_scores |
Feedback answers and NPS (read only) |
get_reviews_status |
Reviews collected, and the review platforms (read only) |
The AI Chat
| Tool | What it does |
|---|---|
get_chat_setup |
How the chat is set up, and what is left to do |
update_chat_settings |
Create or change how the chat behaves |
add_chat_knowledge |
Give it one web page or a piece of text to read |
crawl_site_for_chat |
Read a whole site into its knowledge |
remove_chat_knowledge |
Remove one knowledge source |
refresh_chat_knowledge |
Re-read every page source |
list_chat_gaps |
The questions it could not answer |
create_chat_campaign |
The campaign that puts the chat on your site |
Reports
| Tool | What it does |
|---|---|
get_campaign_performance |
Per-action daily performance over a date range |
get_ab_test_results |
An A/B test’s verdict: who is winning, by how much, how sure |
get_traffic_analytics |
Site-wide traffic by page, source, device or place |
get_product_stats |
Per-product views, recommendations and purchases |
list_recommendations |
What this account should do next |
list_scheduled_reports |
The scheduled report emails already set up |
schedule_report |
Send a report on a schedule |
cancel_scheduled_report |
Stop a scheduled report |
Audiences and visitors
| Tool | What it does |
|---|---|
list_audiences |
List audiences (visitor segments) |
create_audience |
Create one |
delete_audience |
Delete one (visitor profiles are not deleted) |
list_audience_members |
Who is in an audience |
add_audience_member |
Add a visitor to an audience |
remove_audience_member |
Remove one |
list_discovered_audiences |
The audiences Audience Discovery found in your data |
create_list_from_discovered_audience |
Turn a discovered audience into an audience list |
dismiss_discovered_audience |
Hide a discovered audience from the suggestions |
get_visitors |
Search visitor profiles |
save_visitor |
Create or update a visitor profile |
get_visitor_activity |
One visitor’s sessions: how they arrived, where they landed, what they converted |
list_visitor_fields |
Every field a visitor profile can hold |
create_visitor_field |
Add a custom field to visitor profiles |
Your site and its setup
| Tool | What it does |
|---|---|
get_account_profile |
What kind of site this is, its integrations and its add-ons |
rescan_site |
Look at your site again and refresh what is known about it |
inspect_page |
Open a page of your site on a desktop and a phone, and describe it |
list_page_groups |
Your page groups and the rule behind each |
create_page_groups |
Create page groups from a deep site reading |
list_placeholders |
Named page locations actions render into |
create_placeholder |
Create one |
create_placeholders_from_reading |
Create the placeholders a deep site reading found |
set_placeholder_priority |
Which action a placeholder shows first |
list_goals |
Your conversion goals |
create_goal |
Add a conversion goal |
create_goals_from_reading |
Create the goals a deep site reading found |
get_tracking_code |
The tracking code for your site |
check_tracking_status |
Is the tracking code reporting, per domain |
list_tracking_sources |
How your site reports products and content |
add_tracking_source |
Record what a product or article interaction looks like on your site |
add_attribute_source |
Fill a visitor-profile field from what is on the page |
set_gtm_tracking |
Read product events from the Tag Manager data layer |
set_anti_flicker |
Switch Anti-flicker on or off |
set_account_features |
Show or hide feature areas in the menus |
get_email_embed_code |
The HTML that puts a recommendation into an email or an external banner |
list_automation_rules |
The automation rules already set up |
Catalog and recommendations
| Tool | What it does |
|---|---|
check_catalog_for_recommendations |
What a recommendation widget will run into, measured on your catalog |
check_recommendation_build |
Why recommendations are empty or out of date |
request_recommendation_rebuild |
Put the account first in line for the recommendation build |
get_catalog_crawl_status |
How the catalog crawl is doing |
start_catalog_crawl |
Crawl your site into the catalog now |
set_catalog_crawl_page_limit |
Change the catalog crawl’s page limit |
Help
| Tool | What it does |
|---|---|
search_docs |
Search this knowledge base |
open_support_ticket |
Open a ticket with the support team |
personyze_api |
Any Personyze REST API call, for the rest |
Authentication, in detail
For developers building a client rather than using a ready-made assistant:
- OAuth 2.1, authorization code with PKCE (S256). Public clients — no client secret.
- Dynamic client registration (RFC 7591) at the advertised
registration_endpoint, so a client can register itself. - Discovery per RFC 9728 (protected resource) and RFC 8414 (authorization server), served at the host root: –
https://personyze.com/.well-known/oauth-protected-resource–https://personyze.com/.well-known/oauth-authorization-server - Scope:
personyze:full - An unauthenticated request to
/mcp/answers401with aWWW-Authenticateheader carryingresource_metadata, which is the discovery entry point.
Permissions and revoking access
Every connected assistant rides on an API key belonging to your account, and acts with that account’s permissions — it can see and change only what that account can.
To disconnect an assistant, delete its key under Integrations → Claude & ChatGPT (MCP) (or Full-featured API — they share one set of keys). Revocation is immediate.
Troubleshooting
The assistant says it cannot reach the server. Check that you pasted the URL with the trailing slash: https://personyze.com/mcp/.
The connection screen never appears. Your assistant may be blocking custom connectors on your plan — both Claude and ChatGPT gate this by tier.
A tool returns no data. Confirm you approved the connection for the intended Personyze account; the panel’s account switcher and the assistant’s connection are independent.
It says a campaign cannot be edited. Only staging-mode campaigns can be renamed or re-targeted by an assistant. A live campaign is edited in the panel.