agentleFS
isiahw1isiahw1/claude-skills/skills/bing-webmaster-tools/SKILL.md

bing-webmaster-tools

Skill0 starsChanged 11 months agoApache-2.0View on GitHub

Query and analyze Bing Webmaster Tools data for SEO insights. Use when users want to analyze Bing search performance, submit URLs for indexing, manage sitemaps, analyze backlinks, or get crawl statistics. Complements Google Search Console for comprehensive search engine coverage.

  • Reads credentials

We split this skill into the rules it gives an agent

6 rules. About 0 are common, 3 are distinctive, and 3 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈3

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Use quota command to check remaining submissions

    line 80
  2. Very specific:

    Use the bing-webmaster-tools package (handles rate limiting automatically)

    line 299
  3. Distinctive:

    Check quota before large submission batches

    line 302
  4. Distinctive:

    "Invalid API key": Verify API key in Bing Webmaster Tools > Settings > API Access.

    line 327
  5. Distinctive:

    "Site not verified": Ensure site is verified in your Bing Webmaster account.

    line 329
  6. Very specific:

    "Quota exceeded": Check daily submission quota with url_submission.py quota.

    line 331

≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Bing Webmaster Tools

Query Bing Webmaster Tools API for search performance data, URL submission, sitemap management, backlink analysis, and crawl statistics.

Quick Start

Prerequisites

  • Bing Webmaster Tools account with verified site
  • API key from Bing Webmaster Tools > Settings > API Access
  • Site URL verified in Bing Webmaster Tools

First Query

# Using the bing-webmaster-tools package
import asyncio
from bing_webmaster_tools import BingWebmasterClient

async def main():
    async with BingWebmasterClient(api_key="YOUR_API_KEY") as client:
        # List all verified sites
        sites = await client.sites.get_sites()
        for site in sites:
            print(site.url)

        # Get traffic data
        traffic = await client.traffic.get_rank_and_traffic_stats("https://example.com")
        print(f"Clicks: {traffic.clicks}, Impressions: {traffic.impressions}")

asyncio.run(main())

Authentication Setup

See references/setup_guide.md for step-by-step API key creation.

API Capabilities Overview

This skill provides full access to all Bing Webmaster API endpoints:

APICapabilitiesScripts
Traffic StatsClicks, impressions, CTR, position by date/keywordsearch_analytics.py, top_pages.py
URL SubmissionSubmit single/batch URLs, check quotaurl_submission.py
SitemapsList, submit, delete, monitor statussitemaps.py
Crawl StatsCrawl activity, errors, pages per daycrawl_stats.py
BacklinksInbound links, anchor text, linking domainsbacklinks.py
Content BlocksBlocked resources affecting crawlcrawl_stats.py

Unique Bing Features (Not in GSC)

  • URL Submission - Submit URLs directly for immediate crawling
  • Backlink Data - Full inbound link analysis
  • Crawl Statistics - Detailed crawl activity and errors

Core Workflows

1. Submit URLs for Indexing

Submit new or updated URLs for immediate crawling:

# Submit a single URL
uv run python scripts/url_submission.py \
    --site "https://example.com" submit "https://example.com/new-page"

# Submit multiple URLs from file
uv run python scripts/url_submission.py \
    --site "https://example.com" batch urls.txt

# Check remaining quota
uv run python scripts/url_submission.py \
    --site "https://example.com" quota

Quota limits:

  • Daily quota per site (varies by site age/size)
  • Use quota command to check remaining submissions

2. Search Traffic Analysis

Analyze Bing search performance:

# Get traffic stats for last 30 days
uv run python scripts/search_analytics.py \
    --site "https://example.com" --days 30

# Get keyword performance
uv run python scripts/search_analytics.py \
    --site "https://example.com" --days 30 --breakdown keyword

# Export to CSV
uv run python scripts/search_analytics.py \
    --site "https://example.com" --days 30 --output traffic.csv

3. Best Performing Pages

Comprehensive top pages analysis with scoring:

# Full top pages report
uv run python scripts/top_pages.py \
    --site "https://example.com" --sort-by performance_score

# Compare to previous period
uv run python scripts/top_pages.py \
    --site "https://example.com" --compare-period

Features:

  • Performance scoring (0-100) based on clicks, impressions, CTR, position
  • Tier categorization (Star Performers, Solid Performers, Developing, Low Traffic)
  • Period-over-period comparison with change tracking

4. Sitemap Management

Full sitemap lifecycle management:

# List all sitemaps
uv run python scripts/sitemaps.py --site "https://example.com" list

# Submit a new sitemap
uv run python scripts/sitemaps.py --site "https://example.com" \
    submit "https://example.com/sitemap.xml"

# Check sitemap health
uv run python scripts/sitemaps.py --site "https://example.com" health

# Delete a sitemap
uv run python scripts/sitemaps.py --site "https://example.com" \
    delete "https://example.com/old-sitemap.xml"

5. Backlink Analysis (Bing-Specific)

Analyze inbound links to your site:

