Mini Agent MCP

Mini Agent MCP

An MCP server that integrates a ReAct agent with built-in tools (calculator, text, unit conversion, etc.) and the AnySearch search service, enabling autonomous multi-step task execution.

Category
访问服务器

README

Mini Agent MCP

npm version npm downloads GitHub license GitHub stars MCP Node.js

中文名称: Mini Agent MCP 智能代理服务器
英文名称: Mini Agent MCP
服务分类: 搜索工具 / AI Agent / 开发者工具
来源地址: https://github.com/Microbiosis/mini-agent-mcp
托管部署: 可托管部署(无本地环境依赖,支持云端一键部署)

服务介绍

Mini Agent MCP 是一个集成了 ReAct 小型 Agent 的 MCP (Model Context Protocol) 智能代理服务。Agent 可以自主调用多个工具完成复杂的多步任务,支持 LLM 驱动和规则引擎两种模式。

内置 AnySearch 搜索能力 — 网页搜索、域名搜索、批量搜索、URL 内容提取。Agent 支持多模型 LLM 通信,优先使用 MCP Sampling(客户端模型),也支持 Direct HTTP 回退。

服务描述

基于 MCP 协议的智能代理服务器,集成了 7 个内置工具(计算器、文本分析、文本转换、单位转换、日期时间、随机生成、ReAct Agent)和 4 个 AnySearch 搜索工具。支持多步推理(最多 8 步),可自主组合调用工具完成任务。支持 MCP Sampling 多模型通信,无需服务器端 API Key 即可调用 LLM。

✨ 核心功能

  • 🧮 内置工具 — 计算器、文本分析、文本转换、单位转换、日期时间、随机生成,共 6 个无需 API Key 的本地工具
  • 🤖 ReAct Agent — 支持 Thought → Action → Observation 多步推理循环,最多可组合调用 8 个工具步骤
  • 🔍 AnySearch 搜索 — 通过 MCP Streamable HTTP 集成 AnySearch,支持通用搜索、批量搜索(1-5 并行)、URL 内容提取、垂直领域搜索
  • 🔗 多模型通信 — 支持 MCP Sampling(客户端模型)和 Direct HTTP(自有 API)两种 LLM 通信方式,兼容 OpenAI / Anthropic 两种 API 格式
  • ☁️ 可托管部署 — 无本地环境依赖,可一键部署到 ModelScope MCP 广场,自动生成 SSE 访问地址
  • 🔁 自动重试 — 工具调用失败自动重试 3 次,指数退避(1s → 2s → 4s)

🚀 快速上手

方式 1: MCP 客户端配置(推荐)

ZCode

{
  "mcpServers": {
    "mini-agent-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": ["mini-agent-mcp"],
      "env": {
        "ANYSEARCH_API_KEY": "",
        "LLM_API_FORMAT": "openai",
        "LLM_API_KEY": "",
        "LLM_BASE_URL": "",
        "LLM_MODEL": ""
      }
    }
  }
}

在 ZCode 中使用时,Agent 优先使用 MCP Sampling(ZCode 的 LLM)。配置 LLM_* 后可作为回退:Sampling 失败时自动切换到 Direct HTTP。

方式 2: .env 文件(fallback)

当 MCP 客户端不传递环境变量时,在服务器工作目录创建 .env 文件:

# 复制模板
cp .env.example .env

# 编辑 .env 填入值
ANYSEARCH_API_KEY=xs_xxxxx
LLM_API_KEY=lc_xxxxx
LLM_BASE_URL=https://api.longcat.chat/openai
LLM_MODEL=LongCat-2.0-Preview

服务器启动时自动读取 .env 文件,无需客户端传递变量。

方式 3: 本地开发

git clone https://github.com/Microbiosis/mini-agent-mcp.git
cd mini-agent-mcp
npm install
npm run build
node dist/index.js           # 运行 MCP 服务器
node dist/index.js --test    # 运行测试

🛠️ 工具列表

内置工具

