Dumpling AI MCP Server
一个与Dumpling AI集成的模型上下文协议(MCP)服务器实现,用于数据抓取、内容处理、知识管理、AI代理和代码执行功能。
功能
- 完整集成所有Dumpling AI API端点
- 数据API,支持YouTube字幕、搜索、自动完成、地图、地点、新闻和评论
- 支持抓取、爬取、截图和结构化数据提取的网页抓取
- 文档转换工具,用于文本提取、PDF操作和视频处理
- 从文档、图像、音频和视频中提取数据
- AI功能,包括代理完成、知识库管理和图像生成
- 开发者工具,可在安全环境中运行JavaScript和Python代码
- 自动错误处理和详细响应格式化
安装
通过Smithery安装
要自动通过Smithery安装mcp-server-dumplingai到Claude桌面:
npx -y @smithery/cli install @Dumpling-AI/mcp-server-dumplingai --client claude
使用npx运行
env DUMPLING_API_KEY=your_api_key npx -y mcp-server-dumplingai
手动安装
npm install -g mcp-server-dumplingai
在Cursor上运行
配置Cursor 🖥️ 注意:需要Cursor版本0.45.6+
要在Cursor中配置Dumpling AI MCP:
- 打开Cursor设置
- 转到功能 > MCP服务器
- 点击"+ 添加新的MCP服务器"
- 输入以下内容:
{
"mcpServers": {
"dumplingai": {
"command": "npx",
"args": ["-y", "mcp-server-dumplingai"],
"env": {
"DUMPLING_API_KEY": "<your-api-key>"
}
}
}
}
如果您使用的是Windows并且遇到问题,请尝试
cmd /c "set DUMPLING_API_KEY=your-api-key && npx -y mcp-server-dumplingai"
将your-api-key替换为您的Dumpling AI API密钥。
配置
环境变量
DUMPLING_API_KEY:您的Dumpling AI API密钥(必需)
可用工具
数据API
1. 获取YouTube字幕 (get-youtube-transcript)
提取YouTube视频的字幕,可选带时间戳。
{
"name": "get-youtube-transcript",
"arguments": {
"videoUrl": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"includeTimestamps": true,
"timestampsToCombine": 3,
"preferredLanguage": "en"
}
}
2. 搜索 (search)
执行Google网络搜索,可选从结果中抓取内容。
{
"name": "search",
"arguments": {
"query": "机器学习基础",
"country": "us",
"language": "en",
"dateRange": "pastMonth",
"scrapeResults": true,
"numResultsToScrape": 3,
"scrapeOptions": {
"format": "markdown",
"cleaned": true
}
}
}
3. 获取自动完成 (get-autocomplete)
获取针对查询的Google搜索自动完成建议。
{
"name": "get-autocomplete",
"arguments": {
"query": "如何学习",
"country": "us",
"language": "en",
"location": "New York"
}
}
4. 搜索地图 (search-maps)
在Google地图中搜索位置和商家。
{
"name": "search-maps",
"arguments": {
"query": "咖啡店",
"gpsPositionZoom": "37.7749,-122.4194,14z",
"language": "en",
"page": 1
}
}
5. 搜索地点 (search-places)
搜索更详细信息的地点。
{
"name": "search-places",
"arguments": {
"query": "巴黎的酒店",
"country": "fr",
"language": "en",
"page": 1
}
}
6. 搜索新闻 (search-news)
搜索新闻文章,可自定义参数。
{
"name": "search-news",
"arguments": {
"query": "气候变化",
"country": "us",
"language": "en",
"dateRange": "pastWeek"
}
}
7. 获取Google评论 (get-google-reviews)
检索商家或地点的Google评论。
{
"name": "get-google-reviews",
"arguments": {
"businessName": "埃菲尔铁塔",
"location": "巴黎,法国",
"limit": 10,
"sortBy": "相关性"
}
}
网页抓取
8. 抓取 (scrape)
从网页中提取内容,支持格式化选项。
{
"name": "scrape",
"arguments": {
"url": "https://example.com",
"format": "markdown",
"cleaned": true,
"renderJs": true
}
}
9. 爬取 (crawl)
递归爬取网站并提取内容,可自定义参数。
{
"name": "crawl",
"arguments": {
"baseUrl": "https://example.com",
"maxPages": 10,
"crawlBeyondBaseUrl": false,
"depth": 2,
"scrapeOptions": {
"format": "markdown",
"cleaned": true,
"renderJs": true
}
}
}
10. 截图 (screenshot)
捕获网页截图,支持自定义视口和格式选项。
{
"name": "screenshot",
"arguments": {
"url": "https://example.com",
"width": 1280,
"height": 800,
"fullPage": true,
"format": "png",
"waitFor": 1000
}
}
11. 提取 (extract)
使用AI指令从网页中提取结构化数据。
{
"name": "extract",
"arguments": {
"url": "https://example.com/products",
"instructions": "从本页面提取所有产品名称、价格和描述",
"schema": {
"products": [
{
"name": "string",
"price": "number",
"description": "string"
}
]
},
"renderJs": true
}
}
文档转换
12. 文档转文本 (doc-to-text)
将文档转换为纯文本,可选使用OCR。
{
"name": "doc-to-text",
"arguments": {
"url": "https://example.com/document.pdf",
"options": {
"ocr": true,
"language": "en"
}
}
}
13. 转换为PDF (convert-to-pdf)
将多种文件格式转换为PDF。
{
"name": "convert-to-pdf",
"arguments": {
"url": "https://example.com/document.docx",
"format": "docx",
"options": {
"quality": 90,
"pageSize": "A4",
"margin": 10
}
}
}
14. 合并PDF (merge-pdfs)
将多个PDF合并为一个文档。
{
"name": "merge-pdfs",
"arguments": {
"urls": ["https://example.com/doc1.pdf", "https://example.com/doc2.pdf"],
"options": {
"addPageNumbers": true,
"addTableOfContents": true
}
}
}
15. 剪辑视频 (trim-video)
从视频中提取特定片段。
{
"name": "trim-video",
"arguments": {
"url": "https://example.com/video.mp4",
"startTime": 30,
"endTime": 60,
"output": "mp4",
"options": {
"quality": 720,
"fps": 30
}
}
}
16. 提取文档 (extract-document)
从各种格式的文档中提取特定内容。
{
"name": "extract-document",
"arguments": {
"url": "https://example.com/document.pdf",
"format": "structured",
"options": {
"ocr": true,
"language": "en",
"includeMetadata": true
}
}
}
17. 提取图像 (extract-image)
从图像中提取文本和信息。
{
"name": "extract-image",
"arguments": {
"url": "https://example.com/image.jpg",
"extractionType": "text",
"options": {
"language": "en",
"detectOrientation": true
}
}
}
18. 提取音频 (extract-audio)
转录和从音频文件中提取信息。
{
"name": "extract-audio",
"arguments": {
"url": "https://example.com/audio.mp3",
"language": "en",
"options": {
"model": "enhanced",
"speakerDiarization": true,
"wordTimestamps": true
}
}
}
19. 提取视频 (extract-video)
从视频中提取内容,包括字幕、场景和对象。
{
"name": "extract-video",
"arguments": {
"url": "https://example.com/video.mp4",
"extractionType": "transcript",
"options": {
"language": "en",
"speakerDiarization": true
}
}
}
20. 读取PDF元数据 (read-pdf-metadata)
从PDF文件中提取元数据。
{
"name": "read-pdf-metadata",
"arguments": {
"url": "https://example.com/document.pdf",
"includeExtended": true
}
}
21. 写入PDF元数据 (write-pdf-metadata)
更新PDF文件中的元数据。
{
"name": "write-pdf-metadata",
"arguments": {
"url": "https://example.com/document.pdf",
"metadata": {
"title": "新标题",
"author": "John Doe",
"keywords": ["keyword1", "keyword2"]
}
}
}
AI
22. 生成代理完成 (generate-agent-completion)
获取AI代理完成,可选带工具定义。
{
"name": "generate-agent-completion",
"arguments": {
"prompt": "如何提高网站的SEO?",
"model": "gpt-4",
"temperature": 0.7,
"maxTokens": 500,
"context": ["网站是一个销售手工工艺品的电子商务商店。"]
}
}
23. 搜索知识库 (search-knowledge-base)
在知识库中搜索相关信息。
{
"name": "search-knowledge-base",
"arguments": {
"kbId": "kb_12345",
"query": "如何优化数据库性能",
"limit": 5,
"similarityThreshold": 0.7
}
}
24. 添加到知识库 (add-to-knowledge-base)
向知识库添加条目。
{
"name": "add-to-knowledge-base",
"arguments": {
"kbId": "kb_12345",
"entries": [
{
"text": "MongoDB是一个基于文档的NoSQL数据库。",
"metadata": {
"source": "MongoDB文档",
"category": "数据库"
}
}
],
"upsert": true
}
}
25. 生成AI图像 (generate-ai-image)
使用AI模型生成图像。
{
"name": "generate-ai-image",
"arguments": {
"prompt": "一个拥有飞行汽车和霓虹灯的未来城市",
"width": 1024,
"height": 1024,
"numImages": 1,
"quality": "hd",
"style": "照片级真实感"
}
}
26. 生成图像 (generate-image)
使用各种AI提供商生成图像。
{
"name": "generate-image",
"arguments": {
"prompt": "一只金毛猎犬在野花丛中",
"provider": "dalle",
"width": 1024,
"height": 1024,
"numImages": 1
}
}
开发者工具
27. 运行JavaScript代码 (run-js-code)
执行JavaScript代码,可选带依赖项。
{
"name": "run-js-code",
"arguments": {
"code": "const result = [1, 2, 3, 4].reduce((sum, num) => sum + num, 0); console.log(`Sum: ${result}`); return result;",
"dependencies": {
"lodash": "^4.17.21"
},
"timeout": 5000
}
}
28. 运行Python代码 (run-python-code)
执行Python代码,可选带依赖项。
{
"name": "run-python-code",
"arguments": {
"code": "import numpy as np\narr = np.array([1, 2, 3, 4, 5])\nmean = np.mean(arr)\nprint(f'Mean: {mean}')\nreturn mean",
"dependencies": ["numpy", "pandas"],
"timeout": 10000,
"saveOutputFiles": true
}
}
错误处理
服务器提供强大的错误处理:
- 带HTTP状态码的详细错误消息
- API密钥验证
- 使用Zod模式进行输入验证
- 带描述性消息的网络错误处理
示例错误响应:
{
"content": [
{
"type": "text",
"text": "错误:获取YouTube字幕失败:404未找到"
}
],
"isError": true
}
开发
# 安装依赖项
npm install
# 构建
npm run build
许可证
MIT许可证 - 详细内容请参阅LICENSE文件