Overview
Pig Latin uses the pig-latinizer library to translate `text`. Words are split on whitespace, slashes, underscores and dashes. A word that begins with a consonant has its leading consonant cluster moved to the end followed by "ay", so "packed" becomes "ackedpay"; a word that begins with a vowel gets "yay" appended, so "is" becomes "isyay". Y is treated as a consonant at the start of a word and as a vowel elsewhere.
Capitalization is carried over to the translated word, so "The" becomes "Ethay" and an all-caps word stays all caps. Punctuation, spaces, tabs and line breaks are preserved in place. Apostrophes inside contractions and possessives are removed so "don't" translates cleanly, and when a translation would end in a hard-to-read repeated consonant the library inserts a hyphen. Tokens with no sensible Pig Latin form, such as words containing digits, are passed through unchanged.
`exclusions` is an optional array of strings. Each entry must be a string; any other type returns a 400 error naming the bad index. Entries are trimmed and duplicates removed, and each remaining entry is added to the translator's exclusion list so matching words are output untranslated. The cleaned list is echoed back as `exclusions`, or as an empty array when none were sent. `text` in the response holds the translated string. There are no plan-dependent fields.
Live Test Pig Latin Skill Skill →
The tool
Once your client is connected to the VerveKit server, this appears in its tool list as PigLatinSkill. It is read-only and open-world — it fetches and never mutates anything on your side — so most clients call it without asking you to confirm.
{
"name": "PigLatinSkill",
"arguments": {
"text": "hello world"
}
}You do not name the tool yourself; the model picks it. Asking about hello world in the terms this skill covers is enough for it to reach for PigLatinSkill on its own — naming it explicitly also works, and is the way to force the call.
Connecting
One server URL covers every skill in the catalog, including this one. Authorization is OAuth: the client opens a browser once, and there is no key to paste into a config file.
{
"mcpServers": {
"vervekit": {
"url": "https://api.vervekit.com/v1/mcp"
}
}
}https://api.vervekit.com/v1/mcpPer-client setup — Claude, Cursor, VS Code, ChatGPT — is on the MCP setup page.
Arguments
These are the properties on the tool's inputSchema, so a well-behaved client validates them before the call is made. Premium arguments are accepted on every plan but only take effect on plans that include them.
| Argument | Type | Description |
|---|---|---|
textRequired | string | The text to encode in Pig Latin |
exclusionsOptional | array | Words to exclude from encoding |
What the model gets back
The result carries a structuredContent object matching the tool's declared outputSchema, so a client reads fields without parsing prose. status is "ok" and error is null on success; a null field means the value was not available for that input, not that the call failed.
{
"status": "ok",
"error": null,
"data": {
"text": "Ethay uaresqay oodenway crate asway ackedpay otay ebay ippedshay. Otay avehay isyay etterbay anthay otay aitway andyay hope.",
"exclusions": [
"crate",
"hope"
]
}
}
Response fields
Paths are relative to data. Premium fields are absent rather than zeroed on plans that do not include them, so check for presence instead of comparing to 0.
| Field | Type | Example | Description |
|---|---|---|---|
text | string | Ethay uaresqay oodenway crate asway ackedpay otay ebay ippedshay. Otay avehay isyay etterbay anthay… | Text encoded in Pig Latin format |
exclusions | array | ["crate","hope"] | The words left untranslated, echoed back after trimming and de-duplication |
Failure modes
Errors come back as tool errors carrying a sentence the model can act on, not a bare status code. Error handling covers the full list.
| Status | What it means |
|---|---|
400 / 422 | The arguments did not validate. The message names the offending one. |
401 | The OAuth session is invalid or expired — reconnect the server. |
403 | Blocked by a key restriction or an IP allow-list. Never a bad identity. |
404 | This skill is not part of VerveKit. Check the catalog. |
429 | Out of credits, or a brief rate limit. The message tells them apart. |
A call costs 1 credit each time the tool actually runs; a model that reasons about the tool without calling it costs nothing.
Use cases
- Word Game Mechanics
- Word game developers transform clues or puzzle prompts into Pig Latin while keeping player names and brand terms intact.
- Chat Filter Plugins
- Social messaging platforms offer playful message filters that translate conversational dialogue on demand before posting to a room.
- Linguistics Practice Tools
- To teach phonetics and syllable structures, reading software converts sample vocabulary while protecting punctuation and specific instructional terms.
- Spoiler Text Obfuscation
- Obfuscate plot spoilers in community discussion boards so readers must decode the Pig Latin sentences manually to see details.
Other ways to use Pig Latin Skill
Set up Pig Latin Skill on VerveKit, or reach the same source a different way. Your VerveKit account and credits work on all of them — one key, one balance.
Related
More in Text Processing: