Skip to content

Commit 41e90c1

Browse files
authored
Merge pull request #102 from brightdata/feat/code-group
feat: add code group
2 parents 5f52c67 + 6b56a13 commit 41e90c1

6 files changed

Lines changed: 81 additions & 5 deletions

File tree

README.md

Lines changed: 47 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,24 @@
4141
<br/>
4242

4343
<div align="center">
44-
<h3>NEW: GEO & AI Brand Visibility Tools</h3>
44+
<h3>NEW: Code Tool group - Your Coding Agent's Best Friend</h3>
45+
<p><strong>Instant access to npm and PyPI package data, right from your AI agent.</strong></p>
46+
<p>
47+
Need the latest version of a package? Want to read its README without leaving your workflow?<br/>
48+
The <b>Code</b> tool group gives coding agents structured, reliable package metadata on demand —<br/>
49+
no scraping, no stale caches, just the data your agent needs to make smart dependency decisions.
50+
</p>
51+
<table>
52+
<tr>
53+
<td align="center"><b>npm</b><br/><sub>Package versions, READMEs, metadata &amp; dependencies</sub></td>
54+
<td align="center"><b>PyPI</b><br/><sub>Python package info, versions &amp; project details</sub></td>
55+
</tr>
56+
</table>
57+
<p><code>GROUPS="code"</code> &nbsp;·&nbsp; The go-to tool for Claude Code, Cursor, Windsurf &amp; any MCP-powered coding agent</p>
58+
</div>
59+
60+
<div align="center">
61+
<h3>GEO & AI Brand Visibility Tools</h3>
4562
<p><strong>See how ChatGPT, Grok, and Perplexity talk about your brand.</strong></p>
4663
<p>
4764
Query leading LLMs directly from your agent and get back structured, markdown-formatted answers.<br/>
@@ -87,6 +104,7 @@ Built by [Bright Data](https://brightdata.com), the world's #1 web data platform
87104
- 🛍️ **E-commerce Intelligence** - Monitor products, prices, and availability
88105
- 📊 **Market Analysis** - Track competitors and industry trends
89106
- 🤖 **AI Agents** - Build agents that can actually browse the web
107+
- 💻 **Coding Agents** - Look up npm/PyPI packages, versions, and READMEs in real time
90108
- 🧠 **GEO & Brand Visibility** - See how ChatGPT, Grok, and Perplexity perceive your brand
91109
- 📝 **Content Creation** - Access up-to-date information for writing
92110
- 🎓 **Academic Research** - Gather data from multiple sources efficiently
@@ -261,6 +279,12 @@ https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN_HERE
261279
<code>web_data_grok_ai_insights</code>,
262280
<code>web_data_perplexity_ai_insights</code></td>
263281
</tr>
282+
<tr>
283+
<td><code>code</code></td>
284+
<td>Package intelligence for coding agents</td>
285+
<td><code>web_data_npm_package</code>,
286+
<code>web_data_pypi_package</code></td>
287+
</tr>
264288
<tr>
265289
<td><code>advanced_scraping</code></td>
266290
<td>Batch and AI-assisted extraction helpers</td>
@@ -288,6 +312,26 @@ https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN_HERE
288312
}
289313
```
290314

315+
### Coding agent example (Claude Code / Cursor / Windsurf)
316+
317+
Give your coding agent real-time package intelligence — latest versions, READMEs,
318+
dependencies, and metadata from npm and PyPI without scraping:
319+
320+
```json
321+
{
322+
"mcpServers": {
323+
"Bright Data": {
324+
"command": "npx",
325+
"args": ["@brightdata/mcp"],
326+
"env": {
327+
"API_TOKEN": "<your-api-token-here>",
328+
"GROUPS": "code"
329+
}
330+
}
331+
}
332+
}
333+
```
334+
291335
---
292336

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

322368
---

assets/Tools.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,8 @@
5050
|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.|
5151
|web_data_reddit_posts|Quickly read structured Reddit post data. Requires a valid Reddit post URL. Often faster and more reliable than scraping.|
5252
|web_data_youtube_videos|Quickly read structured YouTube video metadata. Requires a valid YouTube video URL. Often faster and more reliable than scraping.|
53+
|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.|
54+
|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.|
5355
|scraping_browser_navigate|Open or reuse a scraping-browser session and navigate to the provided URL, resetting tracked network requests.|
5456
|scraping_browser_go_back|Navigate the active scraping-browser session back to the previous page and report the new URL and title.|
5557
|scraping_browser_go_forward|Navigate the active scraping-browser session forward to the next page and report the new URL and title.|

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@brightdata/mcp",
3-
"version": "2.9.2",
3+
"version": "2.9.3",
44
"description": "An MCP interface into the Bright Data toolset",
55
"type": "module",
66
"main": "./server.js",

server.js

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -531,7 +531,7 @@ const datasets = [{
531531
'This can be a cache lookup, so it can be more reliable than scraping',
532532
].join('\n'),
533533
inputs: ['keyword', 'url'],
534-
fixed_values: {pages_to_search: '1'},
534+
fixed_values: {pages_to_search: '1'},
535535
}, {
536536
id: 'walmart_product',
537537
dataset_id: 'gd_l95fol7l1ru6rlo116',
@@ -957,6 +957,24 @@ const datasets = [{
957957
inputs: ['prompt'],
958958
fixed_values: {url: 'https://www.perplexity.ai', index: '', country: ''},
959959
trigger_params: {custom_output_fields: 'answer_text_markdown'},
960+
}, {
961+
id: 'npm_package',
962+
dataset_id: 'gd_mk57m0301khq4jmsul',
963+
description: [
964+
'Quickly read structured npm package data.',
965+
'Requires a valid npm package name (e.g., @brightdata/sdk).',
966+
'This can be a cache lookup, so it can be more reliable than scraping',
967+
].join('\n'),
968+
inputs: ['package_name'],
969+
}, {
970+
id: 'pypi_package',
971+
dataset_id: 'gd_mk57kc3t1wwgmnepp9',
972+
description: [
973+
'Quickly read structured PyPI package data.',
974+
'Requires a valid PyPI package name (e.g., langchain-brightdata).',
975+
'This can be a cache lookup, so it can be more reliable than scraping',
976+
].join('\n'),
977+
inputs: ['package_name'],
960978
}];
961979
const dataset_id_to_title = id=>{
962980
return id.split('_')

tool_groups.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,16 @@ export const GROUPS = {
151151
'web_data_perplexity_ai_insights',
152152
],
153153
},
154+
CODE: {
155+
id: 'code',
156+
name: 'Code',
157+
description: 'Developer tools and package information datasets.',
158+
tools: [
159+
...base_tools,
160+
'web_data_npm_package',
161+
'web_data_pypi_package',
162+
],
163+
},
154164
CUSTOM: {
155165
id: 'custom',
156166
name: 'Custom',

0 commit comments

Comments
 (0)