openplanter 0.1.2 → 0.2.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 (92) hide show
  1. package/dist/builder.d.ts.map +1 -1
  2. package/dist/builder.js +87 -5
  3. package/dist/builder.js.map +1 -1
  4. package/dist/credentials.d.ts.map +1 -1
  5. package/dist/credentials.js +4 -1
  6. package/dist/credentials.js.map +1 -1
  7. package/dist/engine.d.ts.map +1 -1
  8. package/dist/engine.js +5 -0
  9. package/dist/engine.js.map +1 -1
  10. package/dist/investigation-tools/advanced-analytics.d.ts +130 -0
  11. package/dist/investigation-tools/advanced-analytics.d.ts.map +1 -0
  12. package/dist/investigation-tools/advanced-analytics.js +340 -0
  13. package/dist/investigation-tools/advanced-analytics.js.map +1 -0
  14. package/dist/investigation-tools/blockchain-scanner.d.ts +83 -0
  15. package/dist/investigation-tools/blockchain-scanner.d.ts.map +1 -0
  16. package/dist/investigation-tools/blockchain-scanner.js +194 -0
  17. package/dist/investigation-tools/blockchain-scanner.js.map +1 -0
  18. package/dist/investigation-tools/crypto-ecosystem.d.ts +83 -0
  19. package/dist/investigation-tools/crypto-ecosystem.d.ts.map +1 -0
  20. package/dist/investigation-tools/crypto-ecosystem.js +124 -0
  21. package/dist/investigation-tools/crypto-ecosystem.js.map +1 -0
  22. package/dist/investigation-tools/dexscreener-pairs.d.ts +41 -0
  23. package/dist/investigation-tools/dexscreener-pairs.d.ts.map +1 -0
  24. package/dist/investigation-tools/dexscreener-pairs.js +60 -0
  25. package/dist/investigation-tools/dexscreener-pairs.js.map +1 -0
  26. package/dist/investigation-tools/document-processing.d.ts +78 -0
  27. package/dist/investigation-tools/document-processing.d.ts.map +1 -0
  28. package/dist/investigation-tools/document-processing.js +252 -0
  29. package/dist/investigation-tools/document-processing.js.map +1 -0
  30. package/dist/investigation-tools/dune-analytics.d.ts +47 -0
  31. package/dist/investigation-tools/dune-analytics.d.ts.map +1 -0
  32. package/dist/investigation-tools/dune-analytics.js +160 -0
  33. package/dist/investigation-tools/dune-analytics.js.map +1 -0
  34. package/dist/investigation-tools/global-registries.d.ts +86 -0
  35. package/dist/investigation-tools/global-registries.d.ts.map +1 -0
  36. package/dist/investigation-tools/global-registries.js +212 -0
  37. package/dist/investigation-tools/global-registries.js.map +1 -0
  38. package/dist/investigation-tools/government-records.d.ts +85 -0
  39. package/dist/investigation-tools/government-records.d.ts.map +1 -0
  40. package/dist/investigation-tools/government-records.js +170 -0
  41. package/dist/investigation-tools/government-records.js.map +1 -0
  42. package/dist/investigation-tools/index.d.ts +18 -0
  43. package/dist/investigation-tools/index.d.ts.map +1 -1
  44. package/dist/investigation-tools/index.js +19 -0
  45. package/dist/investigation-tools/index.js.map +1 -1
  46. package/dist/investigation-tools/investigation-automation.d.ts +144 -0
  47. package/dist/investigation-tools/investigation-automation.d.ts.map +1 -0
  48. package/dist/investigation-tools/investigation-automation.js +345 -0
  49. package/dist/investigation-tools/investigation-automation.js.map +1 -0
  50. package/dist/investigation-tools/monitoring-tools.d.ts +102 -0
  51. package/dist/investigation-tools/monitoring-tools.d.ts.map +1 -0
  52. package/dist/investigation-tools/monitoring-tools.js +214 -0
  53. package/dist/investigation-tools/monitoring-tools.js.map +1 -0
  54. package/dist/investigation-tools/political-finance.d.ts +114 -0
  55. package/dist/investigation-tools/political-finance.d.ts.map +1 -0
  56. package/dist/investigation-tools/political-finance.js +205 -0
  57. package/dist/investigation-tools/political-finance.js.map +1 -0
  58. package/dist/investigation-tools/polymarket-markets.d.ts +137 -0
  59. package/dist/investigation-tools/polymarket-markets.d.ts.map +1 -0
  60. package/dist/investigation-tools/polymarket-markets.js +287 -0
  61. package/dist/investigation-tools/polymarket-markets.js.map +1 -0
  62. package/dist/investigation-tools/prediction-markets.d.ts +52 -0
  63. package/dist/investigation-tools/prediction-markets.d.ts.map +1 -0
  64. package/dist/investigation-tools/prediction-markets.js +116 -0
  65. package/dist/investigation-tools/prediction-markets.js.map +1 -0
  66. package/dist/investigation-tools/sec-tools.d.ts +75 -0
  67. package/dist/investigation-tools/sec-tools.d.ts.map +1 -0
  68. package/dist/investigation-tools/sec-tools.js +192 -0
  69. package/dist/investigation-tools/sec-tools.js.map +1 -0
  70. package/dist/investigation-tools/shared-crypto.d.ts +50 -0
  71. package/dist/investigation-tools/shared-crypto.d.ts.map +1 -0
  72. package/dist/investigation-tools/shared-crypto.js +122 -0
  73. package/dist/investigation-tools/shared-crypto.js.map +1 -0
  74. package/dist/investigation-tools/social-intelligence.d.ts +91 -0
  75. package/dist/investigation-tools/social-intelligence.d.ts.map +1 -0
  76. package/dist/investigation-tools/social-intelligence.js +302 -0
  77. package/dist/investigation-tools/social-intelligence.js.map +1 -0
  78. package/dist/investigation-tools/tool-registry.d.ts +12 -0
  79. package/dist/investigation-tools/tool-registry.d.ts.map +1 -0
  80. package/dist/investigation-tools/tool-registry.js +399 -0
  81. package/dist/investigation-tools/tool-registry.js.map +1 -0
  82. package/dist/investigation-tools/wallet-clusterer.d.ts +28 -0
  83. package/dist/investigation-tools/wallet-clusterer.d.ts.map +1 -0
  84. package/dist/investigation-tools/wallet-clusterer.js +179 -0
  85. package/dist/investigation-tools/wallet-clusterer.js.map +1 -0
  86. package/dist/model.d.ts.map +1 -1
  87. package/dist/model.js +1 -1
  88. package/dist/model.js.map +1 -1
  89. package/dist/tool-defs.d.ts.map +1 -1
  90. package/dist/tool-defs.js +301 -0
  91. package/dist/tool-defs.js.map +1 -1
  92. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet-clusterer.js","sourceRoot":"","sources":["../../src/investigation-tools/wallet-clusterer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
