<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Personyze Support</title>
    <description>The latest articles on DEV Community by Personyze Support (@personyze_support_b8d48e1).</description>
    <link>https://dev.to/personyze_support_b8d48e1</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4140089%2F38e13020-bfc3-4348-b793-5f4e17107a1d.png</url>
      <title>DEV Community: Personyze Support</title>
      <link>https://dev.to/personyze_support_b8d48e1</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/personyze_support_b8d48e1"/>
    <language>en</language>
    <item>
      <title>Headless CMS Personalization: How to Personalize Content in a Composable Stack</title>
      <dc:creator>Personyze Support</dc:creator>
      <pubDate>Wed, 23 Sep 2026 22:13:26 +0000</pubDate>
      <link>https://dev.to/personyze_support_b8d48e1/headless-cms-personalization-how-to-personalize-content-in-a-composable-stack-2b19</link>
      <guid>https://dev.to/personyze_support_b8d48e1/headless-cms-personalization-how-to-personalize-content-in-a-composable-stack-2b19</guid>
      <description>&lt;p&gt;Headless and composable stacks split the content (an API-first CMS) from the front end that renders it. That’s great for flexibility — one content source feeding a website, an app, and the edge — but it complicates personalization, which used to rely on a single page and a script tag swapping elements in the browser.&lt;/p&gt;

&lt;p&gt;In a headless setup, personalization has to become a &lt;em&gt;decision layer&lt;/em&gt;: something that decides &lt;strong&gt;who&lt;/strong&gt; sees &lt;strong&gt;what&lt;/strong&gt; for a given slot, and hands that decision to whatever front end is doing the rendering. Here’s a practical architecture for headless CMS personalization with Personyze — the building blocks, two ways to integrate, and the questions to settle before you build.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why headless changes personalization
&lt;/h2&gt;

&lt;p&gt;A traditional CMS renders the page and a personalization script rewrites the DOM after load. Headless breaks that model: the CMS is just a content API, and your front end — Next.js, Nuxt, a mobile app, an edge function — fetches content and renders it. There is no single page to inject into.&lt;/p&gt;

&lt;p&gt;So personalization splits into three jobs: define &lt;strong&gt;audiences&lt;/strong&gt; (who), decide the &lt;strong&gt;content or variant&lt;/strong&gt; for this visitor and slot (what), and &lt;strong&gt;render&lt;/strong&gt; it wherever your front end lives. Personyze handles the first two and hands the decision to your stack — on the server or in the browser.&lt;/p&gt;

&lt;h2&gt;
  
  
  The building blocks: audiences, placements, decisions
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Audiences&lt;/strong&gt; define who. The easiest path is to embed the Personyze &lt;strong&gt;Audience Builder&lt;/strong&gt; in an iframe inside your own UI: editors define rules using your customer and account fields, and Personyze returns a compiled audience id/definition. You get a full rules engine without rebuilding audience UI or logic yourself. Audiences can combine on-site &lt;a href="https://www.personyze.com/behavioral-targeting/" rel="noopener noreferrer"&gt;behavior&lt;/a&gt;, CRM data, and &lt;a href="https://www.personyze.com/blog/personalization-blog/cookieless-personalization/" rel="noopener noreferrer"&gt;first-party signals&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Placements&lt;/strong&gt; mark where personalized content goes. Each is a &lt;code&gt;placement_id&lt;/code&gt; — you can create a universal placement or one scoped strictly to a given page or URL.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Decisions&lt;/strong&gt; tie it together: given a &lt;code&gt;visitor_id&lt;/code&gt; and the &lt;code&gt;placement_id&lt;/code&gt;s on a page, Personyze resolves the visitor’s audience and returns the &lt;code&gt;content_id&lt;/code&gt; and variant to show. The same decision flow powers A/B tests, so testing is not a separate system.&lt;/p&gt;

&lt;h2&gt;
  
  
  Two ways to wire it up
&lt;/h2&gt;

&lt;p&gt;There’s no single “right” integration — it comes down mostly to whether you render on the server or in the browser.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsn5x4szjbw509qljty0j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsn5x4szjbw509qljty0j.png" alt="Three integration options for headless personalization" width="800" height="293"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Server-to-server, client-side, or Personyze-led with CMS content import.&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Option A — Server-to-server (recommended)
&lt;/h3&gt;

