- 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
173 lines
4.8 KiB
JSON
173 lines
4.8 KiB
JSON
{
|
|
"version": 1,
|
|
"connectors": [
|
|
{
|
|
"id": "gmail",
|
|
"name": "Gmail",
|
|
"type": "mcp_local",
|
|
"scope": "user",
|
|
"icon_small": "gmail/icon_sm.svg",
|
|
"icon_large": "gmail/icon_lg.svg",
|
|
"user_description": "Read, send, and manage Gmail emails via OAuth \u2014 full MCP integration with push notifications.",
|
|
"requires": [
|
|
"OAUTH",
|
|
"PYTHON"
|
|
],
|
|
"tags": [
|
|
"email",
|
|
"mcp",
|
|
"local",
|
|
"google"
|
|
],
|
|
"folder": "gmail",
|
|
"files": [
|
|
{
|
|
"path": "gmail_mcp_server.py",
|
|
"sha256": "a50d4da9621f7a4b092f4e3c5ae85dec5f466783372f78ca7e792046dc01c673",
|
|
"size": 46772
|
|
},
|
|
{
|
|
"path": "gmail_oauth_setup.py",
|
|
"sha256": "e488acb289c43a3e6d541140d254451ac5688c0014e8959619375b564afe8748",
|
|
"size": 3627
|
|
},
|
|
{
|
|
"path": "icon_lg.svg",
|
|
"sha256": "93c8d9c8dae96f0206e5ae3fcfe89dff3a08553ed48badf504a5abd09f5596b0",
|
|
"size": 254
|
|
},
|
|
{
|
|
"path": "icon_sm.svg",
|
|
"sha256": "029d7f5d81de6cf2b17bc60c878d465521c6817a313381bc71d625e93be19c8a",
|
|
"size": 251
|
|
},
|
|
{
|
|
"path": "requirements.txt",
|
|
"sha256": "3f659cc5e5f0543f132699b06ccf9016ffe9afb40f9df4d110e0445b8d20f63e",
|
|
"size": 82
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"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",
|
|
"type": "mcp_remote",
|
|
"scope": "global",
|
|
"icon_small": "tavily/icon_sm.png",
|
|
"icon_large": "tavily/icon_lg.png",
|
|
"user_description": "Web search API for LLMs \u2014 real-time results, news, and content extraction.",
|
|
"requires": [
|
|
"API_KEY"
|
|
],
|
|
"tags": [
|
|
"search",
|
|
"mcp",
|
|
"remote"
|
|
],
|
|
"folder": "tavily",
|
|
"files": [
|
|
{
|
|
"path": "icon_lg.png",
|
|
"sha256": "92962ea1d49f272665262d55ecdea929972d3efab5261fc6ffea632803fceaf8",
|
|
"size": 24264
|
|
},
|
|
{
|
|
"path": "icon_sm.png",
|
|
"sha256": "92962ea1d49f272665262d55ecdea929972d3efab5261fc6ffea632803fceaf8",
|
|
"size": 24264
|
|
},
|
|
{
|
|
"path": "verify.py",
|
|
"sha256": "35a4f3b518c79363893c0438b1932b68e2dc5b4b61303037984488f6967b73a4",
|
|
"size": 2057
|
|
}
|
|
]
|
|
}
|
|
]
|
|
} |