dguiducci
c778450812
gcal/gmail: version bump (gcal 0.3.5, gmail 1.0.6) + regenerate index
2026-08-07 12:27:12 +01:00
dguiducci
371b7f75b5
gcal/gmail: update MCP servers + SKALD.md
2026-08-07 12:22:24 +01:00
dguiducci
c49c3fa74d
gmaps: fix env var injection — add mcp_config.env to pass GOOGLE_MAPS_API_KEY to subprocess
2026-07-25 09:09:17 +01:00
dguiducci
a13d0295ca
serpapi-flights: replace SVG icons with new PNG icons (sm 48x48, lg 96x96)
2026-07-23 17:45:35 +01:00
dguiducci
1094f11e34
context7: replace SVG icons with new PNG icons (sm 48x48, lg 96x96)
2026-07-23 17:42:46 +01:00
dguiducci
028d240ef2
fix: add missing requires field to 6 connector fragment.json and connector.json files
2026-07-22 23:28:46 +01:00
dguiducci
c151739021
docs: replace connector manifest guide with coding agent version, adapted for compile.py workflow
2026-07-22 23:26:52 +01:00
dguiducci
b97de67176
compile.py: rewrite all output messages and docstrings in English
2026-07-22 22:54:17 +01:00
dguiducci
ccab72c586
Nuovo sistema: index.json + fragment.json + compile.py (SHA-256 automatici)
2026-07-22 22:52:01 +01:00
dguiducci
5f254d9a96
Aggiunto connector Google Trends (mcp_local) — trendspyg, nessuna API key
2026-07-22 22:46:08 +01:00
dguiducci
9236f668ec
Fix llm_short_description: descrivere cosa fa l'MCP, non elencare i tool
2026-07-22 22:24:10 +01:00
dguiducci
3440890d11
Migliorate llm_short_description per tutti i connector — tool names espliciti
...
Ogni connector.json ora ha una llm_short_description che elenca i tool
specifici che espone, così l'LLM sa esattamente cosa attivare (lazy load).
SKALD.md: documentata criticità del campo llm_short_description
nel system prompt dell'LLM.
2026-07-22 22:21:52 +01:00
dguiducci
be1150fe51
Ridimensionate icone Google Drive (sm: 32px, lg: 64px)
2026-07-22 22:03:08 +01:00
dguiducci
607a059f10
Icona Google Drive ufficiale da Wikimedia (PNG)
2026-07-22 22:02:34 +01:00
dguiducci
d36c511132
Icona Google Maps ufficiale da Wikimedia
2026-07-22 22:01:12 +01:00
dguiducci
20fd017a9a
Icone: Gmail (SVG ufficiale) e Tavily (ridimensionata da upload utente)
2026-07-22 21:56:05 +01:00
dguiducci
2750e773d4
Aggiunto connector Google Maps (mcp_local)
...
- Script: gmaps_mcp_server.py (MCP stdio, JSON-RPC 2.0)
- 6 tools: status, directions, geocode, reverse_geocode, search_places, distance_matrix
- Auth: API key via env GOOGLE_MAPS_API_KEY
- Verify: test Geocoding API con probe 'Rome, IT' ✅
- Dipendenze: googlemaps>=4.10.0
- Icone SVG pin Google Maps
2026-07-22 21:46:43 +01:00
dguiducci
7f6477dd68
Aggiunto connector Context7 (mcp_remote)
...
- URL: https://mcp.context7.com/mcp , trasporto streamable-http
- Auth: none (endpoint pubblico, free tier)
- Verify: MCP initialize probe (testato ✅ )
- Icone SVG dal logo ufficiale Context7
Inoltre:
- Copiata docs/connector.manifest_guide.md da skald-circle/blueprint/
- Riferimento alla guida in SKALD.md
2026-07-22 21:40:12 +01:00
dguiducci
c495b98574
fix: ricalcolati sha256 di connector.json dopo version bump
...
Lo script aveva calcolato lo sha256 prima di scrivere il bump di
versione in connector.json, causando mismatch su tutti i 13 connector.
2026-07-21 23:55:42 +01:00
dguiducci
955b1ba069
feat: friendly tool names per MCP title field or manifest
...
- Aggiunto campo 'title' a tools/list in tutti gli script MCP locali
(Gmail, Gcal, Drive, Email, SSH, Weather, Wikipedia, WhatsApp)
- Aggiunto tools[]/display_name nel manifest per connector remoti/package
esterni (Firecrawl, HTTP Fetch, Exa, Tavily, SerpAPI Flights)
- Documentata convenzione e resolution order in SKALD.md
- Aggiornata manifest_guide.md per tools[] in connectors.json
- Bumped version e sha256 per tutti i 13 connector
2026-07-21 23:43:24 +01:00
dguiducci
ad0909b18d
Fix weather + wikipedia: add requires:["PYTHON"] so Skald installs httpx deps
...
Without requires:["PYTHON"] Skald skips pip install and httpx is
missing at runtime. Bump v2→v3 (3.0.0).
2026-07-20 17:20:39 +01:00
dguiducci
f1654d7d9d
Fix weather + wikipedia: add mcp_config (command+args) to manifest
...
Both connectors were missing the mcp_config block that the frontend requires
to install mcp_local connectors. Bump v1→v2 (2.0.0).
2026-07-19 17:25:40 +01:00
dguiducci
513483e81b
Add SerpAPI Flights connector: mcp_remote, flight search via Google Flights, verify.py with MCP initialize probe
2026-07-19 14:46:20 +01:00
dguiducci
e469f48b52
Add Google Drive connector: mcp_local, OAuth2 (same pattern as Gmail/GCal), 8 tools, verify with Drive API probe, SVG icons
2026-07-19 14:44:10 +01:00
dguiducci
e8ce11989d
SKALD.md: update connector table — add Exa, fill missing entries
2026-07-19 14:15:12 +01:00
dguiducci
341e4382c8
Add Exa connector: mcp_remote, neural web search, optional API key (free tier), verify.py with MCP initialize probe
2026-07-19 14:13:28 +01:00
dguiducci
b83b2feb0f
whatsapp: bump version 1→2 for update detection test (2.0.1→2.0.2)
2026-07-19 10:27:57 +01:00
dguiducci
7039816b73
Add versioning schema: version (int), version_string, version_release_date to all 10 connectors
...
- version: intero per-connector (parte da 1)
- version_string: semver ereditato (display only)
- version_release_date: ISO 8601 (display only)
- Campi identici in index (connectors.json) e manifest (connector.json)
- Aggiunto connector.json alle files[] di gmail, gcal, email, ssh, tavily
- Aggiornata documentazione in SKALD.md
2026-07-19 10:23:22 +01:00
dguiducci
dd88363d98
whatsapp: fix crypto.subtle polyfill for Node 18, bump to v2.0.1
2026-07-19 10:16:37 +01:00
dguiducci
4e428073df
Add WhatsApp connector v2 (Baileys, QR auth)
2026-07-19 10:08:12 +01:00
dguiducci
61248454e3
Add HTTP Fetch connector (npx mcp-fetch-server, no auth)
2026-07-18 21:54:32 +01:00
dguiducci
d02b5ce1df
Add HTTP Fetch connector (npx mcp-fetch-server, no auth)
2026-07-18 21:54:03 +01:00
dguiducci
36a026ff71
Add Firecrawl connector
...
- mcp_local via npx -y firecrawl-mcp
- API key come env FIRECRAWL_API_KEY (secret:true)
- Requires NODE runtime
- Verify via Node.js: Firecrawl scrape API probe
- Icona PNG fornita dall'utente
2026-07-18 21:52:30 +01:00
dguiducci
c3521c4ac0
Add Weather (Open-Meteo) and Wikipedia connectors
...
- weather/ — Python MCP server (copiato da skald/scripts), no auth, free API
- wikipedia/ — nuovo Python MCP server, Wikipedia API pubblica, no auth
- Entrambi: mcp_local, scope global, auth none, dipendenza httpx
- connectors.json: +2 connector (totale 7), auth:none aggiunto anche a SSH
2026-07-18 21:49:47 +01:00
dguiducci
9cc84fd8ff
Tavily: fix Italian -> English in docs and env descriptions
2026-07-17 22:27:52 +01:00
dguiducci
4954aad667
Adotta schema single-field env[] per Tavily: chiave API come voce env, auth semplificato, no requires
...
- Tavily: applicato manifest esatto con env[0] tavilyApiKey (secret:true),
auth: {type:api_key}, no requires, URL referenzia {SECRET:tavilyApiKey}
- Email: auth semplificato (type:password, no delivery), rimosso ENV da requires
- connectors.json: aggiunto auth compatto per Tavily ed Email, rimossi requires
API_KEY/ENV, fixati duplicati icon_lg.svg/verify.py residui
2026-07-17 22:21:39 +01:00
dguiducci
1502df04cf
SKALD.md: document deploy flow — branch main = release, script marketplace_deploy.sh
2026-07-17 22:03:58 +01:00
dguiducci
df4a18bd84
Fix duplicated entries in connectors.json index after purge
2026-07-17 22:01:03 +01:00
dguiducci
b1a3944fc8
Purge standalone OAuth setup for Gmail and Gcal
...
- Deleted gmail_oauth_setup.py and gcal_oauth_setup.py (Skald handles OAuth)
- Removed google-auth-oauthlib dependency from requirements.txt and connector.json
- Simplified setup_instructions to point to Skald's OAuth flow
- Updated docstrings and error messages in *_mcp_server.py (no more refs to
*_oauth_setup.py, point to Skald OAuth / env-var instead)
- connectors.json: removed oauth_setup.py from files[], updated sha256 hashes
2026-07-17 21:53:17 +01:00
dguiducci
46c1446eae
Switch Gmail and Gcal to env-var OAuth delivery pattern
...
auth.deliver changes from as:file to as:env:
- Gmail: GMAIL_CREDS_JSON env var (Google authorized_user JSON)
- Gcal: GCAL_CREDS_JSON env var
mcp_config.env removed entirely — Skald injects the env var at runtime,
no path on disk needed.
Server scripts updated:
- Check GMAIL_CREDS_JSON / GCAL_CREDS_JSON env var first
- Use Credentials.from_authorized_user_info() instead of
from_authorized_user_file()
- Fall back to file-based loading for standalone/legacy use
- _persist_creds only writes to disk when _creds_path is set
gcal/verify.py: support GCAL_CREDS_JSON env var with shared _check_api()
Docs (SKALD.md): updated examples, field table, connector table.
2026-07-17 21:00:58 +01:00
dguiducci
3a3bc4e1e9
Add Google Calendar connector (gcal)
...
- connector.json: OAuth Google, scope https://www.googleapis.com/auth/calendar
deliver: file/google_authorized_user → {secrets}/google_creds.json
mcp_config.env.GOOGLE_CREDS_PATH = {secrets}/google_creds.json
- verify.py: loads creds + API probe (calendarList.list)
- gcal_mcp_server.py: 8 tools (status, list_calendars, list_events,
get_event, create_event, update_event, delete_event, respond_to_event)
+ push notification polling
- icons: calendar SVG (48px + 96px)
- connectors.json index: gcal entry with auth + sha256
- SKALD.md: tabella connector + stato verify aggiornati
2026-07-17 20:53:38 +01:00
dguiducci
04912fccd9
SKALD.md: document OAuth deliver, auth in index, oauth/show.html
2026-07-17 20:48:54 +01:00
dguiducci
e9192d0439
gmail: add OAuth deliver block to manifest + index
...
connector.json: auth.deliver declares {as, format, path} so Skald
can write the Google authorized_user JSON without hardcoding paths.
connectors.json: gmail entry gains auth {type, provider, scopes}
for UI badge rendering without downloading the full manifest.
No changes to email, ssh, or tavily connectors.
2026-07-17 20:47:25 +01:00
dguiducci
48751ba91f
oauth/show.html: simpler layout, fix HTML escaping, no textarea
2026-07-17 13:46:27 +01:00
dguiducci
51d166017d
Add OAuth callback page (oauth/show.html)
...
Client-side page that captures the OAuth authorization code from
Google's redirect URL (?code=...) and displays it in a textarea
for copy-paste into Skald. Shows error details on failure.
Access at https://connectors.skaldagent.net/oauth/show.html
2026-07-17 13:43:14 +01:00
dguiducci
1caba6946c
Add Email (IMAP/SMTP) and SSH Remote Access connectors
...
- CLAUDE.md: developer guide for the marketplace repo
- email/: generic IMAP+SMTP connector (stdlib only, config via env)
- env[] array, auth.type: password, verify.py (IMAP+SMTP probe)
- ssh/: SSH Remote Access connector ported from Skald, modified
- ALIASES_FILE → ~/.ssh_aliases.json (was ./secrets/...)
- optional env[] (TTL/timeout tunables)
- auth.type: none (per-alias auth at runtime via elicitation)
- tavily/: restructured with env[] (tavilyApiKey), verify.py, auth block
- connectors.json: added email, ssh, and tavily verify.py entries
- SKALD.md: documented env[], verify, password auth, SSH connector
2026-07-16 22:29:33 +01:00
dguiducci
dedd09d7c7
Initial commit: marketplace structure with connectors.json and index.html
2026-07-16 18:49:01 +01:00