# Get all backlinks
uv run python scripts/backlinks.py --site "https://example.com" list

# Get backlinks to specific page
uv run python scripts/backlinks.py --site "https://example.com" \
    page "https://example.com/popular-page"

# Export backlink data
uv run python scripts/backlinks.py --site "https://example.com" \
    --output backlinks.csv

Data includes:

  • Source URL and domain
  • Anchor text
  • Link discovery date
  • Follow/nofollow status

6. Crawl Statistics (Bing-Specific)

Monitor Bingbot crawling activity:

# Get crawl stats overview
uv run python scripts/crawl_stats.py --site "https://example.com"

# Get crawl errors
uv run python scripts/crawl_stats.py --site "https://example.com" errors

# Get pages crawled per day
uv run python scripts/crawl_stats.py --site "https://example.com" daily

7. Content Optimization Opportunities

Find pages with improvement potential:

# Generate optimization report
uv run python scripts/analyze_opportunities.py \
    --site "https://example.com" --output opportunities.csv

Identifies:

  • High impressions, low CTR pages (title/description issues)
  • Ranking positions 11-20 (quick win potential)
  • Declining traffic pages

8. Comprehensive Report

Generate all-in-one SEO report:

# Full comprehensive report
uv run python scripts/comprehensive_report.py --site "https://example.com"

# Export to directory
uv run python scripts/comprehensive_report.py \
    --site "https://example.com" --output-dir ./bing_report/

Report includes:

  • Traffic summary with trends
  • Top pages and keywords
  • Sitemap health status
  • Crawl statistics
  • Backlink summary
  • Optimization opportunities
  • URL submission quota status

API Endpoints Reference

EndpointUse CaseRate Limit
GetRankAndTrafficStatsTraffic data (clicks, impressions, CTR)10/sec
GetQueryStatsKeyword-level performance10/sec
GetPageStatsPage-level performance10/sec
SubmitUrlSubmit single URL for indexingDaily quota
SubmitUrlBatchSubmit multiple URLsDaily quota
GetUrlSubmissionQuotaCheck remaining submissions10/sec
GetSitesList verified sites10/sec
AddSiteAdd new site10/sec
GetSitemapsList sitemaps10/sec
SubmitSitemapSubmit new sitemap10/sec
DeleteSitemapRemove sitemap10/sec
GetCrawlStatsCrawl activity data10/sec
GetLinkCountsBacklink counts10/sec
GetUrlInfoURL-specific data10/sec

See references/api_endpoints.md for complete API documentation.

Bundled Scripts

scripts/auth.py

Authentication utilities with API key support:

uv run python scripts/auth.py test

scripts/search_analytics.py

Query search performance data:

uv run python scripts/search_analytics.py --site "https://example.com/" --days 28

scripts/top_pages.py

Comprehensive top pages analysis with scoring:

uv run python scripts/top_pages.py --site "https://example.com/"

scripts/url_submission.py

Submit URLs for indexing:

uv run python scripts/url_submission.py --site "https://example.com/" submit "https://example.com/new"

scripts/sitemaps.py

Full sitemap management:

uv run python scripts/sitemaps.py --site "https://example.com/" list

scripts/crawl_stats.py

Crawl activity and errors:

uv run python scripts/crawl_stats.py --site "https://example.com/"

scripts/backlinks.py

Backlink analysis:

uv run python scripts/backlinks.py --site "https://example.com/"

scripts/analyze_opportunities.py

Generate content optimization report:

uv run python scripts/analyze_opportunities.py --site "https://example.com/"

scripts/comprehensive_report.py

All-in-one SEO report:

uv run python scripts/comprehensive_report.py --site "https://example.com/"

Rate Limits & Best Practices

Quotas:

  • 10 API calls per second (default)
  • URL submission has daily quota per site
  • Data typically has 2-3 day delay

Optimization tips:

  • Use the bing-webmaster-tools package (handles rate limiting automatically)
  • Cache API responses where possible
  • Batch URL submissions when possible
  • Check quota before large submission batches

Environment Variables

# Required
BING_WEBMASTER_API_KEY=your_api_key_here

# Optional (for convenience)
BING_SITE_URL=https://your-site.com

Comparison with Google Search Console

FeatureGSCBing
Auth methodOAuth 2.0 / Service AccountAPI Key (simpler)
URL InspectionRich results, mobile, AMPLimited crawl data
BacklinksNot availableFull backlink data ✓
URL SubmissionNot available (use IndexNow)Built-in batch submission ✓
Data freshness2-3 day delaySimilar delay
Rate limits200 QPM10 QPS

Common Issues

"Invalid API key": Verify API key in Bing Webmaster Tools > Settings > API Access.

"Site not verified": Ensure site is verified in your Bing Webmaster account.

"Quota exceeded": Check daily submission quota with url_submission.py quota.

Empty results: Data has 2-3 day delay. Query older dates.

Rate limited: Package handles this automatically with retry. If using raw API, implement exponential backoff.

See references/setup_guide.md for troubleshooting guide.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.