@aiwerk/mcp-bridge 2.1.4 → 2.5.1
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 +47 -7
- package/dist/src/index.d.ts +1 -1
- package/dist/src/mcp-router.d.ts +6 -3
- package/dist/src/mcp-router.js +37 -10
- package/dist/src/security.js +17 -16
- package/dist/src/standalone-server.d.ts +2 -0
- package/dist/src/standalone-server.js +20 -15
- package/dist/src/transport-base.d.ts +5 -2
- package/dist/src/transport-base.js +9 -2
- package/dist/src/transport-sse.d.ts +2 -2
- package/dist/src/transport-sse.js +3 -4
- package/dist/src/transport-stdio.js +10 -4
- package/dist/src/transport-streamable-http.d.ts +2 -2
- package/dist/src/transport-streamable-http.js +3 -4
- package/dist/src/types.d.ts +6 -1
- package/dist/src/types.js +5 -6
- package/package.json +2 -2
- package/scripts/validate-recipes.sh +13 -0
- package/servers/apify/recipe.json +20 -7
- package/servers/atlassian/recipe.json +20 -8
- package/servers/chrome-devtools/recipe.json +22 -8
- package/servers/github/recipe.json +20 -8
- package/servers/google-maps/recipe.json +25 -10
- package/servers/hetzner/recipe.json +23 -9
- package/servers/hostinger/recipe.json +24 -9
- package/servers/imap-email/README.md +37 -0
- package/servers/imap-email/recipe.json +47 -6
- package/servers/index.json +292 -71
- package/servers/linear/recipe.json +23 -9
- package/servers/miro/recipe.json +26 -9
- package/servers/notion/recipe.json +24 -9
- package/servers/stripe/recipe.json +26 -9
- package/servers/tavily/recipe.json +24 -9
- package/servers/todoist/recipe.json +24 -9
- package/servers/wise/recipe.json +23 -9
- package/servers/atlassian/config.json +0 -19
- package/servers/chrome-devtools/config.json +0 -16
- package/servers/github/config.json +0 -21
- package/servers/hostinger/config.json +0 -17
- package/servers/wise/config.json +0 -16
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aiwerk/mcp-bridge",
|
|
3
|
-
"version": "2.1
|
|
3
|
+
"version": "2.5.1",
|
|
4
4
|
"description": "Standalone MCP server that multiplexes multiple MCP servers into one interface",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/src/index.js",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"homepage": "https://github.com/AIWerk/mcp-bridge#readme",
|
|
27
27
|
"repository": {
|
|
28
28
|
"type": "git",
|
|
29
|
-
"url": "https://github.com/AIWerk/mcp-bridge"
|
|
29
|
+
"url": "git+https://github.com/AIWerk/mcp-bridge.git"
|
|
30
30
|
},
|
|
31
31
|
"keywords": [
|
|
32
32
|
"mcp",
|
|
@@ -15,6 +15,19 @@ RED='\033[0;31m'
|
|
|
15
15
|
GREEN='\033[0;32m'
|
|
16
16
|
NC='\033[0m'
|
|
17
17
|
|
|
18
|
+
echo "Validating recipe schema..."
|
|
19
|
+
echo ""
|
|
20
|
+
|
|
21
|
+
for recipe in "$SERVERS_DIR"/*/recipe.json; do
|
|
22
|
+
if ! npx tsx "$SCRIPT_DIR/../bin/validate-recipe.ts" "$recipe" >/dev/null; then
|
|
23
|
+
echo -e "${RED}❌ SCHEMA [$(basename "$(dirname "$recipe")")] $recipe${NC}"
|
|
24
|
+
ERRORS=$((ERRORS + 1))
|
|
25
|
+
else
|
|
26
|
+
echo -e "${GREEN}✓${NC} [$(basename "$(dirname "$recipe")")] schema valid"
|
|
27
|
+
fi
|
|
28
|
+
done
|
|
29
|
+
|
|
30
|
+
echo ""
|
|
18
31
|
echo "Validating recipe URLs..."
|
|
19
32
|
echo ""
|
|
20
33
|
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
"name": "Apify",
|
|
5
5
|
"description": "Web scraping and automation platform with 3000+ ready-made actors for data extraction, browser automation, and crawling",
|
|
6
6
|
"repository": "https://github.com/apify/apify-mcp-server",
|
|
7
|
-
|
|
8
7
|
"transports": [
|
|
9
8
|
{
|
|
10
9
|
"type": "streamable-http",
|
|
@@ -14,24 +13,38 @@
|
|
|
14
13
|
}
|
|
15
14
|
}
|
|
16
15
|
],
|
|
17
|
-
|
|
18
16
|
"auth": {
|
|
19
17
|
"required": true,
|
|
20
18
|
"type": "bearer",
|
|
21
|
-
"envVars": [
|
|
19
|
+
"envVars": [
|
|
20
|
+
"APIFY_TOKEN"
|
|
21
|
+
],
|
|
22
22
|
"credentialsUrl": "https://console.apify.com/settings/integrations",
|
|
23
23
|
"instructions": "Copy your API token from Apify Console > Settings > Integrations."
|
|
24
24
|
},
|
|
25
|
-
|
|
26
25
|
"metadata": {
|
|
27
26
|
"homepage": "https://apify.com/",
|
|
28
27
|
"author": "Apify",
|
|
29
|
-
"tags": [
|
|
28
|
+
"tags": [
|
|
29
|
+
"scraping",
|
|
30
|
+
"automation",
|
|
31
|
+
"web",
|
|
32
|
+
"crawling",
|
|
33
|
+
"actors"
|
|
34
|
+
],
|
|
30
35
|
"category": "automation",
|
|
31
36
|
"pricing": "byok",
|
|
32
|
-
"maturity": "stable"
|
|
37
|
+
"maturity": "stable",
|
|
38
|
+
"subcategory": "scraping",
|
|
39
|
+
"origin": "community",
|
|
40
|
+
"countries": [
|
|
41
|
+
"global"
|
|
42
|
+
],
|
|
43
|
+
"audience": "developer",
|
|
44
|
+
"selfHosted": false,
|
|
45
|
+
"sideEffects": "read-write",
|
|
46
|
+
"authSummary": "bearer"
|
|
33
47
|
},
|
|
34
|
-
|
|
35
48
|
"capabilities": {
|
|
36
49
|
"tools": true,
|
|
37
50
|
"resources": false,
|
|
@@ -4,12 +4,13 @@
|
|
|
4
4
|
"name": "Atlassian (Confluence + Jira)",
|
|
5
5
|
"description": "Confluence wiki and Jira project management — search, create, and update pages and issues",
|
|
6
6
|
"repository": "https://github.com/sooperset/mcp-atlassian",
|
|
7
|
-
|
|
8
7
|
"transports": [
|
|
9
8
|
{
|
|
10
9
|
"type": "stdio",
|
|
11
10
|
"command": "uvx",
|
|
12
|
-
"args": [
|
|
11
|
+
"args": [
|
|
12
|
+
"mcp-atlassian"
|
|
13
|
+
],
|
|
13
14
|
"env": {
|
|
14
15
|
"CONFLUENCE_URL": "${CONFLUENCE_URL}",
|
|
15
16
|
"CONFLUENCE_USERNAME": "${CONFLUENCE_USERNAME}",
|
|
@@ -20,7 +21,6 @@
|
|
|
20
21
|
}
|
|
21
22
|
}
|
|
22
23
|
],
|
|
23
|
-
|
|
24
24
|
"auth": {
|
|
25
25
|
"required": true,
|
|
26
26
|
"type": "api-key",
|
|
@@ -35,22 +35,34 @@
|
|
|
35
35
|
"credentialsUrl": "https://id.atlassian.com/manage-profile/security/api-tokens",
|
|
36
36
|
"instructions": "Create an API token at Atlassian account settings. Set CONFLUENCE_URL and JIRA_URL to your instance URLs (e.g., https://yourcompany.atlassian.net/wiki and https://yourcompany.atlassian.net)."
|
|
37
37
|
},
|
|
38
|
-
|
|
39
38
|
"install": {
|
|
40
39
|
"method": "uvx",
|
|
41
40
|
"package": "mcp-atlassian",
|
|
42
41
|
"version": "latest"
|
|
43
42
|
},
|
|
44
|
-
|
|
45
43
|
"metadata": {
|
|
46
44
|
"homepage": "https://github.com/sooperset/mcp-atlassian",
|
|
47
45
|
"author": "sooperset",
|
|
48
|
-
"tags": [
|
|
46
|
+
"tags": [
|
|
47
|
+
"wiki",
|
|
48
|
+
"project-management",
|
|
49
|
+
"confluence",
|
|
50
|
+
"jira",
|
|
51
|
+
"atlassian"
|
|
52
|
+
],
|
|
49
53
|
"category": "productivity",
|
|
50
54
|
"pricing": "byok",
|
|
51
|
-
"maturity": "stable"
|
|
55
|
+
"maturity": "stable",
|
|
56
|
+
"subcategory": "project-management",
|
|
57
|
+
"origin": "community",
|
|
58
|
+
"countries": [
|
|
59
|
+
"global"
|
|
60
|
+
],
|
|
61
|
+
"audience": "business",
|
|
62
|
+
"selfHosted": false,
|
|
63
|
+
"sideEffects": "read-write",
|
|
64
|
+
"authSummary": "api-key"
|
|
52
65
|
},
|
|
53
|
-
|
|
54
66
|
"capabilities": {
|
|
55
67
|
"tools": true,
|
|
56
68
|
"resources": false,
|
|
@@ -4,38 +4,52 @@
|
|
|
4
4
|
"name": "Chrome DevTools",
|
|
5
5
|
"description": "Control and inspect a live Chrome browser for automation, debugging, and performance analysis via the Chrome DevTools Protocol",
|
|
6
6
|
"repository": "https://github.com/ChromeDevTools/chrome-devtools-mcp",
|
|
7
|
-
|
|
8
7
|
"transports": [
|
|
9
8
|
{
|
|
10
9
|
"type": "stdio",
|
|
11
10
|
"command": "npx",
|
|
12
|
-
"args": [
|
|
11
|
+
"args": [
|
|
12
|
+
"-y",
|
|
13
|
+
"chrome-devtools-mcp@0.20.0",
|
|
14
|
+
"--autoConnect"
|
|
15
|
+
],
|
|
13
16
|
"env": {}
|
|
14
17
|
}
|
|
15
18
|
],
|
|
16
|
-
|
|
17
19
|
"auth": {
|
|
18
20
|
"required": false,
|
|
19
21
|
"type": "none",
|
|
20
22
|
"envVars": [],
|
|
21
23
|
"instructions": "Requires Chrome >= 144 with remote debugging enabled at chrome://inspect/#remote-debugging. Chrome will show a permission dialog on each connection."
|
|
22
24
|
},
|
|
23
|
-
|
|
24
25
|
"install": {
|
|
25
26
|
"method": "npx",
|
|
26
27
|
"package": "chrome-devtools-mcp",
|
|
27
28
|
"version": "0.20.0"
|
|
28
29
|
},
|
|
29
|
-
|
|
30
30
|
"metadata": {
|
|
31
31
|
"homepage": "https://github.com/ChromeDevTools/chrome-devtools-mcp",
|
|
32
32
|
"author": "ChromeDevTools",
|
|
33
|
-
"tags": [
|
|
33
|
+
"tags": [
|
|
34
|
+
"browser",
|
|
35
|
+
"debugging",
|
|
36
|
+
"automation",
|
|
37
|
+
"devtools",
|
|
38
|
+
"chrome"
|
|
39
|
+
],
|
|
34
40
|
"category": "development",
|
|
35
41
|
"pricing": "free",
|
|
36
|
-
"maturity": "stable"
|
|
42
|
+
"maturity": "stable",
|
|
43
|
+
"subcategory": "monitoring",
|
|
44
|
+
"origin": "community",
|
|
45
|
+
"countries": [
|
|
46
|
+
"global"
|
|
47
|
+
],
|
|
48
|
+
"audience": "developer",
|
|
49
|
+
"selfHosted": true,
|
|
50
|
+
"sideEffects": "read-only",
|
|
51
|
+
"authSummary": "none"
|
|
37
52
|
},
|
|
38
|
-
|
|
39
53
|
"capabilities": {
|
|
40
54
|
"tools": true,
|
|
41
55
|
"resources": false,
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
"name": "GitHub",
|
|
5
5
|
"description": "GitHub repository management — repos, issues, PRs, code search, and more via the official GitHub MCP server",
|
|
6
6
|
"repository": "https://github.com/github/github-mcp-server",
|
|
7
|
-
|
|
8
7
|
"transports": [
|
|
9
8
|
{
|
|
10
9
|
"type": "stdio",
|
|
@@ -22,30 +21,43 @@
|
|
|
22
21
|
}
|
|
23
22
|
}
|
|
24
23
|
],
|
|
25
|
-
|
|
26
24
|
"auth": {
|
|
27
25
|
"required": true,
|
|
28
26
|
"type": "api-key",
|
|
29
|
-
"envVars": [
|
|
27
|
+
"envVars": [
|
|
28
|
+
"GITHUB_MCP_TOKEN"
|
|
29
|
+
],
|
|
30
30
|
"credentialsUrl": "https://github.com/settings/tokens",
|
|
31
31
|
"instructions": "Create a Personal Access Token at GitHub Settings > Developer settings > Personal access tokens. Grant repo, issues, and pull_requests scopes."
|
|
32
32
|
},
|
|
33
|
-
|
|
34
33
|
"install": {
|
|
35
34
|
"method": "docker",
|
|
36
35
|
"image": "ghcr.io/github/github-mcp-server",
|
|
37
36
|
"version": "latest"
|
|
38
37
|
},
|
|
39
|
-
|
|
40
38
|
"metadata": {
|
|
41
39
|
"homepage": "https://github.com/github/github-mcp-server",
|
|
42
40
|
"author": "GitHub",
|
|
43
|
-
"tags": [
|
|
41
|
+
"tags": [
|
|
42
|
+
"git",
|
|
43
|
+
"repos",
|
|
44
|
+
"issues",
|
|
45
|
+
"pull-requests",
|
|
46
|
+
"code-review"
|
|
47
|
+
],
|
|
44
48
|
"category": "development",
|
|
45
49
|
"pricing": "byok",
|
|
46
|
-
"maturity": "stable"
|
|
50
|
+
"maturity": "stable",
|
|
51
|
+
"subcategory": "version-control",
|
|
52
|
+
"origin": "official",
|
|
53
|
+
"countries": [
|
|
54
|
+
"global"
|
|
55
|
+
],
|
|
56
|
+
"audience": "developer",
|
|
57
|
+
"selfHosted": false,
|
|
58
|
+
"sideEffects": "read-write",
|
|
59
|
+
"authSummary": "api-key"
|
|
47
60
|
},
|
|
48
|
-
|
|
49
61
|
"capabilities": {
|
|
50
62
|
"tools": true,
|
|
51
63
|
"resources": false,
|
|
@@ -4,41 +4,56 @@
|
|
|
4
4
|
"name": "Google Maps",
|
|
5
5
|
"description": "Google Maps integration for places search, geocoding, directions, and distance matrix via the official MCP server",
|
|
6
6
|
"repository": "https://github.com/modelcontextprotocol/servers",
|
|
7
|
-
|
|
8
7
|
"transports": [
|
|
9
8
|
{
|
|
10
9
|
"type": "stdio",
|
|
11
10
|
"command": "npx",
|
|
12
|
-
"args": [
|
|
11
|
+
"args": [
|
|
12
|
+
"-y",
|
|
13
|
+
"@modelcontextprotocol/server-google-maps"
|
|
14
|
+
],
|
|
13
15
|
"env": {
|
|
14
16
|
"GOOGLE_MAPS_API_KEY": "${GOOGLE_MAPS_API_KEY}"
|
|
15
17
|
}
|
|
16
18
|
}
|
|
17
19
|
],
|
|
18
|
-
|
|
19
20
|
"auth": {
|
|
20
21
|
"required": true,
|
|
21
22
|
"type": "api-key",
|
|
22
|
-
"envVars": [
|
|
23
|
+
"envVars": [
|
|
24
|
+
"GOOGLE_MAPS_API_KEY"
|
|
25
|
+
],
|
|
23
26
|
"credentialsUrl": "https://console.cloud.google.com/apis/credentials",
|
|
24
27
|
"instructions": "Create an API key in Google Cloud Console and enable the Maps JavaScript API, Places API, Geocoding API, and Directions API."
|
|
25
28
|
},
|
|
26
|
-
|
|
27
29
|
"install": {
|
|
28
30
|
"method": "npx",
|
|
29
31
|
"package": "@modelcontextprotocol/server-google-maps",
|
|
30
32
|
"version": "latest"
|
|
31
33
|
},
|
|
32
|
-
|
|
33
34
|
"metadata": {
|
|
34
35
|
"homepage": "https://developers.google.com/maps",
|
|
35
36
|
"author": "Anthropic / MCP Community",
|
|
36
|
-
"tags": [
|
|
37
|
-
|
|
37
|
+
"tags": [
|
|
38
|
+
"maps",
|
|
39
|
+
"geocoding",
|
|
40
|
+
"places",
|
|
41
|
+
"directions",
|
|
42
|
+
"navigation"
|
|
43
|
+
],
|
|
44
|
+
"category": "data",
|
|
38
45
|
"pricing": "byok",
|
|
39
|
-
"maturity": "stable"
|
|
46
|
+
"maturity": "stable",
|
|
47
|
+
"subcategory": "search-engine",
|
|
48
|
+
"origin": "official",
|
|
49
|
+
"countries": [
|
|
50
|
+
"global"
|
|
51
|
+
],
|
|
52
|
+
"audience": "general",
|
|
53
|
+
"selfHosted": false,
|
|
54
|
+
"sideEffects": "read-only",
|
|
55
|
+
"authSummary": "api-key"
|
|
40
56
|
},
|
|
41
|
-
|
|
42
57
|
"capabilities": {
|
|
43
58
|
"tools": true,
|
|
44
59
|
"resources": false,
|
|
@@ -4,42 +4,56 @@
|
|
|
4
4
|
"name": "Hetzner Cloud",
|
|
5
5
|
"description": "Manage Hetzner Cloud infrastructure — servers, networks, load balancers, volumes, firewalls, and more via the Hetzner Cloud API",
|
|
6
6
|
"repository": "https://github.com/dkruyt/mcp-hetzner",
|
|
7
|
-
|
|
8
7
|
"transports": [
|
|
9
8
|
{
|
|
10
9
|
"type": "stdio",
|
|
11
10
|
"command": "node",
|
|
12
|
-
"args": [
|
|
11
|
+
"args": [
|
|
12
|
+
"dist/index.js"
|
|
13
|
+
],
|
|
13
14
|
"env": {
|
|
14
15
|
"HCLOUD_TOKEN": "${HETZNER_API_TOKEN}"
|
|
15
16
|
}
|
|
16
17
|
}
|
|
17
18
|
],
|
|
18
|
-
|
|
19
19
|
"auth": {
|
|
20
20
|
"required": true,
|
|
21
21
|
"type": "api-key",
|
|
22
|
-
"envVars": [
|
|
22
|
+
"envVars": [
|
|
23
|
+
"HETZNER_API_TOKEN"
|
|
24
|
+
],
|
|
23
25
|
"credentialsUrl": "https://console.hetzner.cloud/",
|
|
24
26
|
"instructions": "Create an API token in the Hetzner Cloud Console under your project > Security > API Tokens."
|
|
25
27
|
},
|
|
26
|
-
|
|
27
28
|
"install": {
|
|
28
29
|
"method": "git",
|
|
29
30
|
"repository": "https://github.com/dkruyt/mcp-hetzner",
|
|
30
31
|
"buildCommand": "npm install && npm run build",
|
|
31
32
|
"version": "latest"
|
|
32
33
|
},
|
|
33
|
-
|
|
34
34
|
"metadata": {
|
|
35
35
|
"homepage": "https://www.hetzner.com/cloud",
|
|
36
36
|
"author": "dkruyt",
|
|
37
|
-
"tags": [
|
|
37
|
+
"tags": [
|
|
38
|
+
"cloud",
|
|
39
|
+
"infrastructure",
|
|
40
|
+
"servers",
|
|
41
|
+
"vps",
|
|
42
|
+
"hetzner"
|
|
43
|
+
],
|
|
38
44
|
"category": "infrastructure",
|
|
39
45
|
"pricing": "byok",
|
|
40
|
-
"maturity": "stable"
|
|
46
|
+
"maturity": "stable",
|
|
47
|
+
"subcategory": "cloud",
|
|
48
|
+
"origin": "community",
|
|
49
|
+
"countries": [
|
|
50
|
+
"EU"
|
|
51
|
+
],
|
|
52
|
+
"audience": "developer",
|
|
53
|
+
"selfHosted": false,
|
|
54
|
+
"sideEffects": "billing-impact",
|
|
55
|
+
"authSummary": "api-key"
|
|
41
56
|
},
|
|
42
|
-
|
|
43
57
|
"capabilities": {
|
|
44
58
|
"tools": true,
|
|
45
59
|
"resources": false,
|
|
@@ -3,41 +3,56 @@
|
|
|
3
3
|
"id": "hostinger",
|
|
4
4
|
"name": "Hostinger",
|
|
5
5
|
"description": "Web hosting management via Hostinger API — manage domains, hosting plans, email accounts, and website settings",
|
|
6
|
-
|
|
7
6
|
"transports": [
|
|
8
7
|
{
|
|
9
8
|
"type": "stdio",
|
|
10
9
|
"command": "npx",
|
|
11
|
-
"args": [
|
|
10
|
+
"args": [
|
|
11
|
+
"-y",
|
|
12
|
+
"@anthropic-pb/hostinger-mcp-server"
|
|
13
|
+
],
|
|
12
14
|
"env": {
|
|
13
15
|
"HOSTINGER_API_TOKEN": "${HOSTINGER_API_TOKEN}"
|
|
14
16
|
}
|
|
15
17
|
}
|
|
16
18
|
],
|
|
17
|
-
|
|
18
19
|
"auth": {
|
|
19
20
|
"required": true,
|
|
20
21
|
"type": "api-key",
|
|
21
|
-
"envVars": [
|
|
22
|
+
"envVars": [
|
|
23
|
+
"HOSTINGER_API_TOKEN"
|
|
24
|
+
],
|
|
22
25
|
"credentialsUrl": "https://hpanel.hostinger.com/api",
|
|
23
26
|
"instructions": "Generate an API token in the Hostinger hPanel under API section."
|
|
24
27
|
},
|
|
25
|
-
|
|
26
28
|
"install": {
|
|
27
29
|
"method": "npx",
|
|
28
30
|
"package": "@anthropic-pb/hostinger-mcp-server",
|
|
29
31
|
"version": "latest"
|
|
30
32
|
},
|
|
31
|
-
|
|
32
33
|
"metadata": {
|
|
33
34
|
"homepage": "https://www.hostinger.com/",
|
|
34
35
|
"author": "Anthropic / Hostinger",
|
|
35
|
-
"tags": [
|
|
36
|
+
"tags": [
|
|
37
|
+
"hosting",
|
|
38
|
+
"domains",
|
|
39
|
+
"web-hosting",
|
|
40
|
+
"email",
|
|
41
|
+
"dns"
|
|
42
|
+
],
|
|
36
43
|
"category": "infrastructure",
|
|
37
44
|
"pricing": "byok",
|
|
38
|
-
"maturity": "stable"
|
|
45
|
+
"maturity": "stable",
|
|
46
|
+
"subcategory": "cloud",
|
|
47
|
+
"origin": "community",
|
|
48
|
+
"countries": [
|
|
49
|
+
"global"
|
|
50
|
+
],
|
|
51
|
+
"audience": "developer",
|
|
52
|
+
"selfHosted": false,
|
|
53
|
+
"sideEffects": "billing-impact",
|
|
54
|
+
"authSummary": "api-key"
|
|
39
55
|
},
|
|
40
|
-
|
|
41
56
|
"capabilities": {
|
|
42
57
|
"tools": true,
|
|
43
58
|
"resources": false,
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# IMAP Email MCP Server
|
|
2
|
+
|
|
3
|
+
IMAP/SMTP email tools for any provider (list, read, search, move, flag, delete, send, reply, attachments).
|
|
4
|
+
|
|
5
|
+
## Requirements
|
|
6
|
+
- Node.js + npx
|
|
7
|
+
- IMAP credentials
|
|
8
|
+
- SMTP credentials (optional, for sending)
|
|
9
|
+
|
|
10
|
+
## Quick Install
|
|
11
|
+
|
|
12
|
+
### Linux / macOS
|
|
13
|
+
```bash
|
|
14
|
+
mcp-bridge install imap-email
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
### Windows (PowerShell)
|
|
18
|
+
```powershell
|
|
19
|
+
mcp-bridge install imap-email
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Required Environment Variables
|
|
23
|
+
- `IMAP_HOST`
|
|
24
|
+
- `IMAP_PORT`
|
|
25
|
+
- `IMAP_USER`
|
|
26
|
+
- `IMAP_PASS`
|
|
27
|
+
- `SMTP_HOST`
|
|
28
|
+
- `SMTP_PORT`
|
|
29
|
+
- `SMTP_SEND_ENABLED`
|
|
30
|
+
|
|
31
|
+
Set `SMTP_SEND_ENABLED=true` to enable sending/replying via SMTP.
|
|
32
|
+
|
|
33
|
+
## Remove
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
./install-server.sh imap-email --remove
|
|
37
|
+
```
|
|
@@ -6,19 +6,36 @@
|
|
|
6
6
|
"recipeVersion": "1.0.0",
|
|
7
7
|
"metadata": {
|
|
8
8
|
"category": "communication",
|
|
9
|
-
"tags": [
|
|
9
|
+
"tags": [
|
|
10
|
+
"email",
|
|
11
|
+
"imap",
|
|
12
|
+
"smtp",
|
|
13
|
+
"inbox"
|
|
14
|
+
],
|
|
10
15
|
"country": "global",
|
|
11
16
|
"language": "en",
|
|
12
17
|
"homepage": "https://github.com/AIWerk/mcp-server-imap",
|
|
13
18
|
"license": "MIT",
|
|
14
19
|
"pricing": "free",
|
|
15
|
-
"maturity": "beta"
|
|
20
|
+
"maturity": "beta",
|
|
21
|
+
"subcategory": "email",
|
|
22
|
+
"origin": "aiwerk",
|
|
23
|
+
"countries": [
|
|
24
|
+
"global"
|
|
25
|
+
],
|
|
26
|
+
"audience": "general",
|
|
27
|
+
"selfHosted": true,
|
|
28
|
+
"sideEffects": "read-write",
|
|
29
|
+
"authSummary": "api-key"
|
|
16
30
|
},
|
|
17
31
|
"transports": [
|
|
18
32
|
{
|
|
19
33
|
"type": "stdio",
|
|
20
34
|
"command": "npx",
|
|
21
|
-
"args": [
|
|
35
|
+
"args": [
|
|
36
|
+
"-y",
|
|
37
|
+
"@aiwerk/mcp-server-imap"
|
|
38
|
+
],
|
|
22
39
|
"env": {
|
|
23
40
|
"IMAP_HOST": "${IMAP_HOST}",
|
|
24
41
|
"IMAP_PORT": "${IMAP_PORT}",
|
|
@@ -33,13 +50,37 @@
|
|
|
33
50
|
"auth": {
|
|
34
51
|
"required": true,
|
|
35
52
|
"type": "api-key",
|
|
36
|
-
"envVars": [
|
|
37
|
-
|
|
53
|
+
"envVars": [
|
|
54
|
+
"IMAP_HOST",
|
|
55
|
+
"IMAP_PORT",
|
|
56
|
+
"IMAP_USER",
|
|
57
|
+
"IMAP_PASS",
|
|
58
|
+
"SMTP_HOST",
|
|
59
|
+
"SMTP_PORT",
|
|
60
|
+
"SMTP_SEND_ENABLED"
|
|
61
|
+
],
|
|
62
|
+
"instructions": "Set your IMAP server hostname, port, username (email), and password. For Gmail use an App Password. Set SMTP_SEND_ENABLED=true to enable email sending.",
|
|
38
63
|
"bootstrap": "env-only"
|
|
39
64
|
},
|
|
65
|
+
"install": {
|
|
66
|
+
"method": "npx",
|
|
67
|
+
"package": "@aiwerk/mcp-server-imap",
|
|
68
|
+
"version": "latest"
|
|
69
|
+
},
|
|
40
70
|
"capabilities": {
|
|
41
71
|
"toolCount": 10,
|
|
42
|
-
"toolNames": [
|
|
72
|
+
"toolNames": [
|
|
73
|
+
"email_list",
|
|
74
|
+
"email_read",
|
|
75
|
+
"email_search",
|
|
76
|
+
"email_folders",
|
|
77
|
+
"email_move",
|
|
78
|
+
"email_flag",
|
|
79
|
+
"email_delete",
|
|
80
|
+
"email_send",
|
|
81
|
+
"email_reply",
|
|
82
|
+
"email_attachment"
|
|
83
|
+
],
|
|
43
84
|
"sideEffects": "external-write"
|
|
44
85
|
}
|
|
45
86
|
}
|