# Web Data Convertor

## Links

- Product page URL: https://www.agentpmt.com/marketplace/web-data-convertor
- Product markdown URL: https://www.agentpmt.com/marketplace/web-data-convertor?format=agent-md
- Product JSON URL: https://www.agentpmt.com/marketplace/web-data-convertor?format=agent-json

## Overview

- Product ID: 69496d41b54506f955d789f1
- Vendor: Apoth3osis
- Type: core utility
- Unit type: request
- Price: 500 credits
- Categories: Data Science, Network Protocols, Data Processing, Text Processing & Manipulation, Encoding & Decoding, Data Formatting & Conversion, Network & URL Utilities, File & Binary Operations, Clipboard & I/O Utilities
- Generated at: 2026-05-30T20:17:09.854Z

### Page Description

Web Data Converter is a format transformation utility that converts data between common web and application formats used in APIs, configuration files, and content management. It handles bidirectional conversion between JSON and CSV for tabular data interchange, preserving headers and automatically detecting numeric values during CSV parsing. XML to JSON conversion maintains attributes and nested structures, while JSON to XML produces well-formed markup suitable for legacy system integration. Configuration file workflows benefit from YAML to JSON and JSON to YAML transformations, enabling seamless translation between human-readable configs and programmatic data structures. Content creators can convert Markdown to HTML with support for tables, fenced code blocks, and extended syntax, or reverse the process by converting HTML back to clean Markdown for documentation and editing. URL query string parsing extracts parameters into structured JSON objects with automatic handling of multi-value parameters. Time conversion functions translate between Unix timestamps and human-readable date formats with full timezone support across all standard timezones, outputting both ISO 8601 and readable formats. All conversions include validation and clear error messages for malformed input.

### Agent Description

Convert between web formats: JSON↔CSV, JSON↔XML, JSON↔YAML, Markdown↔HTML, query strings, Unix timestamps↔dates with timezone support.

## Details

### Details

Web Data Converter is a format transformation utility that converts data between common web and application formats used in APIs, configuration files, and content management. It handles bidirectional conversion between JSON and CSV for tabular data interchange, preserving headers and automatically detecting numeric values during CSV parsing. XML to JSON conversion maintains attributes and nested structures, while JSON to XML produces well-formed markup suitable for legacy system integration. Configuration file workflows benefit from YAML to JSON and JSON to YAML transformations, enabling seamless translation between human-readable configs and programmatic data structures. Content creators can convert Markdown to HTML with support for tables, fenced code blocks, and extended syntax, or reverse the process by converting HTML back to clean Markdown for documentation and editing. URL query string parsing extracts parameters into structured JSON objects with automatic handling of multi-value parameters. Time conversion functions translate between Unix timestamps and human-readable date formats with full timezone support across all standard timezones, outputting both ISO 8601 and readable formats. All conversions include validation and clear error messages for malformed input.

### Actions

- `convert-unix-to-date` (5 credits): Convert a Unix timestamp to a human-readable date string with ISO format, readable format, and timezone info.
- `convert-date-to-unix` (5 credits): Convert a date string to a Unix timestamp. Auto-detects common formats or use a custom format string.
- `convert-json-to-csv` (5 credits): Convert a JSON object or array of objects to CSV format. All unique keys across objects become sorted column headers.
- `convert-csv-to-json` (5 credits): Convert CSV text (with header row) to a JSON array of objects. Numeric values are automatically converted.
- `convert-xml-to-json` (5 credits): Convert an XML string to JSON. Attributes stored under @attributes, text content under #text. Repeated same-tag elements become arrays.
- `convert-json-to-xml` (5 credits): Convert a JSON string to XML format. Single top-level key becomes root element; otherwise a root element wraps content. Use @attributes and #text keys for XML attributes and text.
- `convert-markdown-to-html` (5 credits): Convert Markdown text to HTML. Supports standard markdown, code blocks, tables, and fenced code.
- `convert-html-to-markdown` (5 credits): Convert HTML to clean Markdown format. Links are preserved, line wrapping is disabled.
- `convert-yaml-to-json` (5 credits): Convert a YAML string to JSON format.
- `convert-json-to-yaml` (5 credits): Convert a JSON string to YAML format with human-readable output.
- `convert-query-string-to-json` (5 credits): Parse a URL query string into a JSON object. Single-value params become strings, multi-value params become arrays. Leading '?' is optional.