&lt;p&gt;Your CMS/back end stores the &lt;code&gt;content_id&lt;/code&gt;, the &lt;code&gt;placement_id&lt;/code&gt; (universal or page-scoped), and the audience id/definition. On each request, your server reports the &lt;code&gt;visitor_id&lt;/code&gt; plus the &lt;code&gt;placement_id&lt;/code&gt;s on the page to Personyze; Personyze returns the &lt;code&gt;content_id&lt;/code&gt; and variant (the same flow as A/B tests); and your app renders the content.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fypcbq0df6gpwn1x71agf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fypcbq0df6gpwn1x71agf.png" alt="Server-to-server request flow" width="799" height="264"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;The server reports visitor and placements; Personyze returns the content and variant to render.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Benefits:&lt;/strong&gt; no coupling to content type, more control over content management, and a workflow that stays simple even when an update requires content edits. It fits server rendering, SSR, and edge cleanly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The trade-off:&lt;/strong&gt; server-to-server means &lt;em&gt;you&lt;/em&gt; send Personyze the visitor context it needs to decide — the current page and URL, the referrer, the user agent, and the behavior events that build the visitor’s profile. The client-side option collects all of that automatically from a single Personyze tag (70+ attributes out of the box); server-to-server trades that convenience for control, keeping decisions on your backend. It’s the right call for many teams — just budget for the extra integration work.&lt;/p&gt;

&lt;h3&gt;
  
  
  Option B — Client-side rendering
&lt;/h3&gt;

&lt;p&gt;Your front end sends the actual content payload to Personyze, and Personyze places it on the page in the browser. Use this when you want client-only rendering or rapid UI experiments without server hooks.&lt;/p&gt;

&lt;p&gt;Because it runs through the Personyze tag, it also captures the visitor context for you — page, referrer, device, and on-site behavior — so there’s far less to wire up than the server-to-server path.&lt;/p&gt;

&lt;h2&gt;
  
  
  A/B testing comes along for free
&lt;/h2&gt;

&lt;p&gt;Because the decision flow is “&lt;code&gt;visitor_id&lt;/code&gt; + &lt;code&gt;placement_id&lt;/code&gt; → variant,” the same wiring runs &lt;a href="https://www.personyze.com/audience-oriented-ab-testing/" rel="noopener noreferrer"&gt;A/B and multivariate tests&lt;/a&gt;. Test content variants per placement and audience, and let Personyze close out losers and roll traffic to winners — no separate testing integration.&lt;/p&gt;

&lt;h2&gt;
  
  
  Server-side or client-side rendering?
&lt;/h2&gt;

&lt;p&gt;Both work, and Personyze supports both a server-side REST API and a client-side JSON API. &lt;strong&gt;Server-side&lt;/strong&gt; (during page generation, SSR, or at the edge) decides before render, so there’s no flicker and it works for SEO, apps, and email. &lt;strong&gt;Client-side&lt;/strong&gt; decides in the browser, which is faster to iterate for SPA experiments. Many teams mix the two.&lt;/p&gt;

&lt;h2&gt;
  
  
  Dynamic content, recommendations, and JSON
&lt;/h2&gt;

&lt;p&gt;The same decision layer does more than swap static blocks. &lt;strong&gt;Dynamic content&lt;/strong&gt; — a hero, banner, message, or CTA — can be personalized by audience, with your own custom fields (name, industry, location, account type) inserted as personalization tags right into the content or the recommendation set.&lt;/p&gt;

&lt;p&gt;For &lt;a href="https://www.personyze.com/automatic-and-personalized-productcontent-recommendations/" rel="noopener noreferrer"&gt;recommendations&lt;/a&gt;, Personyze returns &lt;strong&gt;JSON for both product and content&lt;/strong&gt; recommendations. You pick the &lt;a href="https://www.personyze.com/blog/personalization-blog/recommendation-algorithms-explained/" rel="noopener noreferrer"&gt;algorithm&lt;/a&gt; and map the fields you want, and Personyze returns a personalized JSON set per visitor. Your front end reads it from a JavaScript variable and renders it in your own layout — cards, carousels, widgets — which is ideal for SPAs, mobile apps, and custom front ends. Prefer not to build the display? Managed, responsive widgets are available too.&lt;/p&gt;

&lt;p&gt;And it fits either render path from above: &lt;strong&gt;client-side&lt;/strong&gt;, using the client-side JSON API read in the browser or app; or &lt;strong&gt;server-side&lt;/strong&gt;, calling Personyze’s API from your backend with the visitor’s id — even their CRM id or email — to get their recommendations back. There’s a full REST API and native iOS/Android SDKs, and the same &lt;a href="https://www.personyze.com/blog/personalization-blog/multilingual-personalization/" rel="noopener noreferrer"&gt;multilingual&lt;/a&gt; logic applies, so content and recs arrive in the visitor’s language.&lt;/p&gt;

