npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

lc-mcp-server

v1.0.4

Published

低代码 MCP 服务器

Readme

MCP Web Search 服务器和客户端

这是一个使用 @modelcontextprotocol/sdk 实现的MCP服务器和客户端,提供网络搜索功能。

项目结构

  • src/mcp-server-web-search.ts: MCP服务器实现,提供webSearch工具
  • src/mcp-client.ts: 完整的MCP客户端,用于测试服务器功能
  • src/mcp-simple-client.ts: 简单的MCP客户端,可接受命令行参数
  • .env: 环境变量配置文件

环境配置

.env 文件中配置以下环境变量:

# MCP服务器端口
MCP_SERVER_PORT=3000

# 是否使用模拟模式(不需要真实API密钥)
USE_MOCK_MODE=true

# 百度搜索API配置(当USE_MOCK_MODE=false时需要)
# BAIDU_API_KEY=your_baidu_api_key
# BAIDU_SECRET_KEY=your_baidu_secret_key
# BAIDU_SEARCH_API_ENDPOINT=https://aip.baidubce.com/rpc/2.0/searchbox/search

安装依赖

pnpm install

使用方法

1. 运行完整客户端测试

npm run start-client

这将启动MCP服务器,然后使用两个预定义的搜索查询测试webSearch工具。

2. 运行简单客户端测试(可自定义搜索查询)

npm run start-simple-client [搜索查询]

如果不提供搜索查询,默认搜索 "人工智能最新进展"。

3. 单独启动服务器

npm run start-mcp-server

功能说明

服务器功能

  • 提供名为 webSearch 的工具,用于执行网络搜索
  • 支持模拟模式(USE_MOCK_MODE=true),不需要真实的API密钥
  • 当设置为真实模式时,会调用百度搜索API

客户端功能

  • 自动启动MCP服务器并建立连接
  • 调用webSearch工具执行搜索查询
  • 格式化输出搜索结果
  • 完成测试后自动关闭服务器

注意事项

  • 使用模拟模式时,返回的是生成的模拟搜索结果
  • 如需使用真实百度搜索API,请在.env文件中配置有效的API密钥并设置USE_MOCK_MODE=false

将命令配置为全局可用

项目支持将MCP服务器配置为全局命令,方便在任何位置运行。详细的配置步骤请参考 INSTALL_GLOBAL.md 文件。

配置为全局命令后,您可以直接使用以下命令启动服务器:

  • mcp-web-search: 通过 cli.js 启动的服务器
  • mcp-server: 直接启动 mcp-server-web-search.js 服务器

npm 发布

要将此项目发布到 npm 仓库,请遵循以下步骤:

  1. 准备 npm 账户

    • 如果您还没有 npm 账户,请先在 npm 官网 注册。
    • 在命令行中运行 npm login 登录您的账户。
  2. 更新 package.json

    • 确保 package.json 中的以下字段已正确配置:
      • name: 包名(必须唯一)
      • version: 遵循语义化版本控制 (semver),例如 1.0.0
      • description: 清晰的包描述
      • main: 主入口文件,例如 index.js (如果适用)
      • bin: 命令行工具配置,例如:
        "bin": {
            "lc-mcp-server": "./src/lowcode-mcp-server.js"
        }
      • keywords: 相关关键词,有助于用户搜索
      • repository: 代码仓库信息
      • license: 许可证类型,例如 MIT
  3. 测试本地安装 在发布之前,建议在本地测试包的安装和功能:

    npm install -g .

    安装后,测试所有命令(如 lc-mcp-server)是否正常工作。

  4. 发布到 npm 当您准备好发布时,运行以下命令:

    npm publish

    如果您的包是私有的,或者您想限制访问,可以使用:

    npm publish --access=restricted
  5. 更新版本(后续更新时) 每次发布新版本时,您都需要更新 package.json 中的 version 字段。可以使用 npm version 命令来自动化此过程:

    npm version patch   # 增加补丁版本号,例如 1.0.0 -> 1.0.1
    # npm version minor # 增加次版本号,例如 1.0.0 -> 1.1.0
    # npm version major # 增加主版本号,例如 1.0.0 -> 2.0.0
    npm publish

最佳实践建议

  • .npmignore 文件: 创建一个 .npmignore 文件来排除不需要发布到 npm 的文件和目录(例如 node_modules、测试文件、文档等),这有助于减小包的体积。
  • prepublishOnly 脚本: 考虑在 package.json 中添加 prepublishOnly 脚本,用于在发布前运行测试或构建步骤,确保发布的代码是高质量的。
  • npm pack: 在发布前运行 npm pack 命令,它会创建一个 .tgz 文件,您可以检查这个文件来确认最终发布包中包含了哪些内容。