### Use Cases

JSON to CSV conversion, CSV to JSON conversion, tabular data transformation, spreadsheet data export, API response to CSV, XML to JSON conversion, JSON to XML conversion, legacy system integration, SOAP to REST translation, configuration file conversion, YAML to JSON conversion, JSON to YAML conversion, Kubernetes config conversion, Docker Compose conversion, infrastructure as code conversion, Markdown to HTML conversion, HTML to Markdown conversion, documentation format conversion, content migration, CMS content transformation, blog post conversion, README rendering, static site generation, Unix timestamp conversion, epoch time to date, date to Unix timestamp, timestamp parsing, timezone conversion, UTC conversion, date format standardization, query string parsing, URL parameter extraction, form data parsing, GET parameter conversion, webhook payload transformation, API data transformation, data format translation, configuration management, data interchange, ETL data conversion, log timestamp parsing, event time conversion, ISO 8601 conversion, human readable date formatting, data pipeline transformation, automation data formatting, AI agent data processing, LLM output formatting

### Workflows Using This Tool

#### Appointment Scheduling and Route Planner

Takes a CSV or spreadsheet file with addresses, asks for a starting drive time, time per stop, and starting address, then parses the addresses, optimizes the driving route, calculates estimated arrival and departure times for each location, and generates a CSV with the full schedule. Returns the optimized route map, Google Maps directions link, and the schedule CSV both locally and via notification. Ideal for field sales, service technicians, delivery planning, or any multi-stop appointment scheduling.

- Page URL: https://www.agentpmt.com/agent-workflow-skills/appointment-scheduling-and-route-planner
- Markdown URL: https://www.agentpmt.com/agent-workflow-skills/appointment-scheduling-and-route-planner?format=agent-md
- Published: 2026-04-19T18:29:42.593Z

#### Route Planner From Address Photos

Automates multi-stop route planning from photos of addresses. Collects the user's starting address, time needed at each stop, and departure time. Processes uploaded images through OCR to extract addresses, compiles them into a CSV, optimizes the route order, calculates arrival and departure times for each location, and delivers the final plan with a map image, detailed schedule, and Google Maps link.

- Page URL: https://www.agentpmt.com/agent-workflow-skills/address-image-route-planner
- Markdown URL: https://www.agentpmt.com/agent-workflow-skills/address-image-route-planner?format=agent-md
- Published: 2026-04-19T18:29:42.593Z

### Related Content

No related content is currently linked to this product.

## Integration Details

### DynamicMCP

- Setup page URL: https://www.agentpmt.com/dynamic-mcp
- Claude setup guide: https://www.agentpmt.com/dynamic-mcp?platform=claude#videos
- ChatGPT setup guide: https://www.agentpmt.com/dynamic-mcp?platform=chatgpt#videos
- Cursor setup guide: https://www.agentpmt.com/dynamic-mcp?platform=cursor#videos
- Windsurf setup guide: https://www.agentpmt.com/dynamic-mcp?platform=windsurf#videos

Use the local router for command-based MCP clients. It forwards requests to `https://api.agentpmt.com/mcp` and does not execute tools locally.

```bash
npm install -g @agentpmt/mcp-router
agentpmt-setup
```

### REST API

The live page renders cURL, Python, JavaScript, and Node.js examples. Logged-in users see those examples prefilled with their own API and budget credentials.

- Purchase endpoint: https://api.agentpmt.com/products/purchase
- Authorization format: `Bearer <base64(apiKey:budgetKey)>`

```bash
curl -X POST "https://api.agentpmt.com/products/purchase" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer eW91ci1hcGkta2V5LWhlcmU6eW91ci1idWRnZXQta2V5LWhlcmU=" \
  -d '{
    "product_id": "69496d41b54506f955d789f1",
    "parameters": {
      "action": "convert-unix-to-date",
      "timestamp": 100,
      "timezone": "UTC"
    }
  }'
```

### Autonomous Agents

