regexcronsql-validator
ภาพรวม
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Valida regex, cron y SQL contra ejecucion real. Pago por llamada via x402/USDC.
สามเสาของ PopNx MCP
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
- เสียงผู้ใช้iยังไม่มีรีวิวรีวิวเปิดพร้อมระบบบัญชีในขั้นถัดไป
- ผลตรวจเบื้องต้นของเราiผ่าน 2 จาก 3 ข้อตรวจจากข้อมูลที่เปิดอยู่ ยังไม่ได้สแกนโค้ด
- การใช้งานiยังใหม่มาก★ 0
ใช้ทำอะไรได้
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
- การเชื่อมต่อ: รันบนคลาวด์
- ช่องทาง (transport): Streamable HTTP
- หมวด: ฐานข้อมูลและชุดข้อมูล
ติดตั้ง
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ก่อนติดตั้ง
- ผลตรวจเบื้องต้น: ผ่าน 2 จาก 3 ข้อ ไม่ผ่าน
- รันบนเครื่องของผู้ทำ สิ่งที่คุณถามจะผ่านเครื่องของเขา
- ทะเบียนไม่ได้ระบุ key ที่ต้องใส่
ต้องเตรียมก่อน
- รันบนคลาวด์ไม่ต้องลงโปรแกรมเพิ่ม ต่อผ่านอินเทอร์เน็ตได้เลย
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ใช้ได้ทั้ง Claude บนเว็บ แอปคอมพิวเตอร์ และมือถือ:
- เปิด Settings → Connectors
- กด Add custom connector
- วางที่อยู่ด้านล่างแล้วกด Add
- ถ้าให้ล็อกอิน ให้ล็อกอินกับผู้ทำ
https://regexcronsql-validator.encodari.workers.dev/mcpพิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http regexcronsql-validator https://regexcronsql-validator.encodari.workers.dev/mcpหรือคัดลอกค่าตั้งเอง
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"regexcronsql-validator": {
"url": "https://regexcronsql-validator.encodari.workers.dev/mcp"
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
หรือคัดลอกค่าตั้งเอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"regexcronsql-validator": {
"type": "http",
"url": "https://regexcronsql-validator.encodari.workers.dev/mcp"
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ChatGPT ต่อได้เฉพาะ server ที่อยู่บนอินเทอร์เน็ต:
- เปิด ChatGPT บนเว็บ → Settings → Connectors (Apps)
- กด Create หรือ Add (บางแพ็กเกจต้องเปิด Developer mode ใน Advanced ก่อน)
- วางที่อยู่ด้านล่าง ตั้งชื่อ แล้วบันทึก
- ถ้าให้ล็อกอิน ให้ล็อกอินกับผู้ทำ
https://regexcronsql-validator.encodari.workers.dev/mcpชื่อเมนูอาจต่างกันเล็กน้อยตามแพ็กเกจและรุ่นของแอป
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ใช้กับโปรแกรมไหนได้
ดูจากแบบการต่อของ server ตัวนี้ และเอกสารของผู้ทำโปรแกรมแต่ละตัว ตรวจเมื่อ 10 พ.ย. 2569
ต่อผ่านคลาวด์ได้ใน
ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast
ทำอะไรได้บ้าง
ตอนตรวจล่าสุด server ไม่ตอบ จึงอ่านรายการเครื่องมือไม่ได้
ผลตรวจเบื้องต้นi
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 10 พ.ย. 2569
- ✓ ผ่าน
ตัวตนผู้ทำตรงกับ repo
ชื่อใน registry ยืนยันด้วยบัญชี GitHub encodi ซึ่งเป็นเจ้าของ repo
- ✓ ผ่าน
ยังมีคนดูแล
มีการแก้โค้ดล่าสุด 3 เดือนที่ผ่านมา
- … ยังไม่ตรวจ
มีสัญญาอนุญาต (license)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
- ✕ ไม่ผ่าน
endpoint ตอบ
ไม่ตอบภายใน 6 วินาทีตอนที่เราตรวจ
- – ไม่เกี่ยว
ล็อกอินแบบ OAuth
ไม่ตอบภายใน 6 วินาทีตอนที่เราตรวจ
- … ยังไม่ตรวจ
คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง
ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint
เทียบกับตัวอื่นในหมวด ฐานข้อมูลและชุดข้อมูลi
- ดาวมากกว่า 0% ของอีก 1160 ตัวในหมวดนี้
- ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 22% ของอีก 1160 ตัวในหมวดนี้
- ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 44% ของอีก 1160 ตัวในหมวดนี้
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
คำถามที่พบบ่อย
regexcronsql-validator ปลอดภัยไหม?
จากการตรวจเบื้องต้นของเรา ผ่าน 2 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใช้กุญแจหรือรหัสอะไรบ้าง?
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
ตัวนี้รันบนเครื่องหรือบนคลาวด์?
รันบนคลาวด์ของผู้ทำ ต่อผ่านอินเทอร์เน็ตได้เลย ไม่ต้องลงโปรแกรม แต่ข้อมูลที่ส่งให้จะผ่านเซิร์ฟเวอร์ของผู้ทำ
ยังมีคนดูแลอยู่ไหม?
repo บน GitHub มีการแก้โค้ดล่าสุด 3 เดือนที่ผ่านมา และส่งรุ่นล่าสุด (1.0.0) เข้า registry 3 เดือนที่ผ่านมา
ใช้กับโปรแกรมไหนได้บ้าง?
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
มีตัวไหนใช้แทนได้บ้าง?
ในหมวดเดียวกันมี Dbx, MCP Toolbox for Databases, MCP Toolbox for Databases
ตัวที่ใช้แทนได้
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Toolbox for Databases
MCP Toolbox for Databases enables your agent to connect to your database.
MCP Toolbox for Databases
MCP Toolbox for Databases enables your agent to connect to your database.
README จากผู้ทำ
เปิดอ่าน README
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
regexcronsql-validator
Servidor MCP remoto (Cloudflare Workers, template remote-mcp-authless) con dos tools que validan contra ejecución real, no contra lo que un LLM cree que hacen:
- `validar_regex` — corre el patrón con
RegExpnativo de JS contra una lista de strings. - `validar_cron` — calcula las próximas ejecuciones reales de una expresión cron con
cron-parser. - `validar_sql` — ejecuta una consulta SQL (dialecto Postgres) contra tablas de prueba en memoria con
pg-memy devuelve las filas reales resultantes.
Sin base de datos, sin estado persistente: cada llamada crea un McpServer nuevo (ver createServer() en src/index.ts) y es autocontenida — para validar_sql esto también aplica a las tablas de prueba: se crean desde cero en cada llamada (pg-mem en memoria) y se descartan al terminar.
Cobro (x402)
Las tres tools cobran por llamada vía x402 — pago en USDC real sobre Base mainnet, sin API key, contra el facilitator público x402.org/facilitator. El pago viaja dentro del propio JSON-RPC de MCP (_meta), no como header HTTP; ver src/payments.ts.
| Tool | Precio |
|---|---|
validar_regex | $0.02 USDC |
validar_cron | $0.02 USDC |
validar_sql | $0.04 USDC |
Un tools/call sin pago devuelve isError: true con los accepts (red, monto, payTo) que el cliente necesita para pagar y reintentar — no una excepción sin explicar. Un cliente MCP x402-aware con wallet propia (ej. createX402MCPClient de @x402/mcp) firma el pago y lo adjunta automáticamente; probarlo end-to-end requiere una wallet con fondos reales en Base mainnet y su clave privada, algo que este repo no maneja ni pide.
Estructura
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
Correrlo local
⚠️ Nota sobre `wrangler dev`: el runtime real de Cloudflare Workers (workerd) requiere macOS 13.5+. Si tu Mac tiene una versión más vieja, wrangler dev (y npm run dev) van a fallar con Unsupported macOS version. Para ese caso este proyecto trae un shim en Node puro que corre exactamente el mismo fetch() handler sin necesitar workerd.
1. Instalar dependencias
npm install
2. Correr los tests unitarios
npm test
3a. Si tu wrangler dev funciona (macOS 13.5+, Linux, Windows)
npm run dev
Levanta en http://localhost:8787/mcp.
3b. Si wrangler dev falla por versión de macOS
npm run dev:node
Levanta el mismo handler en http://localhost:8787/mcp pero corriendo en Node directo (usa tsx, con watch mode). Ver el comentario en scripts/dev-node.ts para el detalle de por qué esto es seguro (el handler no usa bindings de Cloudflare como KV o Durable Objects).
4. Probar con curl
El transporte es MCP "Streamable HTTP": todo entra por POST a /mcp como 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}]}]}}}'
Las respuestas vienen como Server-Sent Events (una línea event: message + data: {...}); el data: es la respuesta JSON-RPC de siempre.
5. Probar con MCP Inspector (más cómodo que curl)
npx @modelcontextprotocol/inspector
Abre una UI en el navegador. Ahí:
- Transport type:
Streamable HTTP. - URL:
http://localhost:8787/mcp. - Connect → pestaña Tools →
List Tools→ deberías vervalidar_regex,validar_cronyvalidar_sqlcon sus schemas. - Elegí una tool, completá los inputs y
Run Toolpara ver el resultado real.
Deploy y listados
Desplegado en https://regexcronsql-validator.encodari.workers.dev/mcp (Cloudflare Workers). Publicado en el registry oficial de MCP, Smithery, mcp.so y con PR abierto a awesome-mcp-servers.
La mayoría de los cambios de código son solo npm run deploy — no hace falta re-publicar en los listados salvo que cambie el precio, la descripción, o la URL del servidor. Ver ROADMAP.md para el detalle y el plan de mejoras a futuro.
Cómo ver si se está usando
- Pagos reales: balance de USDC de la wallet de cobro en BaseScan — cada pago liquidado por x402 aparece ahí.
- Tráfico (pagado o no): dashboard de Cloudflare → Workers & Pages →
regexcronsql-validator→ Metrics. - Smithery: tiene su propia página de stats por servidor.
Qué NO hace (todavía)
- Cobra en Base mainnet con dinero real. Para volver a testnet (Base Sepolia,
eip155:84532) durante desarrollo, cambiáNETWORKensrc/payments.ts. - No tiene base de datos ni estado persistente entre llamadas (más allá de la config de cobro, cacheada en memoria por isolate — ver
src/payments.ts).