mcp-bing-ads 1.0.13 → 1.0.14

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.
@@ -1 +1 @@
1
- {"sha":"eed8c3b","builtAt":"2026-04-09T23:02:20.083Z"}
1
+ {"sha":"48f1a23","builtAt":"2026-04-09T23:11:36.092Z"}
package/dist/index.js CHANGED
@@ -657,6 +657,11 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
657
657
  };
658
658
  }
659
659
  case "bing_ads_get_campaign_performance": {
660
+ // Future date validation
661
+ const today_cp = new Date().toISOString().slice(0, 10);
662
+ if (args?.start_date && args.start_date > today_cp) {
663
+ return { content: [{ type: "text", text: JSON.stringify(safeResponse({ error: `start_date "${args.start_date}" is in the future. Reports only cover historical data.` }, "getCampaignPerformance"), null, 2) }] };
664
+ }
660
665
  const client = resolveClient(args?.account_id);
661
666
  const result = await adsManager.getCampaignPerformance(client, {
662
667
  startDate: args?.start_date,
@@ -681,6 +686,11 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
681
686
  };
682
687
  }
683
688
  case "bing_ads_keyword_performance": {
689
+ // Future date validation
690
+ const today_bkp = new Date().toISOString().slice(0, 10);
691
+ if (args?.start_date && args.start_date > today_bkp) {
692
+ return { content: [{ type: "text", text: JSON.stringify(safeResponse({ error: `start_date "${args.start_date}" is in the future. Reports only cover historical data.` }, "keywordPerformance"), null, 2) }] };
693
+ }
684
694
  const client = resolveClient(args?.account_id);
685
695
  const result = await adsManager.getKeywordPerformance(client, {
686
696
  startDate: args?.start_date,
@@ -695,6 +705,11 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
695
705
  };
696
706
  }
697
707
  case "bing_ads_search_term_report": {
708
+ // Future date validation
709
+ const today_bstr = new Date().toISOString().slice(0, 10);
710
+ if (args?.start_date && args.start_date > today_bstr) {
711
+ return { content: [{ type: "text", text: JSON.stringify(safeResponse({ error: `start_date "${args.start_date}" is in the future. Reports only cover historical data.` }, "searchTermReport"), null, 2) }] };
712
+ }
698
713
  const client = resolveClient(args?.account_id);
699
714
  const result = await adsManager.getSearchTermReport(client, {
700
715
  startDate: args?.start_date,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mcp-bing-ads",
3
3
  "mcpName": "io.github.mharnett/bing-ads",
4
- "version": "1.0.13",
4
+ "version": "1.0.14",
5
5
  "description": "MCP server for Microsoft Advertising (Bing Ads) API with campaign, ad group, keyword, and performance reporting. First comprehensive open-source Bing Ads MCP.",
6
6
  "main": "dist/index.js",
7
7
  "bin": {