Privacy

Privacy, in plain words

ManyCP is one person's project. I keep what the product needs to work, and nothing to sell.

Last updated 2026-09-30

Who is responsible

The controller of your data (the one who decides how it is used) is Jonah, an individual based in Australia, who runs ManyCP. Questions, requests and complaints about your data come to hello@manycp.com, and I read every email.

What we store

  • Your email address, and your GitHub name and id if you sign in with GitHub.
  • Your GitHub token, encrypted before it is saved. It is never sent to your browser. We keep the list of permissions you granted next to it.
  • The MCP servers you add: repo link, description, tools, install command, version and package names.
  • Listing text that Claude drafted for a server, so you can compare it with your own (see Who else sees it).
  • What happened to each submission: status, links to pull requests or listings, and errors.
  • A log of activity on your account, such as sign-ins and submissions.
  • API keys you create, saved as a hash. We can not read a key back after we show it once.
  • Your Stripe customer id, plan and billing status.
  • If you arrived from a Google ad: Google's click id for that ad, the time, the campaign, and whether the click led to your signup or a purchase. This is kept only while analytics are on for you (if you turn them off while signed out, it is deleted when you next sign in on this browser), and never when your browser sends Do Not Track or Global Privacy Control (see Google ads).

I keep this while you have an account. When you ask me to delete your account, I delete it. Billing records are kept for as long as tax law says they must be.

What we do not store

Card numbers. Stripe takes your payment, and we never see the card. We load no advertising script (no Google tag). Google and other ad companies set no cookies here. The site's fonts come from ManyCP itself, so your browser makes no requests to Google or any other font host. Analytics are described under Analytics, and you can turn them off there. What happens when you arrive from a Google ad is described under Google ads.

Who else sees it

  • Cloudflare hosts the site and the database, and sends our sign-in emails and the one notice when GitHub stops accepting your sign-in.
  • Stripe handles payments and invoices.
  • GitHub handles sign-in. When you submit to a list on GitHub, ManyCP opens the pull request from your account, so GitHub and the list's maintainers see it.
  • Anthropic writes the draft of your listing. When you add a server, ManyCP sends Claude the README of your repo, the tool list and the facts it detected (names, versions, package names, and the names of environment variables, never their values). ManyCP's browser extension also uses Claude. When you press Ask Claude what to do, ManyCP sends Anthropic that directory page's title, headings, box labels, button and link text and error messages, and a short preview of your listing. It never sends what you typed on the page. The extension asks by itself at most once per page, and only after you have used the button once. When a maintainer comments on your listing's pull request, ManyCP sends Claude that public thread and the pull request's changes to suggest a fix and a reply. Anthropic processes all of that under its commercial terms and data processing agreement.
  • PostHog measures how the site is used (see Analytics).
  • Google (Google Ads). If you arrived from a Google ad, ManyCP tells Google Ads when you then sign up or buy. Google Ads receives Google's own click id, the name of the conversion ("ManyCP signup" or "ManyCP purchase"), the time and, for a purchase, the amount and currency. It never receives your name, your email address or your account id. Google can connect this to the ad click it already knows about. This happens only while analytics are on for you, and never when your browser sends Do Not Track or Global Privacy Control. See Google ads.
  • The directories you submit to receive the listing details you send them: name, description, repo link and install command. That is public information.

We do not sell your data. We share one thing for advertising: when a click on one of ManyCP's Google ads leads to a signup or a purchase, Google Ads is told (see Google ads). That happens only while analytics are on for you, and never when your browser sends Do Not Track or Global Privacy Control. Analytics are on until you turn them off, except in the EU, the EEA, the United Kingdom and Switzerland, where we ask first. Cloudflare, Stripe, GitHub, Anthropic, PostHog and Google are US companies, so your data can leave your country. Where the law asks for a safeguard for that, it is the standard contractual clauses in each provider's data processing terms or, for a provider that has one, its certification under the EU-US Data Privacy Framework.

Why I may use your data

  • To run your account and your submissions, and to take payment: because you asked for the service (contract).
  • To keep the service safe, and to keep the activity log and the sign-in records that show who did what: my legitimate interest in a service that works and is not abused.
  • To keep billing records: because tax law requires it.
  • Analytics, in the EU, the EEA, the United Kingdom and Switzerland: your consent. Nothing is measured until you press "Sounds good", and you can withdraw it at any time, below.
  • Analytics anywhere else: my legitimate interest in finding what is broken and what people skip. You can turn it off at any time, below, and your browser's Do Not Track or Global Privacy Control signal turns it off for you.
  • Keeping Google's click id and telling Google Ads about a signup or purchase that followed a Google ad, in the EU, the EEA, the United Kingdom and Switzerland: your consent, the same "Sounds good" as analytics. Anywhere else: my legitimate interest in knowing whether my ads work. The analytics switch below turns it off, and Do Not Track or Global Privacy Control turn it off for you even if you switched analytics on.