工具名称 说明 参数
calculator 安全数学表达式求值(支持 sqrt, sin, cos, pi 等) expression (string, 必需)
text_stats 文本统计分析(字数、词频、句子数等) text (string, 必需)
text_transform 文本转换(大小写、反转、排序、去重等) text (string, 必需), operation (string, 必需)
unit_convert 单位转换(长度、重量、温度、数据) value (number, 必需), from (string, 必需), to (string, 必需)
datetime_info 日期时间查询、格式化、差值计算 operation (string, 必需)
random_gen 随机数、UUID、密码、列表抽取 operation (string, 必需)
run_agent ReAct Agent — 自主调用上述工具完成多步任务 task (string, 必需)

AnySearch 工具(自动发现)

启动时自动连接 https://api.anysearch.com/mcp 动态发现:

工具名称 说明 参数
anysearch_search 通用搜索(支持金融、学术、法律等垂直领域) query (string, 必需), max_results (number, 可选)
anysearch_batch_search 1-5 个独立查询并行搜索 queries (array, 必需)
anysearch_extract URL 网页内容提取(Markdown,最多 50,000 字符) url (string, 必需)
anysearch_get_sub_domains 查询垂直领域目录(领域搜索前必须先调用) domain (string, 可选)

🤖 Agent 工作流程

用户任务 → [Thought: 分析任务]
           → [Action: 选择工具] → [执行工具] → [Observation: 观察结果]
           → [Thought: 继续推理]
           → ... (最多 8 步)
           → [Final Answer: 最终答案]

📡 LLM 通信模式

Agent 支持三种 LLM 通信方式,按优先级自动选择

方式 1: MCP Sampling(推荐)

服务器通过 MCP 协议的 sampling/createMessage 请求,让**客户端(如 ZCode / Claude Desktop / Cursor)**代为调用 LLM。

  • 零配置 — 服务器不需要 API Key,不需要知道模型名称
  • 客户端决定模型 — 客户端使用用户选择的模型
  • 支持多模型通信 — 客户端可以灵活选择不同的模型进行推理

这是 MCP 的原生多模型通信方式。只要客户端支持 sampling,Agent 就能使用客户端的 LLM。

方式 2: Direct HTTP(回退)

服务器直接调用 LLM API。需要设置环境变量:

变量 必需 说明 示例
LLM_API_KEY API 密钥 lc_xxxxx
LLM_BASE_URL API 端点 https://api.longcat.chat/openai
LLM_MODEL 模型名称 LongCat-2.0-Preview
LLM_API_FORMAT openaianthropic(不填则自动识别) openai

方式 3: 规则引擎(兜底)

无 LLM 时自动启用,通过模式匹配处理常见任务(数学计算、单位转换、时间查询、密码/UUID 生成、文本分析、多步复合任务)。

总结

场景 LLM 模式
在 ZCode / Claude / Cursor 中作为 MCP 服务器运行 MCP Sampling(客户端模型)✅
独立运行 + 设置了 LLM_API_KEY + LLM_BASE_URL + LLM_MODEL Direct HTTP
独立运行 + 未设置环境变量 规则引擎模式(无 LLM)

🌐 支持的 LLM 供应商

OpenAI Chat Completions 格式

LLM_API_FORMAT=openai 或不设置(自动识别)

供应商 LLM_BASE_URL LLM_MODEL 示例
LongCat https://api.longcat.chat/openai LongCat-2.0-Preview
OpenAI https://api.openai.com/v1 gpt-4o-mini
DeepSeek https://api.deepseek.com/v1 deepseek-chat
SenseNova https://token.sensenova.cn/v1 sensenova-6.7-flash-lite
kimi https://api.moonshot.cn/v1 moonshot-v1-8k
Ollama http://localhost:11434/v1 llama3.2

Anthropic Messages 格式

LLM_API_FORMAT=anthropic 或不设置(URL 含 /anthropic 自动识别)

