seo 0.4.2 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/PRIVACY.md CHANGED
@@ -1,13 +1,14 @@
1
1
  # Privacy policy
2
2
 
3
- Last updated: 15 October 2026
3
+ Last updated: 16 October 2026
4
4
 
5
5
  This policy covers the official `seo` command-line tool, library, MCP server,
6
6
  the hosted MCP server at seoskill.dev/mcp with its account page, and the
7
7
  seoskill.dev website.
8
8
 
9
- In short: the hosted MCP keeps only your linked Google accounts and any API
10
- keys you save, encrypted, so it can fetch your own data when you ask. It never
9
+ In short: the hosted MCP keeps only your linked Google and Bing accounts, any
10
+ API keys and Clicky sites you save and the machines you link, encrypted, so it can fetch your
11
+ own data when you ask. It never
11
12
  keeps your Search Console or analytics data, your reports or a log of your
12
13
  requests. The only thing kept about your use is an anonymous usage
13
14
  count (the event, report, agent, version and week).
@@ -32,8 +33,26 @@ Cloudflare D1 with only these things:
32
33
  - **Your linked Google accounts.** The email address of each Google account
33
34
  you link, and its refresh and access tokens. You grant read-only access to
34
35
  Search Console and Google Analytics.
36
+ - **Your linked Bing account, if you link one.** Its refresh and access
37
+ tokens, with read-only access to Bing Webmaster Tools, and a name made
38
+ from its sites.
35
39
  - **Your API keys, if you save them.** A DataForSEO login and password and an
36
40
  Ahrefs key.
41
+ - **Your Clicky sites, if you save them.** Each site's numeric site ID,
42
+ sitekey and domain. The domain comes from Clicky when you save the site,
43
+ so agents can name the site.
44
+ - **Your Clicky account login, if you save it.** Your Clicky username or
45
+ email and your Clicky password. Clicky has no other way to list an
46
+ account's sites, so the server keeps the password, encrypted, and uses it
47
+ only to read your Clicky site list: when you save it, and again when an
48
+ agent asks for a Clicky site that is not saved yet. The password is never
49
+ sent to a linked machine. Remove it on the account page, and change your
50
+ password at Clicky if you want to be sure it no longer works.
51
+ - **Machines you link with `seo login`.** A name such as "seo on
52
+ my-laptop", made from the machine's host name, and the date it was last
53
+ used. A linked machine asks for short-lived Google and Bing tokens and your
54
+ keys, and makes the Google and Bing requests itself. Nothing it fetches is
55
+ sent back.
37
56
 
38
57
  Every token and key is encrypted with a server key before it is written. The
39
58
  tokens are used only to fetch your own data when you or your agent ask for
@@ -43,17 +62,21 @@ The server keeps nothing else. It does not keep reports, Search Console
43
62
  or Google Analytics rows, lists of your sites, or the pages it checked.
44
63
  Request logs are turned off.
45
64
 
46
- - **Your data.** Search Console, Google Analytics and provider responses are
65
+ - **Your data.** Search Console, Google Analytics, Clicky and provider responses are
47
66
  fetched for each request, returned to your MCP client and not kept. Pages checked live are fetched for the request and not kept.
48
67
  - **API key headers.** You can send `X-DataForSEO-Login`,
49
68
  `X-DataForSEO-Password` and `X-Ahrefs-Key` headers instead of saving keys.
50
69
  A header wins over a saved key and is used for that request only.
