关于 regexcronsql-validator
这是一个远程 MCP 服务,通过实际执行来验证正则表达式、cron 表达式和 PostgreSQL 方言 SQL;SQL 在内存测试表中运行。每次调用均无状态,并通过 x402 收取 USDC。
主要功能
- 01用示例字符串执行 JavaScript 正则
- 02计算 cron 表达式的后续运行时间
- 03在内存中执行 PostgreSQL 方言 SQL
- 04通过 x402 按次收费
适用场景
- 01用示例输入检查正则表达式
- 02预览 cron 表达式的后续运行时间
- 03在示例表中测试 SQL 查询结果
MCP 相关
通过 Streamable HTTP 暴露 `validar_regex`、`validar_cron` 和 `validar_sql` MCP 工具。调用需通过 x402 以 Base 主网上的 USDC 付款,支付信息包含在 MCP JSON-RPC 元数据中。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://regexcronsql-validator.encodari.workers.dev/mcpclaude mcp add --transport http encodi-regexcronsql-validator https://regexcronsql-validator.encodari.workers.dev/mcp{"mcpServers":{"encodi-regexcronsql-validator":{"type":"http","url":"https://regexcronsql-validator.encodari.workers.dev/mcp"}}}在 Cursor 中打开{"servers":{"encodi-regexcronsql-validator":{"type":"http","url":"https://regexcronsql-validator.encodari.workers.dev/mcp"}}}在 VS Code 中打开{"mcpServers":{"encodi-regexcronsql-validator":{"type":"http","url":"https://regexcronsql-validator.encodari.workers.dev/mcp"}}}{"mcpServers":{"encodi-regexcronsql-validator":{"serverUrl":"https://regexcronsql-validator.encodari.workers.dev/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
regexcronsql-validator
远程 MCP 服务(Cloudflare Workers,模板 remote-mcp-authless),包含两个根据真实执行结果进行验证的工具,而不是根据 LLM 对其功能的猜测:
validar_regex— 使用原生 JSRegExp,针对一组字符串运行模式。validar_cron— 使用cron-parser计算 cron 表达式的实际后续执行时间。validar_sql— 使用pg-mem在内存中的测试表上执行 SQL 查询(Postgres 方言),并返回实际结果行。
无需数据库,也没有持久状态:每次调用都会创建一个新的 McpServer(参见 src/index.ts 中的 createServer()),且调用相互独立——对于 validar_sql,测试表也遵循这一点:每次调用都会从头创建(使用内存中的 pg-mem),结束后即丢弃。
费用(x402)
三个工具都通过 x402 按次收费——在 Base mainnet 上使用真实 USDC 支付,无需 API key,付款对象为公开 facilitator x402.org/facilitator。付款信息通过 MCP 自身的 JSON-RPC(_meta)传输,而不是作为 HTTP header;参见 src/payments.ts。
| 工具 | 价格 |
|---|---|
validar_regex | $0.02 USDC |
validar_cron | $0.02 USDC |
validar_sql | $0.04 USDC |
未付款的 tools/call 会返回 isError: true,并附带客户端付款并重试所需的 accepts(网络、金额、payTo)——不会返回没有说明的异常。支持 x402 的 MCP 客户端若有自己的钱包(例如 @x402/mcp 中的 createX402MCPClient),可以自动签署并附加付款信息;要进行端到端测试,需要一个在 Base mainnet 上有真实资金的钱包及其私钥;本仓库不会处理或索取这些信息。
结构
src/
index.ts # registra las tools en el McpServer y expone el handler HTTP MCP
tools/
regex.ts # lógica pura de validar_regex (testeable sin Workers)
regex.test.ts
cron.ts # lógica pura de validar_cron (testeable sin Workers)
cron.test.ts
sql.ts # lógica pura de validar_sql (testeable sin Workers)
sql.test.ts
scripts/
dev-node.ts # servidor de dev que corre el handler en Node puro, sin wrangler
本地运行
⚠️ 关于 wrangler dev 的说明:Cloudflare Workers 的实际运行时(workerd)需要 macOS 13.5+。如果你的 Mac 版本较旧,wrangler dev(以及 npm run dev)会因 Unsupported macOS version 而失败。针对这种情况,本项目提供了一个纯 Node shim,可以在不需要 workerd 的情况下运行完全相同的 fetch() handler。
1. 安装依赖
npm install
2. 运行单元测试
npm test
3a. 如果你的 wrangler dev 可以运行(macOS 13.5+、Linux、Windows)
npm run dev
服务会在 http://localhost:8787/mcp 启动。
3b. 如果 wrangler dev 因 macOS 版本问题而失败
npm run dev:node
同一个 handler 会在 http://localhost:8787/mcp 启动,但直接运行在 Node 中(使用 tsx 和 watch mode)。关于这样做为何安全的详情,请参阅 scripts/dev-node.ts 中的注释(该 handler 不使用 KV 或 Durable Objects 等 Cloudflare bindings)。
4. 使用 curl 测试
传输方式为 MCP“Streamable HTTP”:所有请求都通过 POST 发送到 /mcp,格式为 JSON-RPC。
# 1) initialize (obligatorio primero en la mayoría de los clientes)
curl -s -X POST http://localhost:8787/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl-test","version":"0.0.1"}}}'
# 2) tools/list — ver el JSON Schema real que expone cada tool
curl -s -X POST http://localhost:8787/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'
# 3) tools/call — validar_regex
curl -s -X POST http://localhost:8787/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"validar_regex","arguments":{"pattern":"^[0-9]{3}-[0-9]{4}$","test_strings":["555-1234","abc-1234"]}}}'
# 4) tools/call — validar_cron
curl -s -X POST http://localhost:8787/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":4,"method":"tools/call","params":{"name":"validar_cron","arguments":{"cron_expression":"0 9 * * 1-5","from_date":"2026-08-07T00:00:00Z","count":5}}}'
# 5) tools/call — validar_sql
curl -s -X POST http://localhost:8787/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":5,"method":"tools/call","params":{"name":"validar_sql","arguments":{"query":"SELECT nombre, monto FROM ventas WHERE monto > 100 ORDER BY monto DESC","tables":[{"name":"ventas","rows":[{"id":1,"nombre":"Ana","monto":150.5},{"id":2,"nombre":"Luis","monto":42}]}]}}}'
响应采用 Server-Sent Events 格式(一行 event: message,加上一行 data: {...});其中的 data: 是常见的 JSON-RPC 响应。
5. 使用 MCP Inspector 测试(比 curl 更方便)
npx @modelcontextprotocol/inspector
浏览器中会打开一个 UI。在那里:
- Transport type:
Streamable HTTP。 - URL:
http://localhost:8787/mcp。 - 点击 Connect → Tools 选项卡 →
List Tools→ 应该能看到validar_regex、validar_cron和validar_sql及其 schema。 - 选择一个工具,填写输入,然后点击
Run Tool查看实际结果。
部署和目录收录
已部署在 https://regexcronsql-validator.encodari.workers.dev/mcp(Cloudflare Workers)。已发布到 MCP 官方注册表、Smithery、mcp.so,并已向 awesome-mcp-servers 提交 PR。
大多数代码更改只需运行 npm run deploy——除非价格、描述或服务 URL 发生变化,否则无需重新发布到各个目录。详情和未来改进计划请参阅 ROADMAP.md。
如何查看使用情况
- **实际收款:**在 BaseScan 查看收款钱包的 USDC 余额——每笔通过 x402 结算的付款都会显示在这里。
- **流量(无论是否付费):**Cloudflare 控制面板 → Workers & Pages →
regexcronsql-validator→ Metrics。 - **Smithery:**每个服务都有自己的统计页面。
目前还不能做什么
- 在 Base 主网上收取真实款项。开发期间如需切换回测试网(Base Sepolia,
eip155:84532),请在src/payments.ts中更改NETWORK。 - 没有数据库,也不会在调用之间保留状态(收费配置除外;该配置会缓存在内存中,并按 isolate 隔离——请参阅
src/payments.ts)。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。