allmcps-server
Advanced tools
+31
-5
@@ -7,3 +7,3 @@ #!/usr/bin/env node | ||
| name: "allmcps-server", | ||
| version: "1.0.0", | ||
| version: "1.0.2", | ||
| }, { | ||
@@ -14,3 +14,7 @@ capabilities: { | ||
| }); | ||
| const DIRECTORY_API_URL = process.env.ALLMCPS_API_URL || "https://allmcps.com/api/submit"; | ||
| // The human-facing /api/submit requires a Turnstile CAPTCHA token that a headless | ||
| // agent has no way to solve. /api/v1/submit is the agent-facing counterpart: same | ||
| // insert path, no Turnstile, but it requires an email (for the claim/verify | ||
| // notification) since there's no browser session to fall back on. | ||
| const DIRECTORY_API_URL = process.env.ALLMCPS_API_URL || "https://allmcps.com/api/v1/submit"; | ||
| server.setRequestHandler(ListToolsRequestSchema, async () => { | ||
@@ -31,4 +35,8 @@ return { | ||
| type: "string", | ||
| description: "Optional. The name of the MCP server. If omitted, the directory will try to infer it from the GitHub repo.", | ||
| description: "The name of the MCP server.", | ||
| }, | ||
| email: { | ||
| type: "string", | ||
| description: "Email address for the submission confirmation and listing claim/verify link. Not published on the listing.", | ||
| }, | ||
| description: { | ||
@@ -43,3 +51,3 @@ type: "string", | ||
| }, | ||
| required: ["url"], | ||
| required: ["url", "name", "email"], | ||
| }, | ||
@@ -58,2 +66,8 @@ }, | ||
| } | ||
| if (!args.name) { | ||
| throw new Error("The 'name' argument is required."); | ||
| } | ||
| if (!args.email) { | ||
| throw new Error("The 'email' argument is required (used for the submission confirmation and claim link)."); | ||
| } | ||
| try { | ||
@@ -68,2 +82,3 @@ const response = await fetch(DIRECTORY_API_URL, { | ||
| name: args.name, | ||
| email: args.email, | ||
| description: args.description, | ||
@@ -85,2 +100,13 @@ category: args.category, | ||
| } | ||
| const lines = [ | ||
| `Successfully submitted "${args.name}" to AllMCPs.com!`, | ||
| `Message: ${data.message}`, | ||
| `The server is now in the 'pending' queue for review.`, | ||
| ]; | ||
| if (data.claim_url) { | ||
| lines.push(`\nClaim & verify this listing (get verified instantly by adding the badge below): ${data.claim_url}`); | ||
| } | ||
| if (data.badge_markdown) { | ||
| lines.push(`\nBadge markdown for your README:\n${data.badge_markdown}`); | ||
| } | ||
| return { | ||
@@ -90,3 +116,3 @@ content: [ | ||
| type: "text", | ||
| text: `Successfully submitted the MCP server to AllMCPs.com!\nMessage: ${data.message}\n\nThe server is now in the 'pending' queue for review.`, | ||
| text: lines.join("\n"), | ||
| }, | ||
@@ -93,0 +119,0 @@ ], |
+1
-1
| { | ||
| "name": "allmcps-server", | ||
| "version": "1.0.1", | ||
| "version": "1.0.2", | ||
| "description": "The official MCP server for AllMCPs.com - submit and manage tools directly from your AI.", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
+5
-2
@@ -29,7 +29,10 @@ # allmcps-server | ||
| | `url` | yes | GitHub repository URL or website of the MCP server | | ||
| | `name` | no | Server name (inferred from the repo if omitted) | | ||
| | `name` | yes | Server name | | ||
| | `email` | yes | Where the claim/verify link and submission confirmation are sent — not published on the listing | | ||
| | `description` | no | Short summary (pulled from the repo description if omitted) | | ||
| | `category` | no | e.g. `Database`, `File System`, `Web Search`, `Development` | | ||
| Submissions land in the `pending` review queue at [allmcps.com](https://allmcps.com). | ||
| Submissions land in the `pending` review queue at [allmcps.com](https://allmcps.com). The response | ||
| includes a `claim_url` and a ready-to-paste `badge_markdown` snippet — adding that badge to your | ||
| repo's README verifies the listing instantly instead of waiting on manual review. | ||
@@ -36,0 +39,0 @@ ## Related |
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
8800
20.32%134
24.07%42
7.69%