&lt;h2&gt;
  
  
  Two quick examples
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. A B2B homepage hero (server-to-server)
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Build:&lt;/strong&gt; Define a “Manufacturing accounts” audience in the Audience Builder using your CRM and firmographic fields. Create a placement — &lt;code&gt;home-hero&lt;/code&gt; — and store two hero variants in your CMS. On each homepage request, your server sends the &lt;code&gt;visitor_id&lt;/code&gt;, &lt;code&gt;home-hero&lt;/code&gt;, and the visitor context (page, referrer, and the company from your own data) to Personyze, gets back a &lt;code&gt;content_id&lt;/code&gt;, and renders that hero server-side.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;End result:&lt;/strong&gt; a classic &lt;a href="https://www.personyze.com/b2b-website-personalization/" rel="noopener noreferrer"&gt;B2B personalization&lt;/a&gt; play — a visitor from a manufacturing account lands on a hero and CTA written for manufacturing — server-rendered, no flicker — while everyone else sees the default. Point the same placement at two variants and you’ve got an &lt;a href="https://www.personyze.com/audience-oriented-ab-testing/" rel="noopener noreferrer"&gt;A/B test&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. A “Recommended for you” rail in a SPA (client-side JSON)
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Build:&lt;/strong&gt; Set up a Content Recommendations JSON action with a “readers also read” or “most read by interest” &lt;a href="https://www.personyze.com/blog/personalization-blog/recommendation-algorithms-explained/" rel="noopener noreferrer"&gt;algorithm&lt;/a&gt;, map the fields you want (title, image, URL), and assign the result to a JavaScript variable. On your article page, read that variable and render your own card layout — no server changes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;End result:&lt;/strong&gt; every reader sees a personalized rail in your own design — the heart of &lt;a href="https://www.personyze.com/personalization-for-publishers/" rel="noopener noreferrer"&gt;publisher &amp;amp; media personalization&lt;/a&gt;. New or anonymous readers get trending and popular picks; once an interest is known it shifts to interest-based recommendations — all client-side, and in the visitor’s language.&lt;/p&gt;

&lt;h2&gt;
  
  
  What to align on before you build
&lt;/h2&gt;

&lt;p&gt;A short discovery checklist gets a headless integration scoped quickly:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Render path:&lt;/strong&gt; server-side during page generation, or client-side?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tech stack:&lt;/strong&gt; which languages and frameworks power your rendering layer?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auth &amp;amp; events:&lt;/strong&gt; preferred auth (API key or OAuth), and — for server-to-server — can you send Personyze the visitor context it needs (current page/URL, referrer, user agent) plus real-time view/click events (&lt;code&gt;visitor_id&lt;/code&gt; + &lt;code&gt;placement_id&lt;/code&gt;)?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Caching / CDN:&lt;/strong&gt; any constraints for server-to-server calls — TTLs, edge caching, or personalization-vs-cache rules — to factor in?&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Works with any headless CMS
&lt;/h2&gt;

&lt;p&gt;The decision layer is CMS-agnostic: it operates on &lt;code&gt;content_id&lt;/code&gt;s and &lt;code&gt;placement_id&lt;/code&gt;s, not on a specific product. That means it slots in alongside API-first platforms like Contentful, Sanity, Strapi, Contentstack, or ButterCMS — and it can pull unified profiles from a CDP such as Segment or an &lt;a href="https://www.personyze.com/personyze-integration/" rel="noopener noreferrer"&gt;integration&lt;/a&gt; you already run.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Originally published on the &lt;a href="https://www.personyze.com/personalization-blog/headless-cms-personalization/" rel="noopener noreferrer"&gt;Personyze blog&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>headless</category>
      <category>webdev</category>
      <category>architecture</category>
      <category>nextjs</category>
    </item>
    <item>
      <title>Recommendation Algorithms Explained: Collaborative Filtering, Bought-Together, Trending, and More</title>
      <dc:creator>Personyze Support</dc:creator>
      <pubDate>Wed, 23 Sep 2026 22:12:44 +0000</pubDate>
      <link>https://dev.to/personyze_support_b8d48e1/recommendation-algorithms-explained-collaborative-filtering-bought-together-trending-and-more-19aj</link>
      <guid>https://dev.to/personyze_support_b8d48e1/recommendation-algorithms-explained-collaborative-filtering-bought-together-trending-and-more-19aj</guid>
      <description>&lt;p&gt;Recommendation widgets all look the same from the outside — a row of products or articles under a heading. What actually decides whether they lift revenue or just fill space is the &lt;em&gt;algorithm&lt;/em&gt; behind them. Match the right one to the placement and you get relevance; pick wrong and you get noise.&lt;/p&gt;

