Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 47 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,24 @@
<br/>

<div align="center">
<h3>NEW: GEO & AI Brand Visibility Tools</h3>
<h3>NEW: Code Tool group - Your Coding Agent's Best Friend</h3>
<p><strong>Instant access to npm and PyPI package data, right from your AI agent.</strong></p>
<p>
Need the latest version of a package? Want to read its README without leaving your workflow?<br/>
The <b>Code</b> tool group gives coding agents structured, reliable package metadata on demand —<br/>
no scraping, no stale caches, just the data your agent needs to make smart dependency decisions.
</p>
<table>
<tr>
<td align="center"><b>npm</b><br/><sub>Package versions, READMEs, metadata &amp; dependencies</sub></td>
<td align="center"><b>PyPI</b><br/><sub>Python package info, versions &amp; project details</sub></td>
</tr>
</table>
<p><code>GROUPS="code"</code> &nbsp;·&nbsp; The go-to tool for Claude Code, Cursor, Windsurf &amp; any MCP-powered coding agent</p>
</div>

<div align="center">
<h3>GEO & AI Brand Visibility Tools</h3>
<p><strong>See how ChatGPT, Grok, and Perplexity talk about your brand.</strong></p>
<p>
Query leading LLMs directly from your agent and get back structured, markdown-formatted answers.<br/>
Expand Down Expand Up @@ -87,6 +104,7 @@ Built by [Bright Data](https://brightdata.com), the world's #1 web data platform
- 🛍️ **E-commerce Intelligence** - Monitor products, prices, and availability
- 📊 **Market Analysis** - Track competitors and industry trends
- 🤖 **AI Agents** - Build agents that can actually browse the web
- 💻 **Coding Agents** - Look up npm/PyPI packages, versions, and READMEs in real time
- 🧠 **GEO & Brand Visibility** - See how ChatGPT, Grok, and Perplexity perceive your brand
- 📝 **Content Creation** - Access up-to-date information for writing
- 🎓 **Academic Research** - Gather data from multiple sources efficiently
Expand Down Expand Up @@ -261,6 +279,12 @@ https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN_HERE
<code>web_data_grok_ai_insights</code>,
<code>web_data_perplexity_ai_insights</code></td>
</tr>
<tr>
<td><code>code</code></td>
<td>Package intelligence for coding agents</td>
<td><code>web_data_npm_package</code>,
<code>web_data_pypi_package</code></td>
</tr>
<tr>
<td><code>advanced_scraping</code></td>
<td>Batch and AI-assisted extraction helpers</td>
Expand Down Expand Up @@ -288,6 +312,26 @@ https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN_HERE
}
```

### Coding agent example (Claude Code / Cursor / Windsurf)

Give your coding agent real-time package intelligence — latest versions, READMEs,
dependencies, and metadata from npm and PyPI without scraping:

```json
{
"mcpServers": {
"Bright Data": {
"command": "npx",
"args": ["@brightdata/mcp"],
"env": {
"API_TOKEN": "<your-api-token-here>",
"GROUPS": "code"
}
}
}
}
```

---

## ✨ Features
Expand Down Expand Up @@ -317,6 +361,8 @@ https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN_HERE
✅ "Get today's weather forecast for New York"
✅ "What movies are releasing this week?"
✅ "What are the trending topics on Twitter today?"
✅ "What's the latest version of express on npm?"
✅ "Get the README for the langchain-brightdata PyPI package"
```

---
Expand Down
2 changes: 2 additions & 0 deletions assets/Tools.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,8 @@
|web_data_youtube_comments|Quickly read structured YouTube comments data. Requires a valid YouTube video URL and optional num_of_comments (default 10). Often faster and more reliable than scraping.|
|web_data_reddit_posts|Quickly read structured Reddit post data. Requires a valid Reddit post URL. Often faster and more reliable than scraping.|
|web_data_youtube_videos|Quickly read structured YouTube video metadata. Requires a valid YouTube video URL. Often faster and more reliable than scraping.|
|web_data_npm_package|Quickly read structured npm package data including latest version, README, dependencies, and metadata. Requires a valid npm package name (e.g., @brightdata/sdk). Your coding agent's go-to tool for package lookups.|
|web_data_pypi_package|Quickly read structured PyPI package data including latest version, README, dependencies, and metadata. Requires a valid PyPI package name (e.g., langchain-brightdata). Your coding agent's go-to tool for Python package lookups.|
|scraping_browser_navigate|Open or reuse a scraping-browser session and navigate to the provided URL, resetting tracked network requests.|
|scraping_browser_go_back|Navigate the active scraping-browser session back to the previous page and report the new URL and title.|
|scraping_browser_go_forward|Navigate the active scraping-browser session forward to the next page and report the new URL and title.|
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@brightdata/mcp",
"version": "2.9.2",
"version": "2.9.3",
"description": "An MCP interface into the Bright Data toolset",
"type": "module",
"main": "./server.js",
Expand Down
20 changes: 19 additions & 1 deletion server.js
Original file line number Diff line number Diff line change
Expand Up @@ -531,7 +531,7 @@ const datasets = [{
'This can be a cache lookup, so it can be more reliable than scraping',
].join('\n'),
inputs: ['keyword', 'url'],
fixed_values: {pages_to_search: '1'},
fixed_values: {pages_to_search: '1'},
}, {
id: 'walmart_product',
dataset_id: 'gd_l95fol7l1ru6rlo116',
Expand Down Expand Up @@ -957,6 +957,24 @@ const datasets = [{
inputs: ['prompt'],
fixed_values: {url: 'https://www.perplexity.ai', index: '', country: ''},
trigger_params: {custom_output_fields: 'answer_text_markdown'},
}, {
id: 'npm_package',
dataset_id: 'gd_mk57m0301khq4jmsul',
description: [
'Quickly read structured npm package data.',
'Requires a valid npm package name (e.g., @brightdata/sdk).',
'This can be a cache lookup, so it can be more reliable than scraping',
].join('\n'),
inputs: ['package_name'],
}, {
id: 'pypi_package',
dataset_id: 'gd_mk57kc3t1wwgmnepp9',
description: [
'Quickly read structured PyPI package data.',
'Requires a valid PyPI package name (e.g., langchain-brightdata).',
'This can be a cache lookup, so it can be more reliable than scraping',
].join('\n'),
inputs: ['package_name'],
}];
const dataset_id_to_title = id=>{
return id.split('_')
Expand Down
10 changes: 10 additions & 0 deletions tool_groups.js
Original file line number Diff line number Diff line change
Expand Up @@ -151,6 +151,16 @@ export const GROUPS = {
'web_data_perplexity_ai_insights',
],
},
CODE: {
id: 'code',
name: 'Code',
description: 'Developer tools and package information datasets.',
tools: [
...base_tools,
'web_data_npm_package',
'web_data_pypi_package',
],
},
CUSTOM: {
id: 'custom',
name: 'Custom',
Expand Down
Loading