Analytics

ManyCP uses PostHog to measure how the site is used, so I can find what is broken and what people skip. PostHog is our processor: it handles this data for us, under a data processing agreement, and does not use it for its own purposes. It is provided by PostHog Inc. and the data is stored in the United States. Your browser talks to ManyCP's own address for this (e.manycp.com), which passes it on to PostHog.

What is measured. The pages you view (the address without its query string, apart from the campaign tags of a link such as utm_source, and with account ids removed), clicks on links and buttons (which element, never its text), errors in your browser, how fast pages load, and your country and city. Passwords, email addresses, your name, API keys and tokens are never recorded: they are masked or blocked before anything leaves your browser. A link that leaves ManyCP (a pull request, an email link) is recorded without its address: the name of the site at most.

Your IP address. Your browser's request carries your IP address, and ManyCP passes it on so PostHog can work out your country and city. PostHog is set to discard the address once it has done that: it does not keep it with your events or your recordings. It is not used for anything else.

Session recordings. PostHog records a replay of how pages look and move, including the page's text and what you type into ordinary boxes such as a repo address or your listing, so I can see where people get stuck. Email addresses, your name and GitHub username, passwords, phone numbers, API keys, tokens, environment variables and install configs are replaced with placeholder characters in your browser before anything is sent. Images, hidden fields, password fields and anything marked private are not recorded at all. The owner's admin pages are never recorded.

If you are signed in, this activity is linked to your account by an internal id and your plan. It is not linked to your email address or your name.

Your choice. If you are in the EU, the EEA, the United Kingdom or Switzerland, or I cannot tell where you are, nothing is measured until you press "Sounds good". Everywhere else measuring starts when you arrive and you can turn it off at any time, below. If your browser sends Do Not Track or Global Privacy Control, analytics stay off unless you turn them on. You can change your mind at any time and it takes effect at once. Your yes also covers the Google ads tracking described below, except while your browser sends Do Not Track or Global Privacy Control. If you are in the EU, the EEA, the United Kingdom or Switzerland, or I cannot tell where you are, and said yes before this page mentioned Google ads, that yes does not cover it. The banner will ask you again, or you can turn analytics off and on here to say yes to both.

What is stored in your browser. While analytics are on:

  • PostHog keeps a random identifier in your browser's local storage and in two first-party cookies (named like ph_phc_…_posthog and ph_phc_…_posthog_cpm). They also hold the address of the first page you visited and the site you came from, with sign-in tokens and other sensitive parts of the address masked.
  • PostHog keeps a session id and a window id in your browser's session storage (ph_phc_… keys), which goes when you close the tab.
  • While you are signed in, mcp_analytics_identified in local storage holds your internal user id and plan, so a sign-out that reloads the page still resets the identifier.
  • mcp_analytics_auth_attempt in local storage holds the sign-in method and the time, for at most 30 minutes around a sign-in, so the page you land on can count the sign-in.

Your choice is kept in local storage too (mcp_analytics_consent). So is a note that your yes came after this page mentioned Google ads (mcp_analytics_ads_notice). Turning analytics off deletes all of the above except your choice, so I do not ask you again.

If you arrived from a Google ad, local storage also holds mcp_ad_click_sent. It has no click id in it. It only says that a click may be saved, so that ManyCP can delete it again if you turn analytics off. It is removed once the deletion is confirmed. When you turn analytics off, mcp_ad_click_withdrawn stays in local storage until a click saved against your account has been deleted too. That needs you to be signed in, so if you turn analytics off while signed out, it stays until you next sign in. It has no click id in it either.

How long. PostHog keeps session recordings for 30 days and events (page views, clicks, errors, speed) for 12 months, and then deletes them. To have what is recorded about you deleted sooner, email hello@manycp.com.

Your analytics choice is kept in this browser.

Google ads

I advertise ManyCP on Google Search. A link from one of those ads carries a click id from Google (named gclid, gbraid or wbraid) and campaign tags (utm_source and the like). This is how I learn whether an ad brought a signup or a purchase, so I can stop paying for the ones that did not.

