JSer.info 的 MCP 服务器
在 VSCode 中,可以通过以下任一方式使用 JSer.info MCP:
可以通过以下任一方式添加远程服务器:
code --add-mcp '{"name":"jser-info-mcp","url":"https://mcp.jser.info/mcp"}'
在 VSCode 的 settings.json 中添加以下设置:
"mcp": {
"servers": {
"jser-info-mcp": {
"url": "https://mcp.jser.info/mcp"
}
}
}
这样就可以自动使用 JSer.info MCP。
在终端中启动 @jser/mcp
npx @jser/mcp
打开 VSCode 的命令面板(Cmd+Shift+P 或 Ctrl+Shift+P),执行“MCP: 添加服务器...”
输入服务器 URL http://localhost:14561/mcp 并连接
连接后,可以使用以下工具:
jser_search_items: 根据标题、描述、URL 和标签搜索项目(支持多个关键词的 OR 搜索)jser_search_posts: 根据标题、描述、URL 和标签搜索帖子jser_product_name: 从 URL 获取产品名称jser_week: 根据编号获取 JSer 周jser_weeks: 获取所有 JSer 周jser_weeks_between: 获取两个日期之间的 JSer 周jser_week_with_item_url: 获取包含特定项目的 JSer 周jser_item_with_item_url: 根据 URL 获取 JSer 项目JSer.info MCP 提供以下工具。
根据标题、描述、URL 和标签搜索项目。支持多个关键词的 OR 搜索。
参数:
query: 搜索查询(1-100 字符)。支持多个关键词的 OR 搜索limit: 返回结果的最大数量(1-100,默认值: 10)offset: 结果的偏移量(0 或更大,默认值: 0)order: 排序顺序
desc: 最新优先(默认)asc: 最旧优先返回值:
title: 项目的标题url: 项目的 URLcontent: 项目的描述tags: 标签数组date: 注册时间relatedLinks: 相关链接数组根据标题、描述、URL 和标签搜索帖子。
参数:
query: 搜索查询(1-100 字符)limit: 返回结果的最大数量(1-100,默认值: 10)offset: 结果的偏移量(0 或更大,默认值: 0)sort: 排序依据
relevance: 相关性优先(默认)date: 时间优先order: 排序顺序
desc: 最新优先/相关性高优先(默认)asc: 最旧优先/相关性低优先返回值:
title: 帖子的标题url: 帖子的 URLcontent: 帖子的内容tags: 标签数组date: 发布时间从 URL 获取产品名称。
参数:
url: 产品的 URL(必需)返回值:
name: 产品名称url: 产品的 URLreleaseNoteProbability: 发布说明的概率releaseNoteVersion: 发布说明的版本信息(如果适用)releaseNoteURL: 发布说明的 URL(如果适用)根据编号获取 JSer 周。
参数:
number: JSer 周的编号(必需)返回值:
number: JSer 周的编号startDate: 开始日期endDate: 结束日期items: 当周的项目列表posts: 当周的帖子列表获取所有 JSer 周。
返回值:
number: JSer 周的编号startDate: 开始日期endDate: 结束日期items: 当周的项目列表posts: 当周的帖子列表获取指定期间的 JSer 周。
参数:
beginDate: 期间的开始日期(必需)endDate: 期间的结束日期(必需)返回值:
number: JSer 周的编号startDate: 开始日期endDate: 结束日期items: 当周的项目列表posts: 当周的帖子列表itemsCount: 项目数量postsCount: 帖子数量获取包含特定项目的 JSer 周。
参数:
item_url: 项目的 URL(必需)返回值:
number: JSer 周的编号startDate: 开始日期endDate: 结束日期items: 当周的项目列表posts: 当周的帖子列表根据 URL 获取项目。
参数:
url: 项目的 URL(必需)返回值:
title: 标题url: URLdescription: 描述tags: 标签数组date: 日期relatedLinks: 相关链接数组数据获取使用 @jser/data-fetcher
搜索使用 DataSet
项目: 要介绍的网站
1 个项目 = 1 个网站
所有数据的原始来源
包含每个网站的标题、URL、注册日期、标签等
API: https://jser.info/source-data/items.json
帖子: JSer.info 上发布的文章
1 帖子 = 1 篇文章
包含每篇文章的标题、URL、标签、日期等
使用 @jser/stat 可以根据项目和帖子搜索指定网站的文章
API: https://jser.info/posts.json
帖子项目: JSer.info 上发布的文章中的项目(网站)
1 帖子项目 = 1 个网站
基本上与项目相同,但帖子项目包含文章中的类别(如头条等)
类别的种类参见 @jser/post-parser
如果在发布时对项目进行了编辑,则项目和帖子项目不一定完全一致
限制: 从 2014-08-03 开始才区分类别,因此之前的数据不包括此类别
所有的文章都包含在帖子中,但帖子项目的数据并不包含在内
API: https://jser.info/public/data/post-details.json
产品名称的搜索使用 JSer.info Product Name API
$ curl "https://jser-product-name.deno.dev/?url=https://deno.com/blog/v1.19"
{"name":"Deno","url":"https://deno.com","releaseNoteProbability":0.7619047619047619,"releaseNoteVersion":"v1.19"}
$ curl "https://jser-product-name.deno.dev/?url=https://example.com"
null # 状态码是 400
数据提取逻辑使用 @jser/stat。
### findItemsBetween(beginDate, endDate): JSerItem[]
返回两个日期之间的 JSerItem 数组
### getJSerWeeks(): JSerWeek[]
返回所有 JSerWeek 数组
### findJSerWeeksBetween(beginDate, endDate): JSerWeek[]
返回两个日期之间的 JSerWeek 数组
### findJSerWeek(number): JSerWeek
编号从 1 开始。
返回指定编号的 JSerWeek。
### findWeekWithItem(itemObject): JSerWeek
返回包含 itemObject 的 JSerWeek。
### findItemWithURL(URL): JSerItem
返回匹配 URL 的 JSerItem。
查看 发行页面。
安装开发依赖并运行 pnpm test:
pnpm test
欢迎提交拉取请求和点赞。
对于 Bug 和功能请求,请创建一个 Issue。
git checkout -b my-new-featuregit commit -am '添加一些功能'git push origin my-new-featureMIT © azu