# http-requester-mcp **Repository Path**: qazll/http-requester-mcp ## Basic Information - **Project Name**: http-requester-mcp - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-09 - **Last Updated**: 2026-09-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # @qazll/mcp-http-requester MCP 服务器,用于发送 HTTP 请求和维护报错消息。基于 Model Context Protocol (MCP) 标准实现,通过 stdio 传输与 MCP 客户端通信。 ## 功能 提供以下四个工具: ### 1. `http_request` 发送 HTTP 请求,支持 GET/POST/PUT/DELETE/PATCH 方法。 | 参数 | 类型 | 必填 | 默认值 | 说明 | | ---------- | ------- | -- | ------- | ----------------------------- | | `url` | string | 是 | - | 请求 URL | | `method` | string | 否 | `GET` | HTTP 方法 | | `headers` | object | 否 | `{}` | 请求头键值对 | | `params` | object | 否 | `{}` | 查询参数键值对 | | `body` | string | 否 | - | 请求体(JSON 字符串或表单字符串) | | `bodyType` | string | 否 | `json` | 请求体类型:`json` / `form` / `raw` | | `timeout` | integer | 否 | `30` | 超时秒数 | | `insecure` | boolean | 否 | `false` | 是否跳过 SSL 证书验证 | ### 2. `get_env_info` 获取环境信息,返回 env 中配置的网关地址、租户 ID 以及生成的可用 AUTH_TOKEN。无需参数。 返回字段: | 字段 | 说明 | | --------------- | --------------------- | | `GATEWAY_URL` | 环境配置的网关地址 | | `ORGANIZATION_ID` | 环境配置的租户 ID | | `AUTH_TOKEN` | 通过 OAuth2 生成的可用 access_token | ### 3. `get_access_token` 通过 OAuth2 密码模式获取 HZero 平台 access\_token,自动缓存并在有效期内复用。无需参数。 ### 4. `maintain_error_message` 报错消息维护,自动完成「获取 token → 查询编码是否已维护 → 未维护则创建」的流程。 | 参数 | 类型 | 必填 | 说明 | | ------------- | ------ | -- | ---- | | `messageCode` | string | 是 | 消息编码 | | `message` | string | 是 | 消息描述 | 返回状态: - `CREATED` — 新建成功 - `EXISTS` — 编码已存在且描述一致,无需重复创建 - `CONFLICT` — 编码已存在但描述不同,需修改编码 ## 环境配置 通过 MCP 客户端的 `env` 字段注入环境变量: | 环境变量 | 默认值 | 说明 | | ---------------------- | ------------------------- | ---------------------------------------------- | | `GATEWAY_URL` | `https://127.0.0.1:30080` | 网关地址 | | `USERNAME` | `admin` | OAuth2 用户名 | | `PASSWORD` | `Admin@123!` | OAuth2 密码 | | `ORGANIZATION_ID` | `0` | 租户 ID | | `COMMON_SERVICE_ROUTE` | `tznc` | 公共服务路由 | | `AUTH_TOKEN` | - | 默认 Authorization 令牌(`http_request` 工具自动附加到请求头) | ## 安装与使用 ### 安装依赖 ```bash npm install ``` ### 发布到 npm ```bash npm login npm publish --access public ``` ### 在 MCP 客户端中配置 以 Claude Desktop 为例,编辑配置文件: ```json { "mcpServers": { "http-requester": { "command": "node", "args": ["path/to/mcp-http-requester/index.js"], "env": { "GATEWAY_URL": "https://your-gateway.com", "USERNAME": "your-username", "PASSWORD": "your-password", "ORGANIZATION_ID": "0", "COMMON_SERVICE_ROUTE": "tznc" } } } } ``` ### 通过 npx 运行 ```json { "mcpServers": { "tarzan-tools": { "command": "npx", "args": [ "-y", "@qazll/mcp-http-requester@latest" ], "env": { "GATEWAY_URL": "https://your-gateway.com", "USERNAME": "your-username", "PASSWORD": "your-password", "ORGANIZATION_ID": "0", "COMMON_SERVICE_ROUTE": "tznc" } } } } ``` ## 项目结构 ``` mcp-http-requester/ ├── package.json # 项目配置 ├── README.md # 项目文档 └── src/ # 源代码目录 ├── index.js # MCP 服务器主入口 ├── config/ # 配置模块 │ └── env.js # 环境配置(ENV_CONFIG、getEnvConfig) ├── services/ # 服务层 │ ├── token.js # Token 管理服务(getAccessToken、缓存机制) │ └── errorMessage.js # 报错消息服务(查询/保存接口) └── handlers/ # 处理器层 ├── httpRequest.js # HTTP 请求工具处理器 └── tools.js # 其他工具处理器(get_env_info、get_access_token、maintain_error_message) ``` ## 技术栈 - [MCP SDK](https://github.com/modelcontextprotocol/typescript-sdk) — Model Context Protocol 服务端实现 - [Axios](https://github.com/axios/axios) — HTTP 请求库 - Node.js ES Modules ## 许可证 私有包,未公开发布。