&lt;p&gt;Here are the four families of recommendation algorithms — collaborative filtering, bought-together, trending, and content/interest-based — what each is good for, and how they map to the algorithms Personyze ships. (For the machinery that powers them, see &lt;a href="https://www.personyze.com/blog/personalization-blog/whats-under-the-personalization-hood-components-of-a-product-recommendation-engine/" rel="noopener noreferrer"&gt;what’s under the personalization hood&lt;/a&gt;.)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.personyze.com/rec-engine-demo-embed/" rel="noopener noreferrer"&gt;Try the live interactive demo&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;The same engine on two very different pages: a product page attaching bought-together items, and a publisher’s site ranking what to read next. Watch it switch between them.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  First, the cold-start problem
&lt;/h2&gt;

&lt;p&gt;Every algorithm has to answer one awkward question: what do you show a brand-new visitor with no history? Personyze’s approach is to start from &lt;strong&gt;crowd data&lt;/strong&gt; — what’s popular across everyone — and switch to personalized the moment it learns an interest. Interests are ranked and updated as the visitor browses, so the same widget gets sharper with every click. Keep that in mind as you read on: most of the algorithms below quietly fall back to crowd data until there’s enough signal to personalize.&lt;/p&gt;

&lt;h2&gt;
  
  
  AI recommendations: predicting what each visitor will buy
&lt;/h2&gt;

&lt;p&gt;The most powerful recommendations aren’t a single rule — they’re a &lt;em&gt;prediction&lt;/em&gt;. Personyze’s personalized (AI) recommendations combine many data points at once to work out what each visitor is most likely to buy or engage with next:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Your &lt;strong&gt;product feed and catalog&lt;/strong&gt; — attributes, categories, price, availability.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;site itself, crawled&lt;/strong&gt;, so the engine understands your products and content.&lt;/li&gt;
&lt;li&gt;The visitor’s &lt;strong&gt;own profile&lt;/strong&gt; — CRM fields, demographics, location.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Other visitors’&lt;/strong&gt; behavior — the crowd patterns behind “people like you.”&lt;/li&gt;
&lt;li&gt;What this visitor &lt;strong&gt;clicks, views, and adds to cart&lt;/strong&gt;, in real time.&lt;/li&gt;
&lt;li&gt;What they — and everyone else — actually &lt;strong&gt;purchased&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fiihcst7ubk5vm23xicr9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fiihcst7ubk5vm23xicr9.png" alt="AI recommendations combine many signals into one ranked prediction" width="800" height="347"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Personyze weighs the catalog, the crowd, and the individual together, then ranks the catalog by how likely this visitor is to buy.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Instead of leaning on one signal, the engine weighs the catalog, the crowd, and the individual together, ranks your catalog by how likely this visitor is to buy, and gets sharper with every interaction. That’s what powers Personyze’s &lt;strong&gt;Highest Relevance / Personalized Recommendations&lt;/strong&gt; — the truest form of “personalized.”&lt;/p&gt;

&lt;p&gt;Because recommendations are built on transaction statistics, a brand-new setup would normally take a little while to gather enough data. You can skip the wait by &lt;a href="https://wiki.personyze.com/knowledgebase/uploading-past-offline-transactions-for-product-recommendations/" rel="noopener noreferrer"&gt;uploading your past or offline transactions&lt;/a&gt; — feeding the engine your purchase history (including in-store sales) so it reaches relevance from day one.&lt;/p&gt;

&lt;h2&gt;
  
  
  Collaborative filtering: “people like you”
&lt;/h2&gt;

&lt;p&gt;Collaborative filtering is the workhorse of recommendations. It learns from behavior across &lt;em&gt;many&lt;/em&gt; visitors — people who bought or viewed this also bought or viewed that — without needing to understand the product itself. It’s how “you might also like” works.&lt;/p&gt;

&lt;p&gt;In Personyze, this family includes &lt;strong&gt;Highest Relevance&lt;/strong&gt; (a personalized mix based on visitors with similar demographics and interactions), &lt;strong&gt;Likely to Buy&lt;/strong&gt; (items bought by those who viewed the current one), and &lt;strong&gt;Likely to View&lt;/strong&gt; (items viewed by those who viewed it). On the content side, &lt;strong&gt;Visitors Who Read This Also Read These&lt;/strong&gt; is the same idea for articles. Best for discovery and personalized picks.&lt;/p&gt;

&lt;h2&gt;
  
  
  Bought together: the cross-sell engine
&lt;/h2&gt;