供应商 LLM_BASE_URL LLM_MODEL 示例 认证头
LongCat (Anthropic) https://api.longcat.chat/anthropic LongCat-2.0-Preview x-api-key
SenseNova (Anthropic) https://token.sensenova.cn sensenova-6.7-flash-lite Bearer
Anthropic https://api.anthropic.com claude-sonnet-4-20250514 Bearer

格式自动识别:代码从 LLM_BASE_URL 自动判断用哪种格式发请求:

  • URL 含 /anthropic → Anthropic 格式
  • 其他 → OpenAI 格式

🔧 环境变量

变量 必需 说明 默认值
ANYSEARCH_API_KEY AnySearch API Key 匿名访问(更低限额)
LLM_API_KEY LLM API 密钥 无(回退到 Sampling)
LLM_BASE_URL LLM 端点 URL
LLM_MODEL LLM 模型名称
LLM_API_FORMAT openaianthropic 自动识别

传递方式

  1. MCP 客户端 env 字段(标准方式)
  2. .env 文件(服务器启动时读取,fallback)

📋 使用示例

内置工具调用示例

Task: "Calculate 25 * 4 + sqrt(81) and then convert 500 grams to pounds"

Agent 会自动:

  1. 调用 calculator 计算 25 * 4 + sqrt(81) = 109
  2. 调用 unit_convert 转换 500 grams = 1.10 pounds
  3. 返回完整的推理过程和最终答案

搜索任务示例

Task: "Search for the latest AI agent frameworks and summarize the top 3"

Agent 会调用 anysearch_search 获取搜索结果,然后推理总结。

批量搜索示例

Task: "Search for 'React vs Vue' and 'TypeScript trends 2025' in parallel"

Agent 会调用 anysearch_batch_search 同时发起多个查询。

🏗️ 项目结构

mini-agent-mcp/
├── LICENSE                     # Apache-2.0 许可证
├── README.md                   # 项目文档
├── .env.example                # 环境变量模板
├── package.json                # NPM 包配置
├── tsconfig.json               # TypeScript 配置
├── assets/
│   └── icon.png                # 项目图标 (512x512)
├── src/
│   ├── index.ts                # MCP 服务器入口(含 .env 加载 + 重试)
│   ├── tools/
│   │   ├── types.ts            # 工具类型定义
│   │   ├── registry.ts         # 工具注册表
│   │   ├── calculator.ts       # 数学计算器
│   │   ├── text.ts             # 文本工具
│   │   ├── converter.ts        # 单位转换
│   │   ├── datetime.ts         # 日期时间
│   │   ├── random.ts           # 随机生成
│   │   ├── anysearch-client.ts # AnySearch MCP 客户端封装
│   │   └── anysearch.ts        # AnySearch 工具动态包装
│   └── agent/
│       ├── llm.ts              # LLM 通信层 (采样 + HTTP + 多供应商)
│       ├── react.ts            # ReAct 推理循环
│       └── index.ts            # Agent 工具定义
└── dist/                       # 编译输出

🔐 安全说明

  • 无本地数据存储
  • API Key 通过环境变量传递,不写入代码或日志
  • 使用 MCP 标准协议通信
  • 托管部署在阿里云函数计算 MicroVM 沙箱隔离环境中运行
  • SSE 访问地址为专属敏感信息,请勿泄露

⚠️ 使用限制

  • 免费托管服务有调用配额限制(超限返回 HTTP 429)
  • 匿名 AnySearch 访问有速率限制(建议配置 API Key)
  • Agent 单次任务最多 8 个工具调用步骤
  • 工具调用超时 60 秒,LLM 推理超时 120 秒
  • 工具失败后自动重试 3 次(指数退避)

📄 许可证

Apache License 2.0 © 2026 Microbiosis

本项目集成了 AnySearch(Apache-2.0 许可证)。

🤝 贡献

欢迎提交 Issue 和 PR:https://github.com/Microbiosis/mini-agent-mcp/issues

Fork → 修改 → 提交请求即可。

🔗 相关链接

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选