51
70
  - **The account page.** At [seoskill.dev/account](https://seoskill.dev/account)
52
- you sign in with Google to see your linked accounts, add or remove them,
53
- and save or remove keys. It sets one essential cookie that holds your
71
+ you sign in with Google to see your linked accounts, keys and machines,
72
+ add or remove them, approve a `seo login`, and make a token for a cloud
73
+ agent. It sets one essential cookie that holds your
54
74
  encrypted person id for up to 30 days.
55
75
  - **Outside services.** Google answers its own requests. The provider you
56
- choose receives your research request under its own policy.
76
+ choose receives your research request under its own policy. Clicky
77
+ receives the site ID, sitekey, report types and dates for a Clicky request,
78
+ and your Clicky username and password when the server reads your Clicky
79
+ site list.
57
80
  Ahrefs receives the domains in research rows for the free Domain Rating
58
81
  column. Cloudflare runs the server, stores the encrypted data and handles
59
82
  the network requests.
@@ -64,7 +87,8 @@ Request logs are turned off.
64
87
  ### Delete your hosted data
65
88
 
66
89
  Sign in at [seoskill.dev/account](https://seoskill.dev/account) and choose
67
- **Delete everything**. It deletes your person id, linked accounts and keys,
90
+ **Delete everything**. It deletes your person id, linked accounts, keys,
91
+ Clicky sites and linked machines,
68
92
  and revokes the Google sign-ins. Your agents will ask you to sign in again if
69
93
  you use the hosted server later. You can also revoke SEO Skill in your
70
94
  [Google Account connections](https://myaccount.google.com/connections), which
@@ -100,7 +124,9 @@ including its Limited Use requirements.
100
124
 
101
125
  ## Clicky data the software can access
102
126
 
103
- Clicky access is optional. If you connect a site, the software sends its numeric
127
+ Clicky access is optional. The hosted server and a CLI linked with
128
+ `seo login` use the Clicky sites saved on your account, as described above.
129
+ If you connect a site on your machine, the software sends its numeric
104
130
  site ID, sitekey, requested report type, date range, and row limit directly to
105
131
  Clicky over HTTPS. It can read the traffic data that sitekey permits. The
106
132
  project maintainer does not receive the request or response.
@@ -118,8 +144,10 @@ save a Bing Webmaster API key with `seo providers bing connect`, or set
118
144
  `SEO_BING_API_KEY`. The key is saved in the system keychain when available,
119
145
  with a private local file fallback. Requests go directly from your machine to
120
146
  Bing over HTTPS and can read the sites that key can read. Run
121
- `seo providers bing disconnect` to remove the saved key. The hosted MCP
122
- server does not read Bing data.
147
+ `seo providers bing disconnect` to remove the saved key. A machine linked
148
+ with `seo login` can instead use the Bing account linked on seoskill.dev:
149
+ the server hands it a short-lived token and the machine calls Bing directly.
150
+ The hosted MCP server itself does not read Bing data.
123
151
 
124
152
  ## How Google data is protected
125
153
 
package/README.md CHANGED
@@ -209,18 +209,18 @@ seo analytics google properties
209
209
  seo ai-referrals --property 123456789
210
210
  ```
211
211
 
212
- Clicky is available through the
213
- [Clicky provider package](https://github.com/iannuttall/seoskill-clicky-provider).
214
- Install it, then connect a site with its Clicky site ID:
212
+ For Clicky, save your Clicky account login (every site) or one site's ID and
213
+ sitekey on your [account page](https://seoskill.dev/account#clicky). The
214
+ hosted server and a CLI linked with `seo login` both read them:
215
215
 
216
216
  ```sh
217
- seo providers install @seoskill/clicky-provider
218
- seo analytics clicky connect --site-id 12345
217
+ seo data --source clicky --site example.com
219
218
  ```
220
219
 
221
- The hosted server reads Google Analytics only. Clicky runs on your machine,
222
- and the hosted server tells your agent to use the CLI for it, as it does for
223
- crawls. For any other analytics tool, build a provider package with the
220
+ A site saved on your machine with the
221
+ [Clicky provider package](https://github.com/iannuttall/seoskill-clicky-provider)
222
+ (`seo analytics clicky connect --site-id 12345`) works too, by its site ID.
223
+ For any other analytics tool, build a provider package with the
224
224
  public provider SDK; the Clicky package is the example. Each source keeps its
225
225
  own metric names, so a Clicky visit is never relabelled as a Google Analytics
226
226
  user.