Autonomous agents can access this tool through AgentAddress credit balances or direct x402 payments. Use the Autonomous Agent API reference for endpoint shapes after choosing the access pattern below.

- Autonomous Agent API reference URL: https://www.agentpmt.com/docs/api-reference/autonomous-agents
- Autonomous Agent API reference markdown URL: https://www.agentpmt.com/docs/api-reference/autonomous-agents?format=agent-md
- Credit-Based Access Using AgentAddress: https://www.agentpmt.com/docs/autonomous-agents/credit-based-tool-usage-with-agentaddress
- AgentAddress is preferred for persistent file access, stored platform state, and maximum tool use ability across repeated calls.
- Direct x402 is for independent one-off tool calls that do not require shared files or stored platform state.
- Direct x402 public payments: USDC on Base, Arbitrum, Optimism, Polygon, and Avalanche.

### Schema

#### Parameters

- Schema type: actions

```json
{
  "actions": {
    "convert-unix-to-date": {
      "description": "Convert a Unix timestamp to a human-readable date string with ISO format, readable format, and timezone info.",
      "properties": {
        "timestamp": {
          "type": "integer",
          "description": "Unix timestamp in seconds since epoch.",
          "required": true
        },
        "timezone": {
          "type": "string",
          "description": "IANA timezone name (e.g., 'America/New_York', 'UTC', 'Europe/London'). Default: 'UTC'.",
          "required": false,
          "default": "UTC"
        }
      }
    },
    "convert-date-to-unix": {
      "description": "Convert a date string to a Unix timestamp. Auto-detects common formats or use a custom format string.",
      "properties": {
        "date_string": {
          "type": "string",
          "description": "Date string to convert (e.g., '2024-11-14 22:13:20', '2024-11-14').",
          "required": true
        },
        "date_format": {
          "type": "string",
          "description": "Python strftime format string for parsing. If omitted, common formats are tried automatically.",
          "required": false
        }
      }
    },
    "convert-json-to-csv": {
      "description": "Convert a JSON object or array of objects to CSV format. All unique keys across objects become sorted column headers.",
      "properties": {
        "json_text": {
          "type": "string",
          "description": "Valid JSON string (object or array of objects).",
          "required": true
        }
      }
    },
    "convert-csv-to-json": {
      "description": "Convert CSV text (with header row) to a JSON array of objects. Numeric values are automatically converted.",
      "properties": {
        "csv_text": {
          "type": "string",
          "description": "CSV string with a header row.",
          "required": true
        }
      }
    },
    "convert-xml-to-json": {
      "description": "Convert an XML string to JSON. Attributes stored under @attributes, text content under #text. Repeated same-tag elements become arrays.",
      "properties": {
        "xml_text": {
          "type": "string",
          "description": "Valid XML string.",
          "required": true
        }
      }
    },
    "convert-json-to-xml": {
      "description": "Convert a JSON string to XML format. Single top-level key becomes root element; otherwise a root element wraps content. Use @attributes and #text keys for XML attributes and text.",
      "properties": {
        "json_text": {
          "type": "string",
          "description": "Valid JSON string.",
          "required": true
        }
      }
    },
    "convert-markdown-to-html": {
      "description": "Convert Markdown text to HTML. Supports standard markdown, code blocks, tables, and fenced code.",
      "properties": {
        "markdown_text": {
          "type": "string",
          "description": "Markdown content to convert.",
          "required": true
        }
      }
    },
    "convert-html-to-markdown": {
      "description": "Convert HTML to clean Markdown format. Links are preserved, line wrapping is disabled.",
      "properties": {
        "html_text": {
          "type": "string",
          "description": "HTML content to convert.",
          "required": true
        }
      }
    },
    "convert-yaml-to-json": {
      "description": "Convert a YAML string to JSON format.",
      "properties": {
        "yaml_text": {
          "type": "string",
          "description": "Valid YAML string.",
          "required": true
        }
      }
    },
    "convert-json-to-yaml": {
      "description": "Convert a JSON string to YAML format with human-readable output.",
      "properties": {
        "json_text": {
          "type": "string",
          "description": "Valid JSON string.",
          "required": true
        }
      }
    },
    "convert-query-string-to-json": {
      "description": "Parse a URL query string into a JSON object. Single-value params become strings, multi-value params become arrays. Leading '?' is optional.",
      "properties": {
        "query_string": {
          "type": "string",
          "description": "URL query string (e.g., 'key1=value1&key2=value2').",
          "required": true
        }
      }
    }
  },
  "properties": {
    "action": {
      "type": "string",
      "description": "Use 'get_instructions' to retrieve documentation. The conversion operation to perform. Available actions: Time Conversions (convert-unix-to-date, convert-date-to-unix), Data Format Conversions (convert-json-to-csv, convert-csv-to-json, convert-xml-to-json, convert-json-to-xml), Markup Conversions (convert-markdown-to-html, convert-html-to-markdown), YAML Conversions (convert-yaml-to-json, convert-json-to-yaml), Query String Conversion (convert-query-string-to-json)",
      "required": true,
      "enum": [
        "get_instructions",
        "convert-unix-to-date",
        "convert-date-to-unix",
        "convert-json-to-csv",
        "convert-csv-to-json",
        "convert-xml-to-json",
        "convert-json-to-xml",
        "convert-markdown-to-html",
        "convert-html-to-markdown",
        "convert-yaml-to-json",
        "convert-json-to-yaml",
        "convert-query-string-to-json"
      ]
    },
    "timestamp": {
      "type": "integer",
      "description": "Unix timestamp (seconds since epoch) for convert-unix-to-date action. Required for: convert-unix-to-date",
      "required": false
    },
    "timezone": {
      "type": "string",
      "description": "Timezone for time conversions (IANA timezone format, e.g., 'America/New_York', 'UTC', 'Europe/London'). Default: 'UTC'. Used for: convert-unix-to-date",
      "required": false,
      "default": "UTC"
    },
    "date_string": {
      "type": "string",
      "description": "Date string to convert to Unix timestamp for convert-date-to-unix action. Supports common formats or custom format if 'format' parameter is provided. Required for: convert-date-to-unix",
      "required": false
    },
    "format": {
      "type": "string",
      "description": "Python strftime format string for parsing date_string in convert-date-to-unix action. If not provided, common formats are tried automatically. Example: '%Y-%m-%d %H:%M:%S'. Used for: convert-date-to-unix",
      "required": false
    },
    "json_text": {
      "type": "string",
      "description": "JSON string to convert to another format. Required for: convert-json-to-csv, convert-json-to-xml, convert-json-to-yaml",
      "required": false
    },
    "csv_text": {
      "type": "string",
      "description": "CSV string to convert to JSON. Must include header row. Required for: convert-csv-to-json",
      "required": false
    },
    "xml_text": {
      "type": "string",
      "description": "XML string to convert to JSON. Required for: convert-xml-to-json",
      "required": false
    },
    "yaml_text": {
      "type": "string",
      "description": "YAML string to convert to JSON. Required for: convert-yaml-to-json",
      "required": false
    },
    "markdown_text": {
      "type": "string",
      "description": "Markdown string to convert to HTML. Supports standard markdown, code blocks, tables, and fenced code. Required for: convert-markdown-to-html",
      "required": false
    },
    "html_text": {
      "type": "string",
      "description": "HTML string to convert to Markdown. Required for: convert-html-to-markdown",
      "required": false
    },
    "query_string": {
      "type": "string",
      "description": "URL query string to parse into JSON object. Can include or omit leading '?'. Example: 'key1=value1&key2=value2'. Required for: convert-query-string-to-json",
      "required": false
    }
  }
}
```

