@gmpsignal/mcp-server 0.0.0-stage → 1.0.0

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.
Files changed (4) hide show
  1. package/README.md +44 -2
  2. package/bin/cli.mjs +85 -0
  3. package/index.mjs +120 -0
  4. package/package.json +52 -5
package/README.md CHANGED
@@ -1,3 +1,45 @@
1
- # Temporary Holding Version
1
+ # `gmpsignal-mcp` — Official MCP Server Launcher for GMPSignal's 40 Apify Intelligence APIs
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ Connect **40 production-grade JSON APIs & Apify Actors** by **[GMPSignal (`@gmpsignal`)](https://apify.com/gmpsignal)** directly into **Claude Desktop, Cursor, Windsurf, and MCP-compatible AI Agents** with a single command.
4
+
5
+ ---
6
+
7
+ ## Quick Usage
8
+
9
+ ### 1. Print Ready-to-Paste Claude Desktop / Cursor MCP Config
10
+ ```bash
11
+ npx gmpsignal-mcp --print-config --suite flagship
12
+ ```
13
+
14
+ ### 2. List All 40 Actors by Vertical Suite
15
+ ```bash
16
+ npx gmpsignal-mcp --list
17
+ ```
18
+
19
+ ### 3. Run Directly as an MCP Server in `claude_desktop_config.json` or `.cursor/mcp.json`
20
+ ```json
21
+ {
22
+ "mcpServers": {
23
+ "gmpsignal": {
24
+ "command": "npx",
25
+ "args": ["-y", "gmpsignal-mcp", "--suite", "flagship"],
26
+ "env": {
27
+ "APIFY_TOKEN": "<YOUR_APIFY_API_TOKEN>"
28
+ }
29
+ }
30
+ }
31
+ }
32
+ ```
33
+
34
+ ---
35
+
36
+ ## Available `--suite` Presets
37
+
38
+ | Suite Name | Included Intelligence Tools |
39
+ |---|---|
40
+ | `flagship` *(Default)* | Top 11 global Actors: DEX Security Auditor, Crypto OrderBook Arbitrage, Multi-Chain Wallet AML, DeFi Yield/TVL, Polymarket/Kalshi Odds, B2B Tech-Stack & Contacts, Global Sanctions/GLEIF KYB, CISA KEV + EPSS Cyber, YC/GitHub Startup Radar, OpenAlex Scientific R&D, and Shopify Store Scraper |
41
+ | `crypto` | 6 Quantitative Crypto, DeFi, OrderBook, Wallet AML & Prediction Market Actors |
42
+ | `b2b` | 4 B2B Lead Enrichment, Shopify E-Commerce, VC Deal-Flow & European Jobs Actors |
43
+ | `compliance` | 8 KYB/Sanctions, CISA KEV Cybersecurity, OpenAlex R&D, SEC EDGAR, FDA & EU TED Actors |
44
+ | `regional` | 22 Seismic, Central Bank FX, Balkan Marketplace & Regional Mobility Actors |
45
+ | `all` | All 40 GMPSignal Apify Actors |
package/bin/cli.mjs ADDED
@@ -0,0 +1,85 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * @file cli.mjs
4
+ * @description Command-line launcher for the GMPSignal Model Context Protocol (MCP) Server.
5
+ * Spawns @apify/actors-mcp-server preconfigured with GMPSignal intelligence suites or prints
6
+ * ready-to-paste Claude Desktop / Cursor MCP configuration blocks.
7
+ */
8
+
9
+ import { spawn } from 'node:child_process';
10
+ import { GMPSIGNAL_SUITES, resolveActorsForSuite, buildMcpServerConfig } from '../index.mjs';
11
+
12
+ /**
13
+ * Parses command-line arguments passed to gmpsignal-mcp.
14
+ *
15
+ * @param {Array<string>} argv - Process argv slice.
16
+ * @returns {{ suite: string, customActors: string, listOnly: boolean, printConfig: boolean }} Parsed CLI flags.
17
+ */
18
+ function parseCliArgs(argv) {
19
+ let suite = 'flagship';
20
+ let customActors = '';
21
+ let listOnly = false;
22
+ let printConfig = false;
23
+
24
+ for (let i = 0; i < argv.length; i += 1) {
25
+ const arg = argv[i];
26
+ if (arg === '--suite' && argv[i + 1]) {
27
+ suite = argv[i + 1];
28
+ i += 1;
29
+ } else if (arg === '--actors' && argv[i + 1]) {
30
+ customActors = argv[i + 1];
31
+ i += 1;
32
+ } else if (arg === '--list') {
33
+ listOnly = true;
34
+ } else if (arg === '--print-config') {
35
+ printConfig = true;
36
+ }
37
+ }
38
+
39
+ return { suite, customActors, listOnly, printConfig };
40
+ }
41
+
42
+ /**
43
+ * Main CLI execution entry point.
44
+ */
45
+ function main() {
46
+ const { suite, customActors, listOnly, printConfig } = parseCliArgs(process.argv.slice(2));
47
+
48
+ if (listOnly) {
49
+ console.log('GMPSignal 40-Actor Intelligence Suites (https://apify.com/gmpsignal):');
50
+ for (const [suiteKey, actorList] of Object.entries(GMPSIGNAL_SUITES)) {
51
+ console.log(`\n[${suiteKey.toUpperCase()}] (${actorList.length} Actors):`);
52
+ for (const slug of actorList) {
53
+ console.log(` - ${slug}`);
54
+ }
55
+ }
56
+ return;
57
+ }
58
+
59
+ if (printConfig) {
60
+ const configObj = buildMcpServerConfig(suite);
61
+ console.log(JSON.stringify(configObj, null, 2));
62
+ return;
63
+ }
64
+
65
+ const actorsArg = customActors
66
+ ? customActors.trim()
67
+ : resolveActorsForSuite(suite).join(',');
68
+
69
+ const child = spawn(
70
+ 'npx',
71
+ ['-y', '@apify/actors-mcp-server', '--actors', actorsArg],
72
+ {
73
+ stdio: 'inherit',
74
+ env: {
75
+ ...process.env
76
+ }
77
+ }
78
+ );
79
+
80
+ child.on('exit', (code) => {
81
+ process.exitCode = code || 0;
82
+ });
83
+ }
84
+
85
+ main();
package/index.mjs ADDED
@@ -0,0 +1,120 @@
1
+ /**
2
+ * @file index.mjs
3
+ * @description Programmatic SDK and Suite Registry for the GMPSignal 40-Actor Enterprise
4
+ * Data & Model Context Protocol (MCP) Intelligence Suite on Apify.
5
+ */
6
+
7
+ /**
8
+ * Curated Actor suites organized by vertical use case.
9
+ * @type {Record<string, Array<string>>}
10
+ */
11
+ export const GMPSIGNAL_SUITES = {
12
+ flagship: [
13
+ 'gmpsignal/dex-token-scanner-security-auditor',
14
+ 'gmpsignal/crypto-orderbook-arbitrage-scanner',
15
+ 'gmpsignal/multichain-wallet-aml-risk-screener',
16
+ 'gmpsignal/defi-yield-tvl-stablecoin-monitor',
17
+ 'gmpsignal/prediction-markets-polymarket-kalshi-scanner',
18
+ 'gmpsignal/b2b-company-techstack-contacts-enricher',
19
+ 'gmpsignal/global-sanctions-pep-gleif-kyb-screener',
20
+ 'gmpsignal/cyber-cve-kev-epss-vulnerability-scanner',
21
+ 'gmpsignal/startup-vc-dealflow-yc-github-radar',
22
+ 'gmpsignal/academic-patent-research-citation-intelligence',
23
+ 'gmpsignal/shopify-global-store-products-scraper'
24
+ ],
25
+ crypto: [
26
+ 'gmpsignal/dex-token-scanner-security-auditor',
27
+ 'gmpsignal/crypto-orderbook-arbitrage-scanner',
28
+ 'gmpsignal/multichain-wallet-aml-risk-screener',
29
+ 'gmpsignal/defi-yield-tvl-stablecoin-monitor',
30
+ 'gmpsignal/prediction-markets-polymarket-kalshi-scanner',
31
+ 'gmpsignal/turkey-crypto-exchange-prices'
32
+ ],
33
+ b2b: [
34
+ 'gmpsignal/b2b-company-techstack-contacts-enricher',
35
+ 'gmpsignal/shopify-global-store-products-scraper',
36
+ 'gmpsignal/startup-vc-dealflow-yc-github-radar',
37
+ 'gmpsignal/german-jobs-scraper'
38
+ ],
39
+ compliance: [
40
+ 'gmpsignal/global-sanctions-pep-gleif-kyb-screener',
41
+ 'gmpsignal/cyber-cve-kev-epss-vulnerability-scanner',
42
+ 'gmpsignal/academic-patent-research-citation-intelligence',
43
+ 'gmpsignal/sec-edgar-filings',
44
+ 'gmpsignal/fda-warning-letters-scraper',
45
+ 'gmpsignal/fda-recalls-enforcement',
46
+ 'gmpsignal/eu-ted-tenders-scraper',
47
+ 'gmpsignal/global-product-recalls'
48
+ ],
49
+ regional: [
50
+ 'gmpsignal/earthquake-monitor-usgs-emsc-afad',
51
+ 'gmpsignal/europe-mediterranean-earthquakes-emsc-official-data',
52
+ 'gmpsignal/turkey-earthquakes-afad-official-data',
53
+ 'gmpsignal/islamic-prayer-times-worldwide-monthly-calendars',
54
+ 'gmpsignal/njuskalo-scraper',
55
+ 'gmpsignal/bolha-scraper',
56
+ 'gmpsignal/olx-ba-scraper',
57
+ 'gmpsignal/halooglasi-serbia-scraper',
58
+ 'gmpsignal/kupujemprodajem-scraper',
59
+ 'gmpsignal/pazar3-merrjep-balkan-scraper',
60
+ 'gmpsignal/tcmb-exchange-rates-official-turkish-central-bank-fx',
61
+ 'gmpsignal/turkey-gold-prices',
62
+ 'gmpsignal/turkey-weather-mgm-official',
63
+ 'gmpsignal/turkey-on-duty-pharmacies-nobetci-eczane-daily',
64
+ 'gmpsignal/turkey-fuel-prices-81-provinces-daily-benzin-motorin-lpg',
65
+ 'gmpsignal/turkey-car-rental-prices-city-airport-index',
66
+ 'gmpsignal/turkey-hotels-explorer-ratings-amenities',
67
+ 'gmpsignal/turkey-domestic-flight-prices',
68
+ 'gmpsignal/eksi-sozluk-scraper-entries-trending',
69
+ 'gmpsignal/turkey-greek-islands-ferry-schedules',
70
+ 'gmpsignal/turkey-bus-routes-prices',
71
+ 'gmpsignal/hepsiemlak-scraper-turkey-real-estate-listings'
72
+ ]
73
+ };
74
+
75
+ /**
76
+ * Resolves the unique list of GMPSignal Actor slugs for a given suite name.
77
+ *
78
+ * @param {string} suiteName - Suite identifier ('flagship', 'crypto', 'b2b', 'compliance', 'regional', or 'all').
79
+ * @returns {Array<string>} Array of full Apify Actor slugs (`gmpsignal/<slug>`).
80
+ */
81
+ export function resolveActorsForSuite(suiteName = 'flagship') {
82
+ const normalized = String(suiteName || 'flagship').toLowerCase().trim();
83
+ if (normalized === 'all') {
84
+ const unique = new Set([
85
+ ...GMPSIGNAL_SUITES.crypto,
86
+ ...GMPSIGNAL_SUITES.b2b,
87
+ ...GMPSIGNAL_SUITES.compliance,
88
+ ...GMPSIGNAL_SUITES.regional
89
+ ]);
90
+ return Array.from(unique);
91
+ }
92
+ return GMPSIGNAL_SUITES[normalized] || GMPSIGNAL_SUITES.flagship;
93
+ }
94
+
95
+ /**
96
+ * Builds a complete Claude Desktop / Cursor MCP configuration object.
97
+ *
98
+ * @param {string} suiteName - Target suite identifier.
99
+ * @param {string} apiTokenPlaceholder - Placeholder or actual Apify API token.
100
+ * @returns {Object} JSON-serializable MCP configuration object.
101
+ */
102
+ export function buildMcpServerConfig(suiteName = 'flagship', apiTokenPlaceholder = '<YOUR_APIFY_API_TOKEN>') {
103
+ const actors = resolveActorsForSuite(suiteName);
104
+ return {
105
+ mcpServers: {
106
+ [`gmpsignal-${suiteName}`]: {
107
+ command: 'npx',
108
+ args: [
109
+ '-y',
110
+ '@apify/actors-mcp-server',
111
+ '--actors',
112
+ actors.join(',')
113
+ ],
114
+ env: {
115
+ APIFY_TOKEN: apiTokenPlaceholder
116
+ }
117
+ }
118
+ }
119
+ };
120
+ }
package/package.json CHANGED
@@ -1,6 +1,53 @@
1
1
  {
2
- "name": "@gmpsignal/mcp-server",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
6
- }
2
+ "name": "@gmpsignal/mcp-server",
3
+ "version": "1.0.0",
4
+ "description": "Official @gmpsignal Model Context Protocol (MCP) Server & CLI Launcher for the 40-Actor Enterprise Data, Quantitative Crypto, Prediction Markets, B2B Enrichment, KYB/Sanctions, Cybersecurity & Regulatory Suite on Apify.",
5
+ "type": "module",
6
+ "main": "./index.mjs",
7
+ "bin": {
8
+ "gmpsignal-mcp-server": "./bin/cli.mjs",
9
+ "gmpsignal-mcp": "./bin/cli.mjs"
10
+ },
11
+ "files": [
12
+ "bin/",
13
+ "index.mjs",
14
+ "README.md"
15
+ ],
16
+ "scripts": {
17
+ "start": "node ./bin/cli.mjs",
18
+ "list": "node ./bin/cli.mjs --list",
19
+ "print-config": "node ./bin/cli.mjs --print-config"
20
+ },
21
+ "repository": {
22
+ "type": "git",
23
+ "url": "git+https://github.com/devburaq/gmpsignal-mcp-n8n-starter-kit.git"
24
+ },
25
+ "keywords": [
26
+ "mcp",
27
+ "mcp-server",
28
+ "model-context-protocol",
29
+ "apify",
30
+ "claude-desktop",
31
+ "cursor",
32
+ "ai-agents",
33
+ "dexscreener",
34
+ "polymarket",
35
+ "kalshi",
36
+ "b2b-enrichment",
37
+ "kyb-sanctions",
38
+ "cisa-kev",
39
+ "epss",
40
+ "shopify-scraper",
41
+ "sec-edgar",
42
+ "gmpsignal"
43
+ ],
44
+ "author": "GMPSignal <https://apify.com/gmpsignal>",
45
+ "license": "MIT",
46
+ "homepage": "https://github.com/devburaq/gmpsignal-mcp-n8n-starter-kit",
47
+ "publishConfig": {
48
+ "access": "public"
49
+ },
50
+ "engines": {
51
+ "node": ">=18.0.0"
52
+ }
53
+ }