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
This commit is contained in:
@@ -48,6 +48,92 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "email",
|
||||
"name": "Email (IMAP/SMTP)",
|
||||
"type": "mcp_local",
|
||||
"scope": "user",
|
||||
"icon_small": "email/icon_sm.svg",
|
||||
"icon_large": "email/icon_lg.svg",
|
||||
"user_description": "Read, search, organize, and send email over IMAP/SMTP — any provider, no OAuth. Real-time push notifications on new mail.",
|
||||
"requires": [
|
||||
"PYTHON",
|
||||
"ENV"
|
||||
],
|
||||
"tags": [
|
||||
"email",
|
||||
"mcp",
|
||||
"local",
|
||||
"imap",
|
||||
"smtp"
|
||||
],
|
||||
"folder": "email",
|
||||
"files": [
|
||||
{
|
||||
"path": "email_mcp_server.py",
|
||||
"sha256": "e8e0efc7d07be0d743f73ae80b15c924a763e57fc19000b1ef1e98237465da0f",
|
||||
"size": 54522
|
||||
},
|
||||
{
|
||||
"path": "icon_lg.svg",
|
||||
"sha256": "94128b8ab2a3e701d042b6294c46bf0581152a3fe066e2fb415433e964f6935b",
|
||||
"size": 308
|
||||
},
|
||||
{
|
||||
"path": "icon_sm.svg",
|
||||
"sha256": "05b8d18f8233503bba4b6668dc6c83b2e5d65cb26cfc4901366e2fa43d90737a",
|
||||
"size": 306
|
||||
},
|
||||
{
|
||||
"path": "verify.py",
|
||||
"sha256": "5bd16cf4c1e2fc8b5b58083d12be0999c06dcc48ab52c3db3a531025771f6ff7",
|
||||
"size": 3395
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "ssh",
|
||||
"name": "SSH Remote Access",
|
||||
"type": "mcp_local",
|
||||
"scope": "user",
|
||||
"icon_small": "ssh/icon_sm.svg",
|
||||
"icon_large": "ssh/icon_lg.svg",
|
||||
"user_description": "Full SSH remote server access — files, commands, systemd, upload/download. Aliases manage host config; auth via key/agent or elicited password.",
|
||||
"requires": [
|
||||
"PYTHON"
|
||||
],
|
||||
"tags": [
|
||||
"ssh",
|
||||
"mcp",
|
||||
"local",
|
||||
"remote",
|
||||
"server",
|
||||
"sysadmin"
|
||||
],
|
||||
"folder": "ssh",
|
||||
"files": [
|
||||
{
|
||||
"path": "ssh_mcp_server.py",
|
||||
"sha256": "fbd7aa9dfad0da57f4b3d9d437c76fd978145c8364ed5fdfdfc3ba7ccfaf117b",
|
||||
"size": 49764
|
||||
},
|
||||
{
|
||||
"path": "requirements.txt",
|
||||
"sha256": "fa65d44e3d3219c79e5272ef7123352b5d71a35871ede721e66422c897b94e0e",
|
||||
"size": 14
|
||||
},
|
||||
{
|
||||
"path": "icon_sm.svg",
|
||||
"sha256": "57e9e5de2ec56548a8a3821bb29c7f75c8a02f45ae236c8ae3388bb0be9b4a81",
|
||||
"size": 254
|
||||
},
|
||||
{
|
||||
"path": "icon_lg.svg",
|
||||
"sha256": "84dc85685be0fff4cae1c2554b5fe958dd94455e182117c7470838b3cfca6ba1",
|
||||
"size": 432
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "tavily",
|
||||
"name": "Tavily",
|
||||
@@ -75,6 +161,11 @@
|
||||
"path": "icon_sm.png",
|
||||
"sha256": "92962ea1d49f272665262d55ecdea929972d3efab5261fc6ffea632803fceaf8",
|
||||
"size": 24264
|
||||
},
|
||||
{
|
||||
"path": "verify.py",
|
||||
"sha256": "35a4f3b518c79363893c0438b1932b68e2dc5b4b61303037984488f6967b73a4",
|
||||
"size": 2057
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user