&lt;p&gt;Where collaborative filtering finds “people like you,” bought-together finds &lt;em&gt;item-to-item&lt;/em&gt; associations: what gets purchased alongside a specific product, or alongside whatever’s already in the cart. It’s the most direct lever on average order value.&lt;/p&gt;

&lt;p&gt;Personyze’s &lt;strong&gt;Bought Together&lt;/strong&gt; (for product pages) shows the items most frequently bought by people who bought the current item, while &lt;strong&gt;Cross-sale Cart Recommendation&lt;/strong&gt; and &lt;strong&gt;Most Frequently Bought with Cart&lt;/strong&gt; do the same for the cart. Best for cross-sell on product and cart pages.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5t97h1r88v5ul9atrzqv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5t97h1r88v5ul9atrzqv.png" alt="A frequently-bought-together cross-sell widget" width="800" height="371"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;A frequently-bought-together widget: the current item plus its most common companions, with one add-all-to-cart action.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Trending and popular: the crowd as a signal
&lt;/h2&gt;

&lt;p&gt;Sometimes the smartest move is to show what’s working right now. Popularity-based algorithms surface the most bought or viewed items — optionally filtered by the visitor’s interest, or by fresh and discounted stock — and they’re the natural answer to cold-start.&lt;/p&gt;

&lt;p&gt;Personyze offers &lt;strong&gt;Popular from Most Recent Interest&lt;/strong&gt; and &lt;strong&gt;Popular from Recent Interests&lt;/strong&gt;, plus merchandising-friendly variants like &lt;strong&gt;New In Stock&lt;/strong&gt;, &lt;strong&gt;Recently Discounted&lt;/strong&gt;, &lt;strong&gt;Price Recently Changed&lt;/strong&gt;, and even &lt;strong&gt;most popular by gender/age&lt;/strong&gt;. Best for new visitors, homepages, and promoting fresh or discounted inventory.&lt;/p&gt;

&lt;h2&gt;
  
  
  Content and interest-based: match the thing, not just the crowd
&lt;/h2&gt;

&lt;p&gt;For articles — and for interest matching generally — you often want to recommend by &lt;em&gt;topic&lt;/em&gt; and the visitor’s ranked interests, not only by co-behavior. Personyze’s content engine does exactly this, and automatically excludes pieces the visitor has already read.&lt;/p&gt;

&lt;p&gt;It includes &lt;strong&gt;Most Read Based on Interest(s)&lt;/strong&gt;, &lt;strong&gt;New Article Based on Your Interests&lt;/strong&gt;, &lt;strong&gt;Most Popular from This Author&lt;/strong&gt;, and conversion-minded options like &lt;strong&gt;Content That Led to Most Conversions&lt;/strong&gt; and &lt;strong&gt;Likely to Read and Buy&lt;/strong&gt; for content-to-commerce. Best for publishers and any site that uses content to drive sales.&lt;/p&gt;

&lt;h2&gt;
  
  
  History-based: what they already did
&lt;/h2&gt;

&lt;p&gt;The simplest algorithms are often the highest-converting, because they lean on the visitor’s own history. &lt;strong&gt;Buy It Again&lt;/strong&gt; resurfaces past purchases in order, &lt;strong&gt;View It Again&lt;/strong&gt; brings back browsed items, and &lt;strong&gt;In Your Cart&lt;/strong&gt; reminds them what’s waiting. Best for reorders, reminders, and cart recovery.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fskosmncightht8xerdjt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fskosmncightht8xerdjt.png" alt="Visitor-history algorithms in the Personyze picker" width="800" height="677"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Filtering the picker to visitor-history algorithms — Buy It Again, View It Again, and In Your Cart.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How to pick the right algorithm for each placement
&lt;/h2&gt;

&lt;p&gt;You choose &lt;strong&gt;one algorithm per widget&lt;/strong&gt; — with an optional fallback if it can’t fill — and match it to the &lt;em&gt;placement&lt;/em&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Homepage:&lt;/strong&gt; trending or interest-based, so new and returning visitors both see something relevant.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Product page:&lt;/strong&gt; bought-together plus likely-to-buy, to drive discovery and order value.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cart:&lt;/strong&gt; cross-sell based on what’s already in the basket.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Article or blog:&lt;/strong&gt; content and interest-based, excluding what they’ve already read.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Category page:&lt;/strong&gt; trending or popular within the category, tuned to the visitor’s interests.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In Personyze each widget runs a &lt;strong&gt;single&lt;/strong&gt; algorithm — with a &lt;strong&gt;fallback&lt;/strong&gt; for when it can’t fill — and you choose a design from the &lt;a href="https://www.personyze.com/website-personalization-templates/?category=recommendations" rel="noopener noreferrer"&gt;recommendation template gallery&lt;/a&gt;, then apply &lt;strong&gt;filters&lt;/strong&gt; and display options like direct add-to-cart or showing the recommendations as a popup (including exit-intent).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsku972lheuaau2va9tsm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsku972lheuaau2va9tsm.png" alt="Personyze recommendation algorithm picker" width="800" height="645"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;In Personyze, choose the algorithm per widget — with fallbacks, filters, and options like direct add-to-cart or popup display.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Delivered your way: a managed widget or raw JSON
&lt;/h2&gt;

