searchdock-cli 0.1.1__py3-none-any.whl

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.
@@ -0,0 +1 @@
1
+ __version__ = "0.1.1"
@@ -0,0 +1,186 @@
1
+ Metadata-Version: 2.4
2
+ Name: searchdock-cli
3
+ Version: 0.1.1
4
+ Summary: Google Search Console CLI with agent skills and MCP support. Requires Node.js 22+.
5
+ Author-email: Xplormity Collective <xplormityai@gmail.com>
6
+ License-Expression: MIT
7
+ Project-URL: Homepage, https://github.com/xplormityai/searchdock-cli
8
+ Project-URL: Documentation, https://github.com/xplormityai/searchdock-cli#readme
9
+ Project-URL: Issues, https://github.com/xplormityai/searchdock-cli/issues
10
+ Project-URL: Source, https://github.com/xplormityai/searchdock-cli
11
+ Keywords: google-search-console,seo,cli,mcp,search-analytics
12
+ Classifier: Environment :: Console
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Operating System :: OS Independent
15
+ Classifier: Topic :: Internet :: WWW/HTTP
16
+ Requires-Python: >=3.10
17
+ Description-Content-Type: text/markdown
18
+ License-File: LICENSE
19
+ Dynamic: license-file
20
+
21
+ # SearchDock CLI — Google Search Console CLI
22
+
23
+ Read Google Search Console analytics, inspect indexed URLs, and monitor sitemaps from your terminal or AI agent.
24
+
25
+ SearchDock is open source, runs locally, and requests read-only Google access. Use the same core through npm, Python, MCP, a Codex or Claude Code plugin, or a standalone agent skill. **Bing Webmaster Tools support is planned.**
26
+
27
+ ## Install
28
+
29
+ Node.js **22 or later** is required for every distribution.
30
+
31
+ Packages: [npm](https://www.npmjs.com/package/searchdock-cli) · [PyPI](https://pypi.org/project/searchdock-cli/).
32
+
33
+ ```sh
34
+ # npm
35
+ npm install --global searchdock-cli
36
+ searchdock --help
37
+
38
+ # No global installation
39
+ npx --yes searchdock-cli@0.1.1 --help
40
+
41
+ # Python; Node.js is still required
42
+ pipx install searchdock-cli
43
+ # Alternatively: python -m pip install searchdock-cli
44
+ ```
45
+
46
+ The Python package is a launcher containing the exact same JavaScript runtime. It has no separate Google implementation. If you install both packages, use `python -m searchdock_cli` to select the Python launcher explicitly.
47
+
48
+ To run from source:
49
+
50
+ ```sh
51
+ git clone https://github.com/xplormityai/searchdock-cli.git
52
+ cd searchdock-cli
53
+ npm ci
54
+ npm run build
55
+ node dist/cli.cjs --help
56
+ ```
57
+
58
+ ## Connect Google Search Console
59
+
60
+ Create a Google OAuth **Desktop app** client in your own Google Cloud project, enable the Search Console API, and download the client JSON. See [Google setup](https://github.com/xplormityai/searchdock-cli/blob/main/docs/google-setup.md) for the steps and testing-mode limits. No shared developer credentials are included.
61
+
62
+ ```sh
63
+ searchdock auth login --client-file /path/to/desktop-client.json
64
+ searchdock sites list
65
+ searchdock sites use sc-domain:example.com
66
+ searchdock auth status
67
+ ```
68
+
69
+ Google opens a local browser consent flow. SearchDock uses PKCE, validates the callback state, and listens only on `127.0.0.1`. It requests `webmasters.readonly` and keeps the refresh token in your operating system's per-user configuration directory, outside this repository. Credentials are stored as permission-protected local JSON, **not encrypted by SearchDock**. See [privacy](https://github.com/xplormityai/searchdock-cli/blob/main/docs/privacy.md).
70
+
71
+ ## Commands
72
+
73
+ ```sh
74
+ # Search performance and top queries
75
+ searchdock analytics --days 28
76
+ searchdock analytics --dimensions page --days 28 --json
77
+ searchdock analytics --dimensions date --start 2026-09-01 --end 2026-09-30
78
+
79
+ # Exact, case-insensitive brand queries
80
+ searchdock analytics --brand "Your Brand" --json
81
+
82
+ # Sitemaps and Google's indexed URL status
83
+ searchdock sitemaps
84
+ searchdock inspect https://example.com/
85
+
86
+ # Combined report, including only the URLs you specify
87
+ searchdock report --urls https://example.com/,https://example.com/about --json
88
+ searchdock report --output ./private-report.json
89
+
90
+ # Multiple accounts/sites
91
+ searchdock auth login --client-file /path/to/client.json --profile work
92
+ searchdock sites use https://example.com/ --profile work
93
+ searchdock analytics --profile work --site https://example.com/ --json
94
+
95
+ # Diagnostics and local credential removal
96
+ searchdock doctor
97
+ searchdock auth logout
98
+ ```
99
+
100
+ `--json` writes machine-readable results to stdout and errors to stderr with a nonzero exit status. `--output` saves JSON to a **new** file and refuses to overwrite an existing one. Keep private reports out of Git yourself. CSV is not yet supported. For URLs containing commas, use the MCP `urls` array or the JavaScript API for batch inspection.
101
+
102
+ Report windows default to 28 days ending three days before today in **Pacific Time**, to allow for Search Console processing. You can specify exact dates. Finalized data may still lag. Pagination supports up to 100,000 requested rows, but Google's API returns top rows and omits some anonymized query data. Missing rows do not prove zero demand; zero impressions make average position meaningless.
103
+
104
+ ## AI agents and MCP
105
+
106
+ SearchDock provides five read-only MCP tools: `searchdock_sites`, `searchdock_analytics`, `searchdock_sitemaps`, `searchdock_inspect`, and `searchdock_report`. Authenticate locally first; MCP tools do not start consent or change account settings.
107
+
108
+ Add this stdio server to any compatible MCP client:
109
+
110
+ ```json
111
+ {
112
+ "mcpServers": {
113
+ "searchdock": {
114
+ "command": "npx",
115
+ "args": ["--yes", "searchdock-cli@0.1.1", "mcp"]
116
+ }
117
+ }
118
+ }
119
+ ```
120
+
121
+ For a source checkout, set `command` to `node` and `args` to `["/absolute/path/searchdock-cli/dist/cli.cjs", "mcp"]`. Windows clients that launch `npx.cmd` through a shell may need `command: "cmd"` and `args: ["/c", "npx", "--yes", "searchdock-cli@0.1.1", "mcp"]`. Use your client's Windows configuration guidance.
122
+
123
+ Plugins use the same pinned npm version:
124
+
125
+ ```sh
126
+ # Codex CLI
127
+ codex plugin marketplace add xplormityai/searchdock-cli
128
+ codex plugin add searchdock@searchdock
129
+ ```
130
+
131
+ In Claude Code:
132
+
133
+ ```text
134
+ /plugin marketplace add xplormityai/searchdock-cli
135
+ /plugin install searchdock@searchdock
136
+ ```
137
+
138
+ For a standalone skill, copy [`skills/searchdock`](https://github.com/xplormityai/searchdock-cli/blob/main/skills/searchdock) into your agent's skills directory. Codex uses `~/.agents/skills/`; Claude Code uses `~/.claude/skills/`. Install the CLI separately. The setup skill is included in the plugin. The repository includes portable Agent Plugins, Codex and Claude manifests; local stdio plugins are not automatically listed in hosted plugin directories.
139
+
140
+ You can also install the skill with the [open skills installer](https://github.com/vercel-labs/skills):
141
+
142
+ ```sh
143
+ npx skills add xplormityai/searchdock-cli --skill searchdock
144
+ ```
145
+
146
+ [`server.json`](https://github.com/xplormityai/searchdock-cli/blob/main/server.json) prepares a listing in the MCP Registry under `io.github.xplormityai/searchdock-cli`. Registry publication requires the npm package to be live and namespace authentication; the metadata file alone does not create a listing.
147
+
148
+ ## What the Google API can and cannot tell you
149
+
150
+ | Available | Requires Search Console UI or an export |
151
+ | --- | --- |
152
+ | Clicks, impressions, CTR, average position | Request indexing |
153
+ | Top queries/pages and date/device/country breakdowns | Test a live URL |
154
+ | Exact brand-query performance | Full Page indexing exclusions table |
155
+ | Sitemap processing status | Manual actions and security issues |
156
+ | Google's indexed version of specific URLs | Guaranteed current ranking or indexing |
157
+
158
+ SearchDock's report flags returned sitemap errors/warnings, pending processing and non-PASS verdicts for the URLs you inspect. It is not a complete technical SEO audit, and it does not provide invented SEO/AEO/GEO scores.
159
+
160
+ ## JavaScript API
161
+
162
+ ```js
163
+ import { selectedContext } from 'searchdock-cli';
164
+
165
+ const { adapter, site } = await selectedContext({ profile: 'default' });
166
+ const result = await adapter.analytics(site, { days: 28, dimensions: ['page'] });
167
+ console.log(result.rows);
168
+ ```
169
+
170
+ The provider registry declares capabilities separately. Bing can be added as an adapter without changing the CLI, MCP or Python distribution model. Provider-specific differences must remain explicit. See [architecture](https://github.com/xplormityai/searchdock-cli/blob/main/docs/architecture.md).
171
+
172
+ ## Develop and release
173
+
174
+ ```sh
175
+ npm ci
176
+ npm run build
177
+ npm test
178
+ npm run check
179
+ python -m pip install build twine
180
+ npm run release:artifacts
181
+ python -m twine check dist/releases/searchdock_cli-0.1.1-py3-none-any.whl dist/releases/searchdock_cli-0.1.1.tar.gz
182
+ ```
183
+
184
+ [Release instructions](https://github.com/xplormityai/searchdock-cli/blob/main/docs/releasing.md) cover npm/PyPI accounts, OIDC trusted publishing, versioning and GitHub release artifacts. Package creation alone does not publish anything.
185
+
186
+ Built by **Xplormity Collective**. [MIT license](https://github.com/xplormityai/searchdock-cli/blob/main/LICENSE).
@@ -0,0 +1,11 @@
1
+ searchdock_cli/__init__.py,sha256=h86OIT3tLUqS-dCVwhgPn4kOUL0RbVfrpeeKKm2CU7U,1112
2
+ searchdock_cli/__main__.py,sha256=BHLi_-4Bx1gsZn-z6x7wECPn1YTxdc74y0deRea9FzY,45
3
+ searchdock_cli/_version.py,sha256=rnObPjuBcEStqSO0S6gsdS_ot8ITOQjVj_-P1LUUYpg,22
4
+ searchdock_cli/_core/THIRD_PARTY_NOTICES.md,sha256=qTN_1AgIbaIu3r-Anmo490He6LCyiNdupLZ5VamF0HM,9385
5
+ searchdock_cli/_core/cli.cjs,sha256=YiJjxSAoytE6Y1cEG-WzFkLGAYrFzmEXK_6GwcR7IwE,373958
6
+ searchdock_cli-0.1.1.dist-info/licenses/LICENSE,sha256=cyErkIQjY70rH_U2x97HnRMJbq5GPRFe5I23B2PROPY,1077
7
+ searchdock_cli-0.1.1.dist-info/METADATA,sha256=dIQu_oot3u91aUzmyjvzRQnIeq83LCMpiGMAbdzO040,8606
8
+ searchdock_cli-0.1.1.dist-info/WHEEL,sha256=YVMoNqKzERt-wjUZwJ33xBGAwnFl-4cqbYkTtWa4itE,91
9
+ searchdock_cli-0.1.1.dist-info/entry_points.txt,sha256=iUGO9GmzGgfxsAk96yPbbYCZEbprbhS-mKqnK_YjOG8,51
10
+ searchdock_cli-0.1.1.dist-info/top_level.txt,sha256=lZ3GQgXeM_oE3OzgvU_aiTNwC65wfLedrMh5G9IBo5I,15
11
+ searchdock_cli-0.1.1.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (84.0.0)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ searchdock = searchdock_cli:main
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Xplormity Collective
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1 @@
1
+ searchdock_cli