### Usage Instructions

# Web Data Convertor

Convert between common web data formats including JSON, CSV, XML, YAML, HTML, Markdown, query strings, and Unix timestamps.

## Actions

### convert-unix-to-date

Convert a Unix timestamp to a human-readable date string.

**Required fields:**
- `action`: `"convert-unix-to-date"`
- `timestamp` (integer): Unix timestamp in seconds since epoch

**Optional fields:**
- `timezone` (string): IANA timezone name. Default: `"UTC"`. Examples: `"America/New_York"`, `"Europe/London"`, `"Asia/Tokyo"`

**Returns:** ISO format date, readable date string, and timezone used.

**Example:**
```json
{
  "action": "convert-unix-to-date",
  "timestamp": 1700000000,
  "timezone": "America/New_York"
}
```

---

### convert-date-to-unix

Convert a date string to a Unix timestamp.

**Required fields:**
- `action`: `"convert-date-to-unix"`
- `date_string` (string): Date string to convert

**Optional fields:**
- `format` (string): Python strftime format string for parsing. If omitted, common formats are tried automatically.

**Supported auto-detected formats:** `YYYY-MM-DD HH:MM:SS`, `YYYY-MM-DD`, `YYYY/MM/DD HH:MM:SS`, `YYYY/MM/DD`, `DD-MM-YYYY HH:MM:SS`, `DD-MM-YYYY`, `DD/MM/YYYY HH:MM:SS`, `DD/MM/YYYY`