&lt;p&gt;Choosing the algorithm is one decision; how you deliver the recommendations is another — and Personyze supports both ends of the spectrum.&lt;/p&gt;

&lt;p&gt;The usual path is a &lt;strong&gt;managed widget&lt;/strong&gt;: pick a ready-made design from the &lt;a href="https://www.personyze.com/website-personalization-templates/?category=recommendations" rel="noopener noreferrer"&gt;recommendation template gallery&lt;/a&gt;, customize the look and feel, and drop it in — no code required. You preview exactly what visitors will see before you publish.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fboand7xtsj2uragxbu6c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fboand7xtsj2uragxbu6c.png" alt="Personyze recommendation widget preview and customization" width="800" height="677"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Customize and preview the widget before publishing — no code required.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;For full control, pull the recommendations as &lt;strong&gt;JSON&lt;/strong&gt; instead — through a client-side JavaScript API or a JSON feed — and render them in your own front end or on the server. Headless storefronts, mobile apps, and fully custom layouts all work: the algorithm and personalization run in Personyze, while you own the presentation. The same recommendation engine can power a no-code widget or a bespoke, &lt;strong&gt;server-side&lt;/strong&gt; component.&lt;/p&gt;

&lt;h2&gt;
  
  
  How Personyze fits
&lt;/h2&gt;

&lt;p&gt;Personyze ships every algorithm above out of the box, blends crowd data with the visitor’s ranked interests, and lets you place the right one on every surface — product, cart, homepage, or article. See them in action in our &lt;a href="https://www.personyze.com/blog/personalization-blog/product-recommendation-examples/" rel="noopener noreferrer"&gt;product recommendation examples&lt;/a&gt;, and when you’re ready to measure the payoff, our &lt;a href="https://www.personyze.com/blog/personalization-blog/personalization-roi-metrics/" rel="noopener noreferrer"&gt;personalization ROI guide&lt;/a&gt; covers how to read recommendation &lt;em&gt;contribution&lt;/em&gt; — the revenue recommendations actually influence.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fztomb63y8bjr3tyd5xe7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fztomb63y8bjr3tyd5xe7.png" alt="Personyze recommendation analytics dashboard" width="800" height="1027"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Recommendation analytics — contribution, purchases, and the sessions each algorithm influenced.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Originally published on the &lt;a href="https://www.personyze.com/personalization-blog/recommendation-algorithms-explained/" rel="noopener noreferrer"&gt;Personyze blog&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>machinelearning</category>
      <category>ecommerce</category>
      <category>algorithms</category>
      <category>datascience</category>
    </item>
    <item>
      <title>An MCP server for a personalization platform: OAuth 2.1, 23 tools, and staging by default</title>
      <dc:creator>Personyze Support</dc:creator>
      <pubDate>Wed, 23 Sep 2026 21:38:10 +0000</pubDate>
      <link>https://dev.to/personyze_support_b8d48e1/an-mcp-server-for-a-personalization-platform-oauth-21-23-tools-and-staging-by-default-4pcm</link>
      <guid>https://dev.to/personyze_support_b8d48e1/an-mcp-server-for-a-personalization-platform-oauth-21-23-tools-and-staging-by-default-4pcm</guid>
      <description>&lt;p&gt;You can now connect &lt;strong&gt;Claude, ChatGPT or any other MCP-capable assistant&lt;/strong&gt; straight to your Personyze account and work in plain conversation — ask how campaigns are doing, find where you’re losing traffic, build a campaign, pause an action, manage audiences. No exports, no copying between tabs, no code.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frb6kjdml9z357xiyfadh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frb6kjdml9z357xiyfadh.png" alt="Claude and ChatGPT connecting to a Personyze account through the MCP server" width="800" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;One connection, and your assistant can read and act on your Personyze account.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What MCP is, briefly
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;MCP (Model Context Protocol)&lt;/strong&gt; is the open standard AI assistants use to work with outside services. Anthropic introduced it in November 2024; OpenAI adopted it in 2025, and by early 2026 there were &lt;strong&gt;over 10,000 active public MCP servers&lt;/strong&gt;. The usual analogy is “USB-C for AI”: instead of every tool building a bespoke integration for every assistant, a tool exposes one MCP server and every compatible assistant can use it.&lt;/p&gt;