package/dist/model.js CHANGED
@@ -1042,7 +1042,7 @@ export class ScriptedModel {
1042
1042
  }
1043
1043
  export class EchoFallbackModel {
1044
1044
  note;
1045
- constructor(note = 'No provider API keys configured. Set OpenAI/Anthropic/OpenRouter keys to use a live LLM.') {
1045
+ constructor(note = 'No provider API keys configured. Set OpenAI/Anthropic/OpenRouter/Cerebras/Grok keys to use a live LLM.') {
1046
1046
  this.note = note;
1047
1047
  }
1048
1048
  createConversation(systemPrompt, initialUserMessage) {
package/dist/model.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tool-defs.d.ts","sourceRoot":"","sources":["../src/tool-defs.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,eAAe,CAAC,CAAC;IAC1D,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAED,uDAAuD;AACvD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,UAAU,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,UAAU,GAAG,eAAe,CAAC;QACzC,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB,CAAC;CACH;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,UAAU,CAAC;CAC1B;AAMD,eAAO,MAAM,gBAAgB,EAAE,cAAc,EA06B5C,CAAC;AA2CF;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE;IAC7C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC,GAAG,cAAc,EAAE,CA4BnB;AAuFD,yEAAyE;AACzE,wBAAgB,eAAe,CAC7B,IAAI,CAAC,EAAE,cAAc,EAAE,EACvB,MAAM,UAAO,GACZ,UAAU,EAAE,CAuBd;AAED,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAChC,IAAI,CAAC,EAAE,cAAc,EAAE,GACtB,aAAa,EAAE,CAOjB"}
1
+ {"version":3,"file":"tool-defs.d.ts","sourceRoot":"","sources":["../src/tool-defs.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,eAAe,CAAC,CAAC;IAC1D,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAED,uDAAuD;AACvD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,UAAU,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,UAAU,GAAG,eAAe,CAAC;QACzC,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB,CAAC;CACH;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,UAAU,CAAC;CAC1B;AAMD,eAAO,MAAM,gBAAgB,EAAE,cAAc,EAmuC5C,CAAC;AA2CF;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE;IAC7C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC,GAAG,cAAc,EAAE,CA4BnB;AAuFD,yEAAyE;AACzE,wBAAgB,eAAe,CAC7B,IAAI,CAAC,EAAE,cAAc,EAAE,EACvB,MAAM,UAAO,GACZ,UAAU,EAAE,CAuBd;AAED,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAChC,IAAI,CAAC,EAAE,cAAc,EAAE,GACtB,aAAa,EAAE,CAOjB"}
package/dist/tool-defs.js CHANGED
@@ -870,6 +870,307 @@ export const TOOL_DEFINITIONS = [
870
870
  additionalProperties: false,
871
871
  },
872
872
  },
873
+ // -------------------------------------------------------------------------
874
+ // NEW: Polymarket & Prediction Markets
875
+ // -------------------------------------------------------------------------
876
+ {
877
+ name: "polymarket_markets_fetcher",
878
+ description: "Fetch active Polymarket prediction markets with categories, volumes, liquidity, and Yes/No prices.",
879
+ parameters: { type: "object", properties: { category: { type: "string", description: "Filter by category (politics/crypto/sports)." }, min_volume: { type: "number", description: "Minimum USD volume to include." }, limit: { type: "integer", description: "Max markets to return (default 50)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
880
+ },
881
+ {
882
+ name: "polymarket_leaderboard",
883
+ description: "Fetch Polymarket leaderboard showing top traders by PnL, volume, positions, and win rate.",
884
+ parameters: { type: "object", properties: { period: { type: "string", description: "Leaderboard period (monthly/weekly/all)." }, top_n: { type: "integer", description: "Number of leaders (default 20)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
885
+ },
886
+ {
887
+ name: "polymarket_whales",
888
+ description: "Track top Polymarket wallets by position size and PnL. Identify large-position holders.",
889
+ parameters: { type: "object", properties: { min_usd: { type: "number", description: "Minimum position size in USD (default 100000)." }, days_back: { type: "integer", description: "Lookback window in days." }, limit: { type: "integer", description: "Max whales to return." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
890
+ },
891
+ {
892
+ name: "polymarket_trades_history",
893
+ description: "Fetch trade/transaction history for a Polymarket market ID or wallet address.",
894
+ parameters: { type: "object", properties: { market_id: { type: "string", description: "Polymarket market/condition ID." }, wallet: { type: "string", description: "Wallet address to query trades for." }, limit: { type: "integer", description: "Max trades to return." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
895
+ },
896
+ {
897
+ name: "polymarket_resolutions",
898
+ description: "Fetch past resolved Polymarket markets with outcomes and top winners.",
899
+ parameters: { type: "object", properties: { date_from: { type: "string", description: "Filter resolutions after this ISO date." }, limit: { type: "integer", description: "Max resolutions." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
900
+ },
901
+ {
902
+ name: "polymarket_anomaly_scanner",
903
+ description: "Scan Polymarket for unusual volume spikes, odds shifts, liquidity drains, and late whale entries pre-resolution.",
904
+ parameters: { type: "object", properties: { category: { type: "string", description: "Category to scan." }, hours_back: { type: "integer", description: "Lookback hours." }, min_severity: { type: "string", enum: ["low", "medium", "high", "critical"], description: "Minimum severity to report." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
905
+ },
906
+ {
907
+ name: "kalshi_markets",
908
+ description: "Fetch active Kalshi regulated prediction markets with prices, volumes, and open interest.",
909
+ parameters: { type: "object", properties: { category: { type: "string", description: "Market category filter." }, status: { type: "string", description: "Market status (open/closed)." }, limit: { type: "integer", description: "Max markets." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
910
+ },
911
+ {
912
+ name: "predictit_markets",
913
+ description: "Fetch PredictIt political prediction markets with latest prices.",
914
+ parameters: { type: "object", properties: { category: { type: "string", description: "Category filter." }, limit: { type: "integer", description: "Max markets." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
915
+ },
916
+ {
917
+ name: "manifold_markets",
918
+ description: "Search Manifold Markets prediction platform for markets by term, sorted by liquidity or volume.",
919
+ parameters: { type: "object", properties: { term: { type: "string", description: "Search term." }, sort: { type: "string", description: "Sort by (liquidity/newest/most-traded)." }, limit: { type: "integer", description: "Max results." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
920
+ },
921
+ // -------------------------------------------------------------------------
922
+ // NEW: Blockchain / Crypto
923
+ // -------------------------------------------------------------------------
924
+ {
925
+ name: "dune_query_executor",
926
+ description: "Execute custom Dune Analytics SQL queries for any blockchain metrics. Supports query IDs or raw SQL.",
927
+ parameters: { type: "object", properties: { query_id: { type: "integer", description: "Dune query ID to execute." }, sql: { type: "string", description: "Raw SQL query (if no query_id)." }, parameters: { type: "object", description: "Query parameters as key-value pairs." }, api_key: { type: "string", description: "Dune API key (or set DUNE_API_KEY env var)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
928
+ },
929
+ {
930
+ name: "dune_polymarket",
931
+ description: "Execute pre-built Dune queries for Polymarket on-chain volume, traders, and market data.",
932
+ parameters: { type: "object", properties: { metric: { type: "string", description: "Metric type (volume/traders)." }, days_back: { type: "integer", description: "Lookback period in days." }, api_key: { type: "string", description: "Dune API key." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
933
+ },
934
+ {
935
+ name: "polygonscan_wallet",
936
+ description: "Fetch transactions, token transfers, balances, and labels for a Polygon wallet address (Polymarket chain).",
937
+ parameters: { type: "object", properties: { address: { type: "string", description: "Polygon wallet address (0x...)." }, api_key: { type: "string", description: "PolygonScan API key." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["address"], additionalProperties: false },
938
+ },
939
+ {
940
+ name: "etherscan_wallet",
941
+ description: "Fetch Ethereum wallet transactions, balances, and resolve ENS names/social profiles.",
942
+ parameters: { type: "object", properties: { address: { type: "string", description: "Ethereum wallet address." }, resolve_ens: { type: "boolean", description: "Resolve ENS name and socials (default true)." }, api_key: { type: "string", description: "Etherscan API key." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["address"], additionalProperties: false },
943
+ },
944
+ {
945
+ name: "blockchain_tx_tracer",
946
+ description: "Trace fund flows through blockchain transactions, following money across multiple hops.",
947
+ parameters: { type: "object", properties: { address: { type: "string", description: "Starting wallet address." }, direction: { type: "string", enum: ["outgoing", "incoming", "both"], description: "Trace direction." }, max_depth: { type: "integer", description: "Max hops to trace (1-5, default 3)." }, chain: { type: "string", description: "Blockchain (polygon/ethereum)." }, api_key: { type: "string", description: "Explorer API key." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["address"], additionalProperties: false },
948
+ },
949
+ {
950
+ name: "dexscreener_pairs",
951
+ description: "Fetch DEX liquidity, trading pairs, prices, and volumes from DexScreener.",
952
+ parameters: { type: "object", properties: { query: { type: "string", description: "Search term for pair/token." }, chain: { type: "string", description: "Blockchain filter." }, token_address: { type: "string", description: "Token contract address." }, pair_address: { type: "string", description: "DEX pair address." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
953
+ },
954
+ {
955
+ name: "wallet_clusterer",
956
+ description: "Cluster related blockchain wallets by shared counterparties, temporal patterns, and direct transfers.",
957
+ parameters: { type: "object", properties: { wallets: { type: "array", items: { type: "string" }, description: "List of wallet addresses to cluster." }, chain: { type: "string", description: "Blockchain (polygon/ethereum)." }, min_confidence: { type: "integer", description: "Minimum cluster confidence 0-100 (default 60)." }, api_key: { type: "string", description: "Explorer API key." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["wallets"], additionalProperties: false },
958
+ },
959
+ // -------------------------------------------------------------------------
960
+ // NEW: SEC / US Financial
961
+ // -------------------------------------------------------------------------
962
+ {
963
+ name: "sec_form4_parser",
964
+ description: "Parse SEC Form 4 insider trading filings from EDGAR. Returns filer, transaction details, shares, prices.",
965
+ parameters: { type: "object", properties: { ticker: { type: "string", description: "Company ticker symbol." }, cik: { type: "string", description: "SEC CIK number." }, filer_name: { type: "string", description: "Insider filer name to search." }, days_back: { type: "integer", description: "Lookback days (default 30)." }, limit: { type: "integer", description: "Max filings." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
966
+ },
967
+ {
968
+ name: "sec_edgar_filer",
969
+ description: "Search SEC EDGAR for company filings (10-K, 10-Q, 8-K, S-1, etc.) by name, ticker, or keyword.",
970
+ parameters: { type: "object", properties: { query: { type: "string", description: "Search query (company name/ticker)." }, form_type: { type: "string", description: "Filing form type filter (10-K, 8-K, etc.)." }, date_from: { type: "string", description: "Start date (YYYY-MM-DD)." }, date_to: { type: "string", description: "End date." }, limit: { type: "integer", description: "Max results." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["query"], additionalProperties: false },
971
+ },
972
+ {
973
+ name: "sec_whistleblower_awards",
974
+ description: "Fetch SEC whistleblower award announcements and amounts.",
975
+ parameters: { type: "object", properties: { year: { type: "integer", description: "Year to filter awards." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
976
+ },
977
+ // -------------------------------------------------------------------------
978
+ // NEW: Political Finance
979
+ // -------------------------------------------------------------------------
980
+ {
981
+ name: "fec_contributions",
982
+ description: "Search FEC campaign finance contributions by donor name, employer, committee, or candidate.",
983
+ parameters: { type: "object", properties: { contributor_name: { type: "string", description: "Contributor name to search." }, employer_name: { type: "string", description: "Employer name filter." }, committee_name: { type: "string", description: "Committee name." }, candidate_id: { type: "string", description: "FEC candidate ID." }, min_amount: { type: "number", description: "Minimum contribution amount." }, state: { type: "string", description: "Contributor state (2-letter)." }, api_key: { type: "string", description: "FEC API key." }, limit: { type: "integer", description: "Max results." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
984
+ },
985
+ {
986
+ name: "opensecrets_lobbying",
987
+ description: "Search OpenSecrets lobbying disclosure records by client, registrant, issue, or year.",
988
+ parameters: { type: "object", properties: { client_name: { type: "string", description: "Lobbying client name." }, registrant_name: { type: "string", description: "Lobbying firm name." }, issue: { type: "string", description: "Issue area filter." }, year: { type: "integer", description: "Year filter." }, api_key: { type: "string", description: "OpenSecrets API key." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
989
+ },
990
+ {
991
+ name: "congress_disclosures",
992
+ description: "Fetch US Congressional stock trading disclosures. Filter by member, ticker, chamber, or party.",
993
+ parameters: { type: "object", properties: { member_name: { type: "string", description: "Congress member name." }, ticker: { type: "string", description: "Stock ticker symbol." }, chamber: { type: "string", enum: ["House", "Senate"], description: "Chamber filter." }, party: { type: "string", description: "Party filter (D/R)." }, days_back: { type: "integer", description: "Lookback days (default 90)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
994
+ },
995
+ {
996
+ name: "political_donation_tracker",
997
+ description: "Track political donations across sources, linking donors to recipients with amounts and dates.",
998
+ parameters: { type: "object", properties: { donor_name: { type: "string", description: "Donor name to search." }, recipient_name: { type: "string", description: "Recipient name." }, country: { type: "string", description: "Country filter." }, min_amount: { type: "number", description: "Minimum donation." }, api_key: { type: "string", description: "FEC API key." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
999
+ },
1000
+ // -------------------------------------------------------------------------
1001
+ // NEW: Global Registries
1002
+ // -------------------------------------------------------------------------
1003
+ {
1004
+ name: "opencorporates_lookup",
1005
+ description: "Search the OpenCorporates global corporate registry for companies, officers, and filing data across 140+ jurisdictions.",
1006
+ parameters: { type: "object", properties: { query: { type: "string", description: "Company name to search." }, jurisdiction: { type: "string", description: "Jurisdiction code (au, us_ca, gb, etc.)." }, company_number: { type: "string", description: "Company registration number." }, api_key: { type: "string", description: "OpenCorporates API key." }, limit: { type: "integer", description: "Max results." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["query"], additionalProperties: false },
1007
+ },
1008
+ {
1009
+ name: "ofac_sanctions_checker",
1010
+ description: "Screen a person or entity name against the OFAC SDN sanctions list with fuzzy matching.",
1011
+ parameters: { type: "object", properties: { name: { type: "string", description: "Name to screen." }, entity_type: { type: "string", description: "Entity type (individual/organization)." }, country: { type: "string", description: "Country filter." }, threshold: { type: "integer", description: "Match score threshold 0-100 (default 85)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["name"], additionalProperties: false },
1012
+ },
1013
+ {
1014
+ name: "beneficial_ownership_tracer",
1015
+ description: "Trace beneficial ownership chains for a company, identifying ultimate beneficial owners through corporate registries.",
1016
+ parameters: { type: "object", properties: { company_name: { type: "string", description: "Company name to trace ownership for." }, jurisdiction: { type: "string", description: "Jurisdiction code." }, api_key: { type: "string", description: "OpenCorporates API key." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["company_name"], additionalProperties: false },
1017
+ },
1018
+ // -------------------------------------------------------------------------
1019
+ // NEW: Government Records
1020
+ // -------------------------------------------------------------------------
1021
+ {
1022
+ name: "us_court_docket",
1023
+ description: "Search US federal court dockets for cases by name, party, nature of suit, or date.",
1024
+ parameters: { type: "object", properties: { query: { type: "string", description: "Search query (case name, party, keyword)." }, court: { type: "string", description: "Court filter (e.g., S.D.N.Y.)." }, date_filed: { type: "string", description: "Filed after date (YYYY-MM-DD)." }, nature_of_suit: { type: "string", description: "Nature of suit filter." }, limit: { type: "integer", description: "Max results." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["query"], additionalProperties: false },
1025
+ },
1026
+ {
1027
+ name: "federal_contracts",
1028
+ description: "Search USASpending.gov for federal government contracts by recipient, agency, or keyword.",
1029
+ parameters: { type: "object", properties: { recipient_name: { type: "string", description: "Contract recipient name." }, awarding_agency: { type: "string", description: "Federal agency name." }, keyword: { type: "string", description: "Contract description keyword." }, min_amount: { type: "number", description: "Minimum award amount." }, fiscal_year: { type: "integer", description: "Fiscal year filter." }, limit: { type: "integer", description: "Max results." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
1030
+ },
1031
+ {
1032
+ name: "foia_request_builder",
1033
+ description: "Generate a properly formatted FOIA request letter for a specified federal agency and subject.",
1034
+ parameters: { type: "object", properties: { agency: { type: "string", description: "Target federal agency." }, subject: { type: "string", description: "Subject of the request." }, keywords: { type: "array", items: { type: "string" }, description: "Keywords for the records search." }, date_from: { type: "string", description: "Records date range start." }, date_to: { type: "string", description: "Records date range end." }, request_type: { type: "string", description: "Request type (standard/expedited)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["agency", "subject", "keywords"], additionalProperties: false },
1035
+ },
1036
+ // -------------------------------------------------------------------------
1037
+ // NEW: Social Intelligence
1038
+ // -------------------------------------------------------------------------
1039
+ {
1040
+ name: "twitter_market_mentions",
1041
+ description: "Search X/Twitter for market-related mentions, ticker sentiment, and rumor detection pre-event.",
1042
+ parameters: { type: "object", properties: { query: { type: "string", description: "Search query." }, ticker: { type: "string", description: "Ticker symbol to track." }, days_back: { type: "integer", description: "Lookback days." }, limit: { type: "integer", description: "Max posts." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["query"], additionalProperties: false },
1043
+ },
1044
+ {
1045
+ name: "reddit_wsb_scanner",
1046
+ description: "Scan r/wallstreetbets and other subreddits for ticker mentions, DD posts, and sentiment.",
1047
+ parameters: { type: "object", properties: { ticker: { type: "string", description: "Ticker to search for." }, subreddit: { type: "string", description: "Subreddit (default: wallstreetbets)." }, sort: { type: "string", description: "Sort order (new/hot/top)." }, limit: { type: "integer", description: "Max posts." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
1048
+ },
1049
+ {
1050
+ name: "discord_channel_scraper",
1051
+ description: "Scrape crypto Discord channels for alpha calls, whale alerts, and insider tips.",
1052
+ parameters: { type: "object", properties: { server_id: { type: "string", description: "Discord server ID." }, channel_id: { type: "string", description: "Discord channel ID." }, keyword: { type: "string", description: "Keyword filter." }, limit: { type: "integer", description: "Max messages." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
1053
+ },
1054
+ {
1055
+ name: "telegram_channel_monitor",
1056
+ description: "Monitor public Telegram channels for market signals, whale alerts, and rumor detection.",
1057
+ parameters: { type: "object", properties: { channel_name: { type: "string", description: "Telegram channel name (without @)." }, keyword: { type: "string", description: "Keyword filter." }, limit: { type: "integer", description: "Max messages." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["channel_name"], additionalProperties: false },
1058
+ },
1059
+ {
1060
+ name: "news_sentiment_fetcher",
1061
+ description: "Fetch and analyze news articles for sentiment, relevance scoring, and ticker extraction.",
1062
+ parameters: { type: "object", properties: { query: { type: "string", description: "News search query." }, ticker: { type: "string", description: "Associated ticker." }, days_back: { type: "integer", description: "Lookback days (default 7)." }, limit: { type: "integer", description: "Max articles." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["query"], additionalProperties: false },
1063
+ },
1064
+ {
1065
+ name: "substack_scraper",
1066
+ description: "Scrape Substack newsletters for investigation-relevant articles with sentiment analysis.",
1067
+ parameters: { type: "object", properties: { publication: { type: "string", description: "Substack publication name." }, keyword: { type: "string", description: "Keyword filter." }, limit: { type: "integer", description: "Max articles." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["publication"], additionalProperties: false },
1068
+ },
1069
+ // -------------------------------------------------------------------------
1070
+ // NEW: Advanced Analytics
1071
+ // -------------------------------------------------------------------------
1072
+ {
1073
+ name: "anomaly_detector_ts",
1074
+ description: "Detect anomalies in time series data using Z-score analysis. Flags spikes, drops, and outliers with severity.",
1075
+ parameters: { type: "object", properties: { values: { type: "array", items: { type: "number" }, description: "Numeric time series values." }, timestamps: { type: "array", items: { type: "string" }, description: "Optional timestamp labels." }, window: { type: "integer", description: "Rolling window size (default 20)." }, threshold: { type: "number", description: "Z-score threshold (default 2.5)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["values"], additionalProperties: false },
1076
+ },
1077
+ {
1078
+ name: "timeline_correlator",
1079
+ description: "Correlate events across timelines with lag analysis. Links trades to announcements with suspicion scoring.",
1080
+ parameters: { type: "object", properties: { source_events: { type: "array", items: { type: "object" }, description: "Source events [{id, type, date, description}]." }, target_events: { type: "array", items: { type: "object" }, description: "Target events [{id, type, date, description}]." }, window_days: { type: "integer", description: "Correlation window in days (default 14)." }, min_score: { type: "integer", description: "Minimum correlation score (default 50)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["source_events", "target_events"], additionalProperties: false },
1081
+ },
1082
+ {
1083
+ name: "network_centrality_analyzer",
1084
+ description: "Compute graph centrality metrics (degree, betweenness, closeness, PageRank) for investigation networks.",
1085
+ parameters: { type: "object", properties: { graph: { type: "object", description: "Graph with {nodes: [{id, label}], edges: [{source, target, weight}]}." }, top_n: { type: "integer", description: "Return top N nodes by PageRank." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["graph"], additionalProperties: false },
1086
+ },
1087
+ {
1088
+ name: "prediction_market_arbitrage",
1089
+ description: "Detect cross-platform arbitrage opportunities between prediction markets (Polymarket, Kalshi, PredictIt, Manifold).",
1090
+ parameters: { type: "object", properties: { markets: { type: "array", items: { type: "object" }, description: "Markets [{question, platform, yesPrice, noPrice, volume, liquidity}]." }, min_spread: { type: "number", description: "Minimum spread % to flag (default 3.0)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["markets"], additionalProperties: false },
1091
+ },
1092
+ // -------------------------------------------------------------------------
1093
+ // NEW: Document Processing
1094
+ // -------------------------------------------------------------------------
1095
+ {
1096
+ name: "pdf_filings_extractor",
1097
+ description: "Extract tables and structured data from SEC filing text. Parses tabular and sectional content.",
1098
+ parameters: { type: "object", properties: { text: { type: "string", description: "Filing text content to parse." }, source: { type: "string", description: "Source document name/URL." }, extract_tables: { type: "boolean", description: "Extract table structures (default true)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["text"], additionalProperties: false },
1099
+ },
1100
+ {
1101
+ name: "document_similarity_scorer",
1102
+ description: "Compute TF-IDF cosine similarity between documents. Identifies shared and divergent terms.",
1103
+ parameters: { type: "object", properties: { documents: { type: "array", items: { type: "object" }, description: "Documents [{name, text}]." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["documents"], additionalProperties: false },
1104
+ },
1105
+ {
1106
+ name: "sentiment_analyzer",
1107
+ description: "Analyze text for sentiment (bullish/bearish), named entities (persons, orgs, tickers, money), and rumor indicators.",
1108
+ parameters: { type: "object", properties: { text: { type: "string", description: "Text to analyze." }, extract_entities: { type: "boolean", description: "Extract named entities (default true)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["text"], additionalProperties: false },
1109
+ },
1110
+ // -------------------------------------------------------------------------
1111
+ // NEW: Investigation Automation
1112
+ // -------------------------------------------------------------------------
1113
+ {
1114
+ name: "cross_reference_engine",
1115
+ description: "Cross-reference entities from different data sources with fuzzy matching and structural comparison.",
1116
+ parameters: { type: "object", properties: { entities_a: { type: "array", items: { type: "object" }, description: "First entity set [{name, source, type, properties}]." }, entities_b: { type: "array", items: { type: "object" }, description: "Second entity set." }, threshold: { type: "integer", description: "Match score threshold 0-100 (default 75)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["entities_a", "entities_b"], additionalProperties: false },
1117
+ },
1118
+ {
1119
+ name: "insider_network_expander",
1120
+ description: "Auto-expand investigation networks by discovering new connections through graph traversal and metadata links.",
1121
+ parameters: { type: "object", properties: { entities: { type: "array", items: { type: "object" }, description: "Known entities [{name, type, connections}]." }, known_connections: { type: "array", items: { type: "object" }, description: "Known connections [{from, to, type}]." }, max_depth: { type: "integer", description: "Max expansion depth (default 2)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["entities", "known_connections"], additionalProperties: false },
1122
+ },
1123
+ {
1124
+ name: "compliance_risk_report",
1125
+ description: "Generate a structured compliance risk report from investigation findings with severity scoring and recommendations.",
1126
+ parameters: { type: "object", properties: { subject: { type: "string", description: "Investigation subject name." }, findings: { type: "array", items: { type: "object" }, description: "Findings [{category, description, severity, evidence}]." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["subject", "findings"], additionalProperties: false },
1127
+ },
1128
+ {
1129
+ name: "global_entity_resolver",
1130
+ description: "Fuzzy-match and resolve entities across jurisdictions (US/AU/EU) with identifier linking and confidence scoring.",
1131
+ parameters: { type: "object", properties: { entities: { type: "array", items: { type: "object" }, description: "Entities [{name, type, source, jurisdiction, identifiers}]." }, threshold: { type: "integer", description: "Match threshold 0-100 (default 80)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["entities"], additionalProperties: false },
1132
+ },
1133
+ {
1134
+ name: "jurisdiction_risk_scorer",
1135
+ description: "Score jurisdictions for financial crime risk using CPI, FATF status, tax haven status, and transparency metrics.",
1136
+ parameters: { type: "object", properties: { jurisdictions: { type: "array", items: { type: "string" }, description: "Jurisdiction codes (US, AU, KY, PA, VG, etc.)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["jurisdictions"], additionalProperties: false },
1137
+ },
1138
+ // -------------------------------------------------------------------------
1139
+ // NEW: Monitoring & Market Structure
1140
+ // -------------------------------------------------------------------------
1141
+ {
1142
+ name: "whale_alert_monitor",
1143
+ description: "Monitor large cryptocurrency transactions (whale alerts) across blockchains via Whale Alert API.",
1144
+ parameters: { type: "object", properties: { min_usd: { type: "number", description: "Minimum transaction value in USD (default 500000)." }, blockchain: { type: "string", description: "Blockchain filter (ethereum/polygon/bitcoin)." }, symbol: { type: "string", description: "Token symbol filter." }, limit: { type: "integer", description: "Max transactions." }, api_key: { type: "string", description: "Whale Alert API key." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
1145
+ },
1146
+ {
1147
+ name: "dark_pool_activity",
1148
+ description: "Fetch FINRA ATS dark pool trading data and short volume for a stock ticker.",
1149
+ parameters: { type: "object", properties: { ticker: { type: "string", description: "Stock ticker symbol." }, days_back: { type: "integer", description: "Lookback days." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["ticker"], additionalProperties: false },
1150
+ },
1151
+ {
1152
+ name: "corporate_filings_monitor",
1153
+ description: "Monitor SEC EDGAR for new corporate filings (8-K, Form 4, SC 13D) for a watchlist of tickers.",
1154
+ parameters: { type: "object", properties: { tickers: { type: "array", items: { type: "string" }, description: "Ticker symbols to monitor." }, form_types: { type: "array", items: { type: "string" }, description: "Filing types to watch (default: 8-K, 4, SC 13D)." }, days_back: { type: "integer", description: "Lookback days (default 7)." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["tickers"], additionalProperties: false },
1155
+ },
1156
+ {
1157
+ name: "real_estate_records",
1158
+ description: "Search public property records by owner name or address for asset investigation.",
1159
+ parameters: { type: "object", properties: { owner_name: { type: "string", description: "Property owner name." }, address: { type: "string", description: "Property address." }, state: { type: "string", description: "State filter." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
1160
+ },
1161
+ // -------------------------------------------------------------------------
1162
+ // NEW: Crypto Ecosystem
1163
+ // -------------------------------------------------------------------------
1164
+ {
1165
+ name: "gitcoin_grants_parser",
1166
+ description: "Parse Gitcoin grants data including funding amounts, contributors, and project categories.",
1167
+ parameters: { type: "object", properties: { query: { type: "string", description: "Search query for grants." }, round_id: { type: "string", description: "Gitcoin round ID." }, category: { type: "string", description: "Grant category filter." }, limit: { type: "integer", description: "Max grants." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: [], additionalProperties: false },
1168
+ },
1169
+ {
1170
+ name: "evidence_graph_builder",
1171
+ description: "Build Neo4j-compatible evidence graphs from investigation entities and relationships. Generates Cypher queries.",
1172
+ parameters: { type: "object", properties: { investigation: { type: "string", description: "Investigation name/ID." }, nodes: { type: "array", items: { type: "object" }, description: "Graph nodes [{id, label, type, properties, sources}]." }, edges: { type: "array", items: { type: "object" }, description: "Graph edges [{source, target, type, weight, evidence, confidence}]." }, generate_cypher: { type: "boolean", description: "Generate Neo4j Cypher CREATE statements." }, test: { type: "boolean", description: "Use embedded mock data." } }, required: ["investigation", "nodes", "edges"], additionalProperties: false },
1173
+ },
873
1174
  ];
874
1175
  // ---------------------------------------------------------------------------
875
1176
  // Internal sets