**Example:**
```json
{
  "action": "convert-date-to-unix",
  "date_string": "2024-11-14 22:13:20"
}
```

**Example with custom format:**
```json
{
  "action": "convert-date-to-unix",
  "date_string": "14-Nov-2024 10:30 PM",
  "format": "%d-%b-%Y %I:%M %p"
}
```

---

### convert-json-to-csv

Convert a JSON object or array of objects to CSV format.

**Required fields:**
- `action`: `"convert-json-to-csv"`
- `json_text` (string): Valid JSON string (object or array of objects)

**Notes:** A single object is treated as a one-row CSV. All unique keys across objects become CSV column headers, sorted alphabetically.

**Example:**
```json
{
  "action": "convert-json-to-csv",
  "json_text": "[{\"name\":\"Alice\",\"age\":30},{\"name\":\"Bob\",\"age\":25}]"
}
```

---

### convert-csv-to-json

Convert CSV text to a JSON array of objects.

**Required fields:**
- `action`: `"convert-csv-to-json"`
- `csv_text` (string): CSV string with a header row

**Notes:** The first row is used as field names. Numeric values are automatically converted to numbers.

**Example:**
```json
{
  "action": "convert-csv-to-json",
  "csv_text": "name,age,city\nAlice,30,NYC\nBob,25,LA"
}
```

---

### convert-xml-to-json

Convert an XML string to JSON.

**Required fields:**
- `action`: `"convert-xml-to-json"`
- `xml_text` (string): Valid XML string

**Notes:** XML attributes are stored under `@attributes`. Text content is stored under `#text`. Repeated child elements with the same tag become arrays.

**Example:**
```json
{
  "action": "convert-xml-to-json",
  "xml_text": "<users><user id=\"1\"><name>Alice</name></user><user id=\"2\"><name>Bob</name></user></users>"
}
```

---

### convert-json-to-xml

Convert a JSON string to XML format.

**Required fields:**
- `action`: `"convert-json-to-xml"`
- `json_text` (string): Valid JSON string

**Notes:** If the JSON has a single top-level key, that key becomes the root element. Otherwise, a `<root>` element wraps the content. Use `@attributes` and `#text` keys to control XML attributes and text content.

**Example:**
```json
{
  "action": "convert-json-to-xml",
  "json_text": "{\"book\":{\"@attributes\":{\"id\":\"1\"},\"title\":\"Example\",\"author\":\"Jane\"}}"
}
```

---

### convert-markdown-to-html

Convert Markdown text to HTML.

**Required fields:**
- `action`: `"convert-markdown-to-html"`
- `markdown_text` (string): Markdown content to convert

**Notes:** Supports standard Markdown, code blocks, tables, and fenced code blocks.

**Example:**
```json
{
  "action": "convert-markdown-to-html",
  "markdown_text": "# Hello World\n\nThis is **bold** and this is *italic*.\n\n- Item 1\n- Item 2"
}
```

---

### convert-html-to-markdown

Convert HTML to Markdown format.

**Required fields:**
- `action`: `"convert-html-to-markdown"`
- `html_text` (string): HTML content to convert

**Notes:** Links are preserved. Line wrapping is disabled for clean output.

