@vernikr/gemini-mcp 0.10.1 → 0.12.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/README.md +49 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -11,6 +11,52 @@ massive-body chunked analysis with consolidation. Python core `gemini-mcp-gatewa
|
|
|
11
11
|
<https://aistudio.google.com/app/apikey> — several keys = several times the quota
|
|
12
12
|
(20 requests/day per key×model).
|
|
13
13
|
|
|
14
|
+
## Quick start
|
|
15
|
+
|
|
16
|
+
### If you're human
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
pnpm dlx @vernikr/gemini-mcp setup
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Answer the questions (pick **1 Simple** unless you run a server; keys: hidden paste,
|
|
23
|
+
a file, or skip). The wizard finishes with a short numbered checklist — paste one
|
|
24
|
+
JSON block into your MCP client (or let it write that for you: add
|
|
25
|
+
`--write-client freebuff|claude|cursor`), restart the client, send your agent the
|
|
26
|
+
printed verify prompt. Fleet (pick **2**): it also deploys your VPS end-to-end
|
|
27
|
+
(clone → provision → keys → healthcheck) and prints the final block with your real
|
|
28
|
+
host already inside.
|
|
29
|
+
|
|
30
|
+
### If you're an AI agent
|
|
31
|
+
|
|
32
|
+
One shot, no TTY, machine-readable. Exit code `0` + `"ok": true` = done; otherwise
|
|
33
|
+
every failure carries `error`/`deploy_error`/`clients_failed[].fix` naming the exact
|
|
34
|
+
remedy — apply it and re-run the same command (idempotent).
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
# direct (no server); keys from a file — never from shell history
|
|
38
|
+
npx -y @vernikr/gemini-mcp setup --backend direct \
|
|
39
|
+
--keys-file /abs/path/keys.txt --write-client freebuff --json
|
|
40
|
+
|
|
41
|
+
# fleet (shared-quota server); clones/provisions/health-checks by itself
|
|
42
|
+
npx -y @vernikr/gemini-mcp setup --backend router --vps-host <ip> \
|
|
43
|
+
[--vps-user root] [--projects-dir ~/projects] [--keys-file /abs/path/keys.txt] \
|
|
44
|
+
--write-client freebuff --json
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Fleet prerequisites you must verify first (each failure message tells you how):
|
|
48
|
+
`git ls-remote https://github.com/vernikr/gemini-mcp` succeeds (private repos —
|
|
49
|
+
GitHub auth), `ssh <user>@<ip> 'echo ok'` succeeds (key auth), bash+rsync present,
|
|
50
|
+
macOS/Linux. What is left for the human — relay exactly these two manual actions
|
|
51
|
+
from the JSON: **restart the MCP client fully**, then **send the agent the prompt in
|
|
52
|
+
`verify_prompt`** (tool `quota_status`, MCP server `gemini`).
|
|
53
|
+
|
|
54
|
+
Analyzing a FILE (agent): never read it yourself and never inline its contents into a
|
|
55
|
+
prompt. Call `file_upload_ticket(filename, size_bytes)` → HTTP PUT the raw bytes to
|
|
56
|
+
`upload_url` → `analyze_file(upload_id, task)`. Extraction (pandoc), chunking and quota
|
|
57
|
+
are server-side; `quota_status` repeats this recipe in its `file_flow` field, and raw
|
|
58
|
+
RTF/PDF/DOCX payloads in text tools fail fast with a `raw_document_inlined` fix.
|
|
59
|
+
|
|
14
60
|
## Wiring — 2 options
|
|
15
61
|
|
|
16
62
|
### A · Wizard (recommended): `setup`, then paste one JSON block
|
|
@@ -29,8 +75,9 @@ What it does — and what it does NOT:
|
|
|
29
75
|
side itself — clone/update repos, provision, push keys, healthcheck — and ends with
|
|
30
76
|
the same paste-once JSON (`--vps-host`, `--vps-user`, `--projects-dir` skip prompts);
|
|
31
77
|
- probes keys live (listModels — zero quota spent) and prints fingerprints, never keys;
|
|
32
|
-
- **prints** the ready `mcpServers` JSON for your client — it
|
|
33
|
-
client
|
|
78
|
+
- **prints** the ready `mcpServers` JSON for your client — paste it once, or pass
|
|
79
|
+
`--write-client freebuff|claude_desktop|cursor` and the wizard merges the `gemini`
|
|
80
|
+
entry into the client's config file itself (`.bak` backup kept).
|
|
34
81
|
|
|
35
82
|
After the wizard the client JSON needs no env/keys — the gateway auto-discovers
|
|
36
83
|
`~/.config/gemini-mcp/`:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vernikr/gemini-mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.0",
|
|
4
4
|
"description": "One-command Gemini free-tier MCP gateway: quota-aware model routing, massive-body chunked analysis, file ingest (RTF/DOCX→Markdown), async tickets. Thin bootstrap for the Python core gemini-mcp-gateway.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"gemini-mcp": "bin/gemini-mcp.js"
|