&lt;p&gt;Personyze runs one. An assistant that connects to it reaches your account directly, under your account’s permissions — the same external API surface as the full-featured API.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Server URL:  https://personyze.com/mcp/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Connecting an assistant
&lt;/h2&gt;

&lt;p&gt;Most assistants ask only for the URL and then walk you through signing in:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In Personyze, open &lt;strong&gt;Integrations → AI Assistants (MCP)&lt;/strong&gt; and copy the &lt;strong&gt;Server URL&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;In the assistant, add a custom connector and paste it — in &lt;strong&gt;Claude&lt;/strong&gt;: Settings → Connectors → Add custom connector; in &lt;strong&gt;ChatGPT&lt;/strong&gt;: install it from the &lt;a href="https://chatgpt.com/plugins/plugin_asdk_app_6a7662c04e708191a3139c5278077735" rel="noopener noreferrer"&gt;ChatGPT app directory&lt;/a&gt; instead, which skips the pasting.&lt;/li&gt;
&lt;li&gt;Approve the connection on the Personyze screen that opens. Nothing to copy and paste — the assistant receives its own credential.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fk6oro9tdzjbhjr2m7cjc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fk6oro9tdzjbhjr2m7cjc.png" alt="The AI Assistants (MCP) integration drawer in Personyze showing the MCP server URL to copy into Claude or ChatGPT" width="800" height="588"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;The AI Assistants (MCP) card in Personyze — copy the Server URL into your assistant. API keys are only for tools that can’t open a browser.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Tools that can’t open a browser — a script, an IDE plugin — can send a Personyze API key as a header instead:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight http"&gt;&lt;code&gt;&lt;span class="err"&gt;Authorization: Bearer YOUR_API_KEY
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;A note on availability:&lt;/em&gt; Personyze is now listed in the &lt;strong&gt;&lt;a href="https://claude.ai/directory/personyze" rel="noopener noreferrer"&gt;Claude connector directory&lt;/a&gt;&lt;/strong&gt;, so on Claude it is a one-click install rather than pasting a URL — see the &lt;a href="https://www.personyze.com/blog/personalization-blog/personyze-claude-connector/" rel="noopener noreferrer"&gt;announcement&lt;/a&gt;. On ChatGPT it installs from the &lt;a href="https://chatgpt.com/plugins/plugin_asdk_app_6a7662c04e708191a3139c5278077735" rel="noopener noreferrer"&gt;ChatGPT app directory&lt;/a&gt; the same way; any other assistant connects with the URL above as a custom connector. Both Claude and ChatGPT gate connectors by plan tier, so check yours if the connection screen never appears.&lt;/p&gt;

&lt;h2&gt;
  
  
  What you can ask it to do
&lt;/h2&gt;

&lt;p&gt;The wording is yours — these are kinds of question, not fixed commands.&lt;/p&gt;

&lt;h3&gt;
  
  
  Understand how campaigns are performing
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;“Which campaigns performed best in the last 30 days?”&lt;/li&gt;
&lt;li&gt;“How is the pricing-page banner doing compared to April?”&lt;/li&gt;
&lt;li&gt;“Which campaigns had no activity at all last month?”&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It reads the daily performance summary per action — impressions, deliveries, clicks, dismissals, failures, your configured goals and revenue totals. It will &lt;strong&gt;decline to quote a click-through rate on a sample too small to mean anything&lt;/strong&gt; and say so, rather than quoting it anyway.&lt;/p&gt;

&lt;h3&gt;
  
  
  Find where you’re losing traffic
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;“Which landing pages lose the most sessions?”&lt;/li&gt;
&lt;li&gt;“Which traffic sources convert worst?”&lt;/li&gt;
&lt;li&gt;“What organic search terms bring people in?”&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Site-wide traffic for any date range by page, landing page, referrer, search term, device, city or country — with sessions, bounces, goals, goal value and time on page, plus the personalization impressions and clicks on those pages. Rates are computed after grouping and low-traffic rows are excluded when ranking by a rate, so a 100% bounce rate over three sessions doesn’t outrank a real problem.&lt;/p&gt;

&lt;h3&gt;
  
  
  See what’s running, and why
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;“Why isn’t the welcome banner showing?”&lt;/li&gt;
&lt;li&gt;“What is the targeting on campaign 1834?”&lt;/li&gt;
&lt;li&gt;“Which of my actions are live and which are still in testing?”&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Targeting comes back as readable rule text — “Include on current page: Contains /pricing and not Full URL contains login” — not raw configuration.&lt;/p&gt;