**Example:**
```json
{
  "action": "convert-html-to-markdown",
  "html_text": "<h1>Title</h1><p>A paragraph with <a href=\"https://example.com\">a link</a>.</p>"
}
```

---

### convert-yaml-to-json

Convert a YAML string to JSON.

**Required fields:**
- `action`: `"convert-yaml-to-json"`
- `yaml_text` (string): Valid YAML string

**Example:**
```json
{
  "action": "convert-yaml-to-json",
  "yaml_text": "name: Alice\nage: 30\nhobbies:\n  - reading\n  - hiking"
}
```

---

### convert-json-to-yaml

Convert a JSON string to YAML format.

**Required fields:**
- `action`: `"convert-json-to-yaml"`
- `json_text` (string): Valid JSON string

**Example:**
```json
{
  "action": "convert-json-to-yaml",
  "json_text": "{\"name\":\"Alice\",\"age\":30,\"hobbies\":[\"reading\",\"hiking\"]}"
}
```

---

### convert-query-string-to-json

Parse a URL query string into a JSON object.

**Required fields:**
- `action`: `"convert-query-string-to-json"`
- `query_string` (string): URL query string (leading `?` is optional)

**Notes:** Parameters with a single value return a string. Parameters appearing multiple times return an array of values.

**Example:**
```json
{
  "action": "convert-query-string-to-json",
  "query_string": "?name=Alice&city=NYC&tag=a&tag=b"
}
```

---

## Common Workflows

1. **API response reformatting:** Convert JSON API responses to CSV for spreadsheet import using `convert-json-to-csv`.
2. **Configuration migration:** Convert YAML config files to JSON or vice versa using `convert-yaml-to-json` / `convert-json-to-yaml`.
3. **Content publishing:** Convert Markdown drafts to HTML for web publishing using `convert-markdown-to-html`.
4. **Legacy system integration:** Convert between XML and JSON when bridging old and new systems using `convert-xml-to-json` / `convert-json-to-xml`.
5. **URL parameter extraction:** Parse query strings from URLs into structured JSON using `convert-query-string-to-json`.
6. **Timestamp handling:** Convert between Unix timestamps and readable dates for logging or scheduling using `convert-unix-to-date` / `convert-date-to-unix`.

## Important Notes

- All input data is passed as strings in the respective text parameters (`json_text`, `csv_text`, `xml_text`, etc.).
- CSV input must include a header row for `convert-csv-to-json`.
- XML-to-JSON and JSON-to-XML conversions use `@attributes` for XML attributes and `#text` for text content.
- Timezone values must use IANA format (e.g., `"America/Chicago"`, not `"CST"`).
- JSON inputs must be valid JSON strings; malformed input returns an error.

### Frequently Asked Questions

#### How do I connect this tool to an external agent?

- Page URL: https://www.agentpmt.com/faq
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md

You can install the local MCP server by opening a terminal and running:

```
npm install -g @agentpmt/mcp-router
agentpmt-setup
```

This will connect you to local agents like Claude Code, Windsurf, Grok Build, Cursor, etc.

Alternatively you can connect to the hosted version with this config block, no installation required:

```
{
  "mcpServers": {
    "agentpmt": {
      "type": "streamable-http",
      "url": "https://api.agentpmt.com/mcp",
      "headers": {
        "Authorization": "Bearer <AGENTPMT_BEARER_TOKEN>",
        "x-instance-metadata": "{\"client\":\"generic-mcp\",\"platform\":\"remote\"}"
      }
    }
  }
}
```

[View MCP Connection Instructions](/docs/mcp-reference/connection) for more details.

#### How does an external agent use this tool?

- Page URL: https://www.agentpmt.com/faq
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md

After the external agent is connected to an Agent Group that can use this tool, paste this prompt into the agent:

> Call the AgentPMT-Tool-Search-and-Execution tool with action 'get\_schema' and tool\_id 69496d41b54506f955d789f1 ("Web Data Convertor"). Then call the same tool with action 'call\_tool', tool\_id 69496d41b54506f955d789f1, and the parameters needed for my request.

The agent should fetch the tool schema first, collect the required parameters for your request, and then call the tool through AgentPMT.

### Dependencies

This product has no public dependency products.