Web standards and time reference for agents: HTTP codes, retries, deadlines. Paid via x402.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Add a duration to an instant and get the result, in UTC and in Tehran local time. Use it for a TTL, a lock expiry, or a token lifetime. ($0.003 per call)
the start instant, ISO-8601
how many units, may be negative
the unit of amount
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Add a duration to an instant and get the result, in UTC and in Tehran local time. Use it for a TTL, a lock expiry, or a token lifetime. ($0.003 per call)
| Argument | Type | Description |
|---|---|---|
| at* | string | the start instant, ISO-8601 |
| unit | string | the unit of amount |
| amount* | number | how many units, may be negative |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"at",
"amount"
],
"properties": {
"at": {
"type": "string",
"description": "the start instant, ISO-8601"
},
"unit": {
"enum": [
"milliseconds",
"seconds",
"minutes",
"hours",
"days",
"weeks"
],
"type": "string",
"default": "seconds",
"description": "the unit of amount"
},
"amount": {
"type": "number",
"description": "how many units, may be negative"
}
}
}Count the business days between two dates, excluding weekends. Use it to turn a calendar deadline into a working-day deadline. Public holidays are not excluded, so the count is an upper bound. ($0.005 per call)
| Argument | Type | Description |
|---|---|---|
| to* | string | end date, YYYY-MM-DD |
| from* | string | start date, YYYY-MM-DD |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"description": "end date, YYYY-MM-DD"
},
"from": {
"type": "string",
"description": "start date, YYYY-MM-DD"
}
}
}Check whether a Content-Type header matches what an endpoint kind expects, and say what to send instead when it does not. ($0.003 per call)
| Argument | Type | Description |
|---|---|---|
| contentType* | string | the Content-Type header value |
| endpointKind* | string | what the endpoint expects |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"contentType",
"endpointKind"
],
"properties": {
"contentType": {
"type": "string",
"description": "the Content-Type header value"
},
"endpointKind": {
"enum": [
"json",
"form",
"multipart",
"xml",
"text",
"binary"
],
"type": "string",
"description": "what the endpoint expects"
}
}
}Convert a duration between units and get it in plain language. Use it to express a timeout in the unit the caller asked for, or to check whether a limit is seconds, minutes or milliseconds. ($0.003 per call)
| Argument | Type | Description |
|---|---|---|
| to | string | the unit to convert into |
| from | string | the unit of value |
| value* | number | the magnitude |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"value"
],
"properties": {
"to": {
"enum": [
"milliseconds",
"seconds",
"minutes",
"hours",
"days",
"weeks"
],
"type": "string",
"default": "seconds",
"description": "the unit to convert into"
},
"from": {
"enum": [
"milliseconds",
"seconds",
"minutes",
"hours",
"days",
"weeks"
],
"type": "string",
"default": "seconds",
"description": "the unit of value"
},
"value": {
"type": "number",
"description": "the magnitude"
}
}
}Describe an instant: its date, weekday and time in UTC and in Tehran local time (UTC+03:30), plus the Unix timestamp. Use it when a response carries a timestamp and the local date matters. ($0.003 per call)
| Argument | Type | Description |
|---|---|---|
| at* | string | the instant, ISO-8601, e.g. 2026-01-01T21:30:00Z |
| timezone | string | which timezone the caller cares about |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"at"
],
"properties": {
"at": {
"type": "string",
"description": "the instant, ISO-8601, e.g. 2026-01-01T21:30:00Z"
},
"timezone": {
"enum": [
"utc",
"tehran"
],
"type": "string",
"default": "utc",
"description": "which timezone the caller cares about"
}
}
}Describe an HTTP method: whether it is safe, whether it is idempotent, whether it carries a body, and what it is for. ($0.003 per call)
| Argument | Type | Description |
|---|---|---|
| method* | string | e.g. GET, POST, PATCH |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"method"
],
"properties": {
"method": {
"type": "string",
"description": "e.g. GET, POST, PATCH"
}
}
}Look up an HTTP status code: what it means, what the client must do, whether it is retryable, whether it is safe to replay, the defining RFC and the common causes. ($0.003 per call)
| Argument | Type | Description |
|---|---|---|
| code* | number | string | status code, e.g. 429 |
| detail | string | summary = name and class only; decision = what the client should do |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"code"
],
"properties": {
"code": {
"type": [
"number",
"string"
],
"description": "status code, e.g. 429"
},
"detail": {
"enum": [
"summary",
"full",
"decision"
],
"type": "string",
"default": "full",
"description": "summary = name and class only; decision = what the client should do"
}
}
}List or search MIME types by top-level type or by keyword, for example image types or anything to do with calendars. ($0.003 per call)
| Argument | Type | Description |
|---|---|---|
| limit | number | |
| query | string | |
| topLevel | string | application, text, image, audio, video, font, model, multipart, message, example |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "number",
"default": 50
},
"query": {
"type": "string"
},
"topLevel": {
"type": "string",
"description": "application, text, image, audio, video, font, model, multipart, message, example"
}
}
}Look up a MIME type by full type or by file extension: the top-level type, what it is for, and the usual file extension. ($0.003 per call)
| Argument | Type | Description |
|---|---|---|
| type | string | full type, e.g. application/json |
| extension | string | extension, with or without the dot |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"type": {
"type": "string",
"description": "full type, e.g. application/json"
},
"extension": {
"type": "string",
"description": "extension, with or without the dot"
}
}
}Decide how a client should react to a status code: retry with backoff, check the outcome before retrying, or do not retry. Includes a suggested backoff schedule. ($0.005 per call)
| Argument | Type | Description |
|---|---|---|
| code* | number | string | |
| idempotent | boolean | whether the request being handled is idempotent |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"code"
],
"properties": {
"code": {
"type": [
"number",
"string"
]
},
"idempotent": {
"type": "boolean",
"default": true,
"description": "whether the request being handled is idempotent"
}
}
}Find the HTTP status code that matches a described situation, when the code is not known in advance — for example 'the caller is being rate limited' or 'upstream returned garbage'. ($0.005 per call)
| Argument | Type | Description |
|---|---|---|
| situation* | string | free text describing what went wrong |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"situation"
],
"properties": {
"situation": {
"type": "string",
"description": "free text describing what went wrong"
}
}
}How much time is between two instants: the direction, the total in every unit, and a day/hour/minute/second breakdown. Use it to compute a retry delay, a rate-limit reset, or whether a deadline has passed. ($0.003 per call)
| Argument | Type | Description |
|---|---|---|
| to* | string | end instant, ISO-8601 |
| from* | string | start instant, ISO-8601, e.g. 2026-01-01T00:00:00Z |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"description": "end instant, ISO-8601"
},
"from": {
"type": "string",
"description": "start instant, ISO-8601, e.g. 2026-01-01T00:00:00Z"
}
}
}Convert between a date and a Unix timestamp, in either direction. Use it when a payload carries one and the other is needed. ($0.003 per call)
| Argument | Type | Description |
|---|---|---|
| date | string | a date (YYYY-MM-DD) or instant, ISO-8601 |
| timestamp | number | a Unix timestamp in seconds |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"date": {
"type": "string",
"description": "a date (YYYY-MM-DD) or instant, ISO-8601"
},
"timestamp": {
"type": "number",
"description": "a Unix timestamp in seconds"
}
}
}Which day of the week a date falls on, and whether it is a business day. Use it before scheduling work or setting a deadline that lands on a weekend. ($0.003 per call)
| Argument | Type | Description |
|---|---|---|
| date* | string | the date, YYYY-MM-DD |
| weekStartsOn | string | which day the week is considered to start on |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"date"
],
"properties": {
"date": {
"type": "string",
"description": "the date, YYYY-MM-DD"
},
"weekStartsOn": {
"enum": [
"sunday",
"monday"
],
"type": "string",
"default": "sunday",
"description": "which day the week is considered to start on"
}
}
}