Remove or replace selected punctuation categories from text.
Use this endpoint when your app or AI agent needs exact JSON instead of spending LLM tokens on well-defined utility work.
Prefer the browser version? Open the Remove Punctuation on miniwebtool.com.
POST https://api.miniwebtool.com/v1/tools/remove-punctuation/run
| Field | Type | Req. |
|---|---|---|
text
|
str |
✓ |
action
remove | replace
|
str |
— |
remove_periods
|
bool |
— |
remove_commas
|
bool |
— |
remove_quotes
|
bool |
— |
remove_brackets
|
bool |
— |
remove_dashes
|
bool |
— |
remove_slashes
|
bool |
— |
remove_special
|
bool |
— |
remove_other
|
bool |
— |
no_body_logs{
"request_id": "01K...",
"tool": "remove-punctuation",
"tool_version": "2026-04-22",
"credits_used": 1,
"result": { ... }
}
curl -X POST https://api.miniwebtool.com/v1/tools/remove-punctuation/run \
-H 'Authorization: Bearer mwt_live_YOUR_KEY' \
-H 'Content-Type: application/json' \
-d '{"text":"Hello, world! It works: yes.","action":"remove","remove_periods":true,"remove_commas":true,"remove_quotes":true,"remove_brackets":true,"remove_dashes":true,"remove_slashes":true,"remove_special":true,"remove_other":true}'
import requests
resp = requests.post(
'https://api.miniwebtool.com/v1/tools/remove-punctuation/run',
headers={'Authorization': 'Bearer mwt_live_YOUR_KEY'},
json={'text': 'Hello, world! It works: yes.', 'action': 'remove', 'remove_periods': True, 'remove_commas': True, 'remove_quotes': True, 'remove_brackets': True, 'remove_dashes': True, 'remove_slashes': True, 'remove_special': True, 'remove_other': True},
)
resp.raise_for_status()
print(resp.json())
const resp = await fetch(
'https://api.miniwebtool.com/v1/tools/remove-punctuation/run',
{
method: 'POST',
headers: {
'Authorization': 'Bearer mwt_live_YOUR_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({"text":"Hello, world! It works: yes.","action":"remove","remove_periods":true,"remove_commas":true,"remove_quotes":true,"remove_brackets":true,"remove_dashes":true,"remove_slashes":true,"remove_special":true,"remove_other":true}),
}
);
const data = await resp.json();
console.log(data);
<?php
$ch = curl_init('https://api.miniwebtool.com/v1/tools/remove-punctuation/run');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer mwt_live_YOUR_KEY',
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'text' => 'Hello, world! It works: yes.',
'action' => 'remove',
'remove_periods' => true,
'remove_commas' => true,
'remove_quotes' => true,
'remove_brackets' => true,
'remove_dashes' => true,
'remove_slashes' => true,
'remove_special' => true,
'remove_other' => true
]),
]);
$resp = curl_exec($ch);
curl_close($ch);
print_r(json_decode($resp, true));
require 'net/http'
require 'json'
require 'uri'
uri = URI('https://api.miniwebtool.com/v1/tools/remove-punctuation/run')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = (uri.scheme == 'https')
req = Net::HTTP::Post.new(uri)
req['Authorization'] = 'Bearer mwt_live_YOUR_KEY'
req['Content-Type'] = 'application/json'
req.body = {
'text' => 'Hello, world! It works: yes.',
'action' => 'remove',
'remove_periods' => true,
'remove_commas' => true,
'remove_quotes' => true,
'remove_brackets' => true,
'remove_dashes' => true,
'remove_slashes' => true,
'remove_special' => true,
'remove_other' => true
}.to_json
resp = http.request(req)
puts JSON.parse(resp.body).inspect
package main
import (
"bytes"
"encoding/json"
"fmt"
"io"
"net/http"
)
func main() {
body, _ := json.Marshal(map[string]interface{}{
"text": "Hello, world! It works: yes.",
"action": "remove",
"remove_periods": true,
"remove_commas": true,
"remove_quotes": true,
"remove_brackets": true,
"remove_dashes": true,
"remove_slashes": true,
"remove_special": true,
"remove_other": true,
})
req, _ := http.NewRequest("POST", "https://api.miniwebtool.com/v1/tools/remove-punctuation/run", bytes.NewReader(body))
req.Header.Set("Authorization", "Bearer mwt_live_YOUR_KEY")
req.Header.Set("Content-Type", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer resp.Body.Close()
out, _ := io.ReadAll(resp.Body)
fmt.Println(string(out))
}
import java.net.URI;
import java.net.http.*;
var client = HttpClient.newHttpClient();
var req = HttpRequest.newBuilder()
.uri(URI.create("https://api.miniwebtool.com/v1/tools/remove-punctuation/run"))
.header("Authorization", "Bearer mwt_live_YOUR_KEY")
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString("{\"text\":\"Hello, world! It works: yes.\",\"action\":\"remove\",\"remove_periods\":true,\"remove_commas\":true,\"remove_quotes\":true,\"remove_brackets\":true,\"remove_dashes\":true,\"remove_slashes\":true,\"remove_special\":true,\"remove_other\":true}"))
.build();
var resp = client.send(req, HttpResponse.BodyHandlers.ofString());
System.out.println(resp.body());
text, . See the Request body table below for the full schema.
https://api.miniwebtool.com/v1/tools/remove-punctuation/run
Authorization: Bearer <key> and Content-Type: application/json. Copy-paste snippets in 7 languages are under Code examples.
{request_id, tool, tool_version, credits_used, result}. The typed output lives in result.
Remove or replace selected punctuation categories from text. Use it when you need exact JSON instead of asking an LLM to recreate well-defined utility logic.
1 credit per successful call. Failed calls (validation errors, 5xx) don't bill.
Required fields: text. Full schema at /v1/openapi.json.
Yes — same input, same output, forever. Tool version 2026-04-22; output shape is stable within a major version.
Yes. Connect to https://api.miniwebtool.com/v1/mcp over the Model Context Protocol. The agent discovers `remove-punctuation` with its JSON Schema automatically, so the model can plan while MiniWebtool handles the exact tool result.
JSON with a stable envelope: `{request_id, tool, tool_version, credits_used, result}`. Errors are RFC 7807 `application/problem+json`.
Every endpoint on this site is also exposed via the
Model Context Protocol at
https://api.miniwebtool.com/v1/mcp.
Claude, Cursor, and any MCP-capable agent can discover this tool
(remove-punctuation)
and its JSON Schema automatically — no client codegen.
# List tools the agent can call
curl -s https://api.miniwebtool.com/v1/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' \
| jq '.result.tools[] | select(.name=="remove-punctuation")'