&lt;h3&gt;
  
  
  Build and change campaigns
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;“Create a campaign targeting returning mobile visitors.”&lt;/li&gt;
&lt;li&gt;“Rename it to Summer Promo and re-target to visitors from paid search.”&lt;/li&gt;
&lt;li&gt;“Pause the popup on the checkout page.”&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Work with audiences and profiles
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;“How many audiences do I have, and how big is each one?”&lt;/li&gt;
&lt;li&gt;“Add &lt;a href="mailto:john@example.com"&gt;john@example.com&lt;/a&gt; to the Enterprise Prospects audience.”&lt;/li&gt;
&lt;li&gt;“Which visitors have visited more than five times?”&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Ask how the product works — or get a human
&lt;/h3&gt;

&lt;p&gt;“How do I set up conversion tracking?” is answered from the knowledge base with links to the articles used; if the docs don’t cover it, the assistant says so and offers to open a support ticket rather than guessing — writing up what you were doing and what it already checked, so support doesn’t start from nothing.&lt;/p&gt;

&lt;h2&gt;
  
  
  The tools behind it
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5fwafbwaej43adrllgpq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5fwafbwaej43adrllgpq.png" alt="The Personyze MCP server tool catalog" width="800" height="335"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;23 tools, plus a fall-through to the REST API for everything else.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Twenty-three tools cover campaigns and actions, analytics, audiences and visitor profiles, placeholders, docs search and support tickets. Anything the dedicated tools don’t cover falls through to &lt;code&gt;personyze_api&lt;/code&gt; — the same REST objects available to any API client — so the assistant isn’t boxed in by the tool list.&lt;/p&gt;

&lt;h2&gt;
  
  
  Safety: staging, confirmation, revocation
&lt;/h2&gt;

&lt;p&gt;Giving an assistant write access to your website deserves scrutiny. Three properties matter here:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;New campaigns are created in staging mode.&lt;/strong&gt; They’re shown only to visitors arriving from a staging IP; real traffic keeps seeing what’s live, and you publish in the panel. Targeting described in plain words is compiled into real rules and &lt;strong&gt;read back to you&lt;/strong&gt; — because a rule that says something slightly different from what you asked looks identical from the outside.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pausing or resuming an action is live, so it’s confirmed first&lt;/strong&gt; — naming the action, the campaign it sits in, and what visitors stop or start seeing. One action at a time, and fully reversible.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Access is revocable instantly.&lt;/strong&gt; Every connected assistant rides on an API key belonging to your account and acts with that account’s permissions. Delete the key under Integrations to disconnect; revocation is immediate.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For developers building a client rather than using a ready-made assistant, the server implements &lt;strong&gt;OAuth 2.1&lt;/strong&gt; (authorization code with PKCE/S256, public clients), &lt;strong&gt;dynamic client registration&lt;/strong&gt; (RFC 7591), and discovery per &lt;strong&gt;RFC 9728&lt;/strong&gt; and &lt;strong&gt;RFC 8414&lt;/strong&gt;, with scope &lt;code&gt;personyze:full&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why this matters for personalization
&lt;/h2&gt;

&lt;p&gt;Personalization tools have always had a reporting problem: the data lives in one panel, the decision happens in someone’s head, and the change happens in a third place a week later. MCP collapses that. You can ask which pages leak sessions, get the answer from your real &lt;a href="https://www.personyze.com/website-personalization/" rel="noopener noreferrer"&gt;personalization&lt;/a&gt; data, and stage a campaign against that page — in the same conversation, without leaving your assistant.&lt;/p&gt;

&lt;p&gt;It also means Personyze fits into whatever agentic stack you’re already assembling. Forrester expects &lt;strong&gt;30% of enterprise app vendors to launch MCP servers in 2026&lt;/strong&gt;; the practical upshot is that your assistant can read your CRM, your ads and your personalization platform side by side, and reason across them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Docs
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://wiki.personyze.com/knowledgebase/mcp-server/" rel="noopener noreferrer"&gt;MCP server documentation&lt;/a&gt;: full tool list, auth details and troubleshooting.&lt;/li&gt;
&lt;li&gt;Server URL: &lt;code&gt;https://personyze.com/mcp/&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Originally published on the &lt;a href="https://www.personyze.com/personalization-blog/mcp-server-personalization/" rel="noopener noreferrer"&gt;Personyze blog&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>mcp</category>
      <category>ai</category>
      <category>oauth</category>
      <category>api</category>
    </item>
  </channel>
</rss>