What happens. If you arrive from a Google ad and analytics are on for you, ManyCP keeps that click id, the time and the campaign tags in one first-party cookie, mcp_ad_click, for up to 90 days. The next time you are signed in, ManyCP saves them against your account and deletes the cookie. If you then sign up, or later buy something, ManyCP tells Google Ads that the click led to it: the click id, the name of the conversion ("ManyCP signup" or "ManyCP purchase"), the time and, for a purchase, the amount and currency. That is all Google Ads receives. Google Ads does not receive your name, your email address, your account id or anything you typed, and I do not ask Google for anything about you in return. Google can connect what it receives to the ad click it already knows about.

What does not happen. No Google tag or any other advertising script runs on ManyCP. Google and other ad companies set no cookies here. The one cookie for ads, mcp_ad_click, is ManyCP's own, and it is used only to report ad conversions. ManyCP does not use this to show you ads, to follow you to other sites or to build a profile. Google uses the conversions it receives to measure and tune my ads. Google Ads fetches the list of conversions from ManyCP over HTTPS, with a password, on a schedule, so your browser never talks to Google for this. The click id never goes to PostHog.

When it stays off. If you are in the EU, the EEA, the United Kingdom or Switzerland, or I cannot tell where you are, nothing is kept until you press "Sounds good". A yes from before this page mentioned Google ads does not count. If your browser sends Global Privacy Control or Do Not Track, nothing is kept, even if you switched analytics on. If your browser starts sending either signal later, what is saved against your account is deleted the next time you are signed in on this browser. If you did not arrive from a Google ad, there is nothing to keep.

Taking it back. Turning analytics off (the buttons above) deletes the cookie and, if you are signed in, the click id and the conversions that are still saved against your account. It cannot recall what Google Ads already received. Otherwise I keep the click and its conversions with your account until you turn analytics off or delete your account. The list Google fetches shows only the conversions of the last 60 days. To have them removed sooner, email hello@manycp.com.

The free checker

The checker on the home page only reads public pages about the repo you type in. We do not need an account. Results are cached for a short time so the same check is fast the next time.

Browser extension

The ManyCP extension for Chrome stores a connection token on your device and sends it only to manycp.com, so ManyCP can show your servers and directories and record the ones you submitted. It receives your account email and your listing details from manycp.com and types them, including the contact email, into the directory form you have open, only when you press Start run, Next, Fill form or Fill this page. You decide whether to submit: it never presses a Submit, Publish or Pay button, never solves a captcha and never reads, types or stores a password.

When you press "I submitted it", it sends the address of that directory page (site and path, without the query string). When you press "Ask Claude what to do", it sends the structure of that one directory page (see Anthropic under Who else sees it): never a value you typed, a password, an email address, a link to another site or a query string, and nothing from the site's header, menu or footer. It works only on the directory sites it lists and on manycp.com. It does not read your browsing history.

Disconnecting in the extension ends its token on our servers. You can also remove the browser in ManyCP settings. Removing the extension deletes what it stored on your device. We do not sell this data.

Cookies

One session cookie keeps you signed in. Another short-lived cookie protects the GitHub sign-in step. If analytics are on, PostHog adds two first-party cookies with a random identifier (see Analytics above), and uses your browser's local and session storage. If you arrive from a Google ad while analytics are on, one more first-party cookie, mcp_ad_click, holds Google's click id, the time and the campaign tags for up to 90 days, or until you sign in (see Google ads). It is ManyCP's own cookie, used only to report which ad clicks led to a signup or a purchase. It is never set when your browser sends Do Not Track or Global Privacy Control. All of these cookies belong to manycp.com only. Google and other ad companies set no cookies here.

Your rights

Whatever country you are in, you can ask me to show you the data I hold about you, to correct it, to delete it, to limit how I use it, or to give it to you in a form you can take elsewhere. You can object to any use that rests on my legitimate interest, and you can withdraw your consent to analytics at any time (the buttons in the Analytics section above; it takes effect at once and does not change what happened before).

You can revoke ManyCP in your GitHub settings at any time, and delete API keys in Settings. To use any of the rights above, or to delete your account and everything stored about it, email hello@manycp.com. I will answer as soon as I can, and within 30 days.

If you think I have handled your data wrongly, you can complain to the data protection authority where you live: in the European Union your national authority, in the United Kingdom the Information Commissioner's Office (ico.org.uk), in Australia the Office of the Australian Information Commissioner (oaic.gov.au). I would like the chance to put it right first, so please write to me too.

Contact

Questions or requests: hello@manycp.com. I read every email.