ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

基于openclaw实现自定义mcp/skill(第二章)

基于openclaw实现自定义mcp/skill(第二章)

代码本身在这里是做任务的,只负责被openclaw调度

其中自己需要开发:MCP、Skill

概念是什么在本项目中的角色

Skill

给 OpenClaw Agent 看的一组 Markdown + 脚本,让它知道“什么时候、用什么参数、按什么流程做恶意充值检测”

纯文档+编排,不写业务逻辑

MCP Server

给 OpenClaw 调用的工具服务,通过 MCP 协议暴露tools/list、tools/call

Java 写的 MCP 服务,暴露 6 个工具

MCP Client:连接 Server,调用服务端能力,这里已经有openclaw作为client了

第一步:

准备基本项目环境:数据库、openclaw、skill中的代码要用到的代码环境变量、pom等等

第二步:

完成代码:基本的实体类以及skill中要用的基础方法比如查询账号信息、修改账号数据等等

第三步:

完成业务代码(service层):比如违规评定、封号业务等等(文章末尾附活动内容及规则)

第四步:

MCP化,让各种方法能够真正被openclaw(或者其他agent)调用

  1. 引 MCP SDK + 写mcp/RechargeMcpServer.java
    • pom补充...
    • 一个类实现 STDIO 版 JSON-RPC,暴露 6 个 tool:detectRisk、queryRecharges、queryBonus、banUser、restrictBonus、getAccountStatus
    • 每个 tool 配 JSON Schema(输入输出字段),这是 OpenClaw 能发现你的前提
  2. 写skills/malicious-recharge-detector/SKILL.md
    • 告诉 Agent:触发词是什么(“检查恶意充值”)、先调detectRisk、多少分才调banUser、批量上限 200、永久封需人工确认
    • 把你刚定的活动方案和计分规则全文贴进去当附件,Agent 判定时有据可依

agent靠skill的description命中skill,skill中会直接指示调用什么tool,而不是靠某些东西命中tool

JSON Schema是干啥的:是 OpenClaw 把 Tool「暴露给大模型」的必备元数据。

读取Schema → 将tool注册进工具列表

  1. 本地联调验证
    • java -jar跑起来,OpenClaw 配置mcpServers加一条 STDIO 指向这个 jar
    • 在 OpenClaw 对话框说“Dry-Run 检查昨日恶意充值”,看它是否调detectRisk只返回名单不真封
    • 再说“确认封禁 user_002”,看是否调banUser并写库

第五步

联通openclaw,实现落地(下一章讲解)

看一下代码结构会更有理解

附:

1.MCP接入方案(总的来说算是两种)Demo中选择第一种

2.为什么基于 openclaw 开发 skill、mcp 等不用写 mcp client 代码但是得写 mcp server 代码

OpenClaw 本身就是内置好的 MCP Client(协议收发、stdio / 连接管理、工具发现全都封装完),你做 SkillMCP 是在做「工具提供者」,也就是 MCP Server,所以只需要写 Server 这一侧,不用自己写 MCP Client 底层代码

一侧是别人写的,一侧是自己写的,二者怎么联通?

OpenClaw 里面有两套模式:

  • 模式 A:OpenClaw =MCP Client。你开发一个独立 MCP Server(skillmcp),然后在 OpenClaw 配置里openclaw mcp add把你的 server 注册进去。OpenClaw 内部会自动作为 MCP Client 拉起你的进程、协商协议、调用工具。👉 你只写你的 MCP Server。
  • 模式 B:openclaw mcp serve,此时 OpenClaw 自己变成 MCP Server,给外部 Claude Code / Codex 这类 MCP Client 调用。
3.活动内容及封号规则

一、AI首充Token全额返还活动方案

1. 活动基础规则

  • 活动时长:版本上线后持续30天

  • 参与档位:仅支持6元、30元、100元三档充值,1元及以下订单不参与任何返还活动

  • 权益次数:单人活动期内共3次权益,包含1次首充全额返还权益+2次复充折扣权益

2. 充值权益规则

  • 首充权益:仅限个人首次充值,按对应充值档位全额返还Token

  • 复充权益:重复充值同档位,仅享受6折Token福利,不再参与全额返还

3. 额度与设备限制

  • 返还上限:单人累计Token返还上限为2万Token

  • 设备限制:单台设备仅前2个账号可享受首充返还权益,第3个及以上账号永久无法参与首充返还,无人工白名单特殊通道

4. 活动预算机制

  • 活动总预算:100万Token

  • 终止机制:预算Token耗尽,活动立即停止

5. 退款与额度抵扣规则

  • 退款回收:产生退款订单,将全额回收已发放的返还Token

  • 负额度机制:已消耗的返还Token将记为负额度,用户下次充值将优先抵扣该负额度

  • 负额度上限:个人负额度最高2万Token,超出上限将执行封号处理

  • 额度恢复:负额度产生后24小时内补款,可恢复正常额度;超时未补款,补款恢复资格作废

6. 用户有效行为要求

  • 用户领取返还Token后,必须产生至少1条正常AI问答记录

  • 无有效AI问答视为无效用户,剥夺后续所有活动权益,同时纳入风控名单

二、封号业务逻辑规则

采用五项唯一计分体系,根据违规行为累计计分,依据分数梯度执行对应处罚,所有处置行为留痕可查、可申诉回滚。

1. 违规计分标准

  • 领取返还后发起退款,且返还Token消耗比例达80%:加70分

  • 7天内极速消耗返还Token,消耗比例达90%:加20分

  • 单设备3个及以上账号领取首充返还权益:加30分

  • 个人名下累计5笔以上不足6元的无效小额订单:加30分

  • 领取返还Token后,无任何有效AI对话记录:加70分

2. 分数梯度处罚规则

  • 90分及以上:账号封禁7天,同时冻结所有未消耗的返还Token

  • 60-89分:禁止领取平台所有赠送、返还类权益

  • 30-59分:仅纳入观察名单,无功能限制

  • 30分以下:正常放行,无任何处罚与风控标记

3. 特殊豁免规则

  • 仅纯1元测试订单,未命中任何其他违规项的账号,默认仅观察、不做任何处罚

4. 数据留痕与申诉机制

  • 所有风控、处罚处置记录同步录入risk_detect_log日志

  • 封号操作将修改账号account_status状态

  • 所有处罚结果支持用户申诉、人工回滚处置

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进