now.shiply/shiply
Publish any app in one call: SQL database, functions, email, and a custom domain. Flat price.
Browser AutomationCommunicationAnalytics
publish_site · inputSchema.properties.client.properties.clientEmail.pattern
"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$": lookaround ((?=, (?!, (?<=, (?<!) is not RE2-compatible
create_drive · inputSchema.properties.client.properties.clientEmail.pattern
"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$": lookaround ((?=, (?!, (?<=, (?<!) is not RE2-compatible
forward_thread · inputSchema.properties.to.pattern
"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$": lookaround ((?=, (?!, (?<=, (?<!) is not RE2-compatible
create_project · inputSchema.properties.customerEmail.pattern
"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$": lookaround ((?=, (?!, (?<=, (?<!) is not RE2-compatible
send_email · inputSchema.properties.to.pattern
"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$": lookaround ((?=, (?!, (?<=, (?<!) is not RE2-compatible
set_mailbox · inputSchema.properties.notifyTo.pattern
"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$": lookaround ((?=, (?!, (?<=, (?<!) is not RE2-compatible
updated 29h ago·validator v0.2.0·re-checked weekly
| Date | Grade | Errors | Warnings |
|---|---|---|---|
| 2026-08-17 | D | 6 | 0 |
| 2026-08-10 | D | 6 | 0 |
| 2026-08-03 | D | 6 | 0 |
| 2026-07-27 | D | 6 | 0 |
| 2026-07-20 | D | 6 | 0 |
| 2026-07-08 | D | 6 | 0 |
Graded by connecting to the live server and validating every tool schema. Grades re-run on every sync. Findings and grades are never editable by the publisher.
Related servers
Kick the tires on your own server: run a check