Wordnik · Capability
Wordnik — Word List
Word List — single-user-word-list management surface. 6 operations covering reading, updating, and deleting a word list by permalink, plus listing, adding, and removing words inside it. Lead operation: return a word list by permalink. Self-contained Naftiko capability covering one Wordnik business surface.
What You Can Do
GET
Getwordlistbypermalink
— Return a word list by permalink.
/v1/word-lists/{permalink}
PUT
Updatewordlist
— Update a word list.
/v1/word-lists/{permalink}
DELETE
Deletewordlist
— Delete a word list.
/v1/word-lists/{permalink}
GET
Getwordlistwords
— Return words in a word list.
/v1/word-lists/{permalink}/words
POST
Addwordstowordlist
— Add words to a word list.
/v1/word-lists/{permalink}/words
POST
Deletewordsfromwordlist
— Delete words from a word list.
/v1/word-lists/{permalink}/delete-words
MCP Tools
get-word-list
Return a word list by permalink.
read-only
idempotent
update-word-list
Update a word list.
idempotent
delete-word-list
Delete a word list.
idempotent
list-word-list-words
Return words in a word list.
read-only
idempotent
add-words-to-word-list
Add words to a word list.
delete-words-from-word-list
Delete words from a word list.
Capability Spec
naftiko: "1.0.0-alpha2"
info:
label: "Wordnik — Word List"
description: >-
Word List — single-user-word-list management surface. 6 operations covering reading,
updating, and deleting a word list by permalink, plus listing, adding, and removing
words inside it. Lead operation: return a word list by permalink. Self-contained
Naftiko capability covering one Wordnik business surface.
tags:
- Wordnik
- Dictionary
- Word List
created: "2026-05-29"
modified: "2026-05-29"
binds:
- namespace: env
keys:
WORDNIK_API_KEY: WORDNIK_API_KEY
WORDNIK_AUTH_TOKEN: WORDNIK_AUTH_TOKEN
capability:
consumes:
- type: http
namespace: "wordnik-word-list"
baseUri: "https://api.wordnik.com/v4"
description: "Wordnik — Word List business capability. Self-contained, no shared references."
authentication:
type: apikey
key: api_key
value: "{{env.WORDNIK_API_KEY}}"
placement: query
resources:
- name: "word-list"
path: "/wordList.json/{permalink}"
operations:
- name: "getWordListByPermalink"
method: GET
description: "Return a word list by permalink."
inputParameters:
- { name: permalink, in: path, type: string, required: true, description: "Permalink of the word list." }
- { name: auth_token, in: header, type: string, required: true, description: "Valid user auth token." }
outputRawFormat: json
outputParameters:
- { name: result, type: object, value: "$." }
- name: "updateWordList"
method: PUT
description: "Update a word list."
inputParameters:
- { name: permalink, in: path, type: string, required: true, description: "Permalink of the word list." }
- { name: auth_token, in: header, type: string, required: true, description: "Valid user auth token." }
- { name: body, in: body, type: object, required: true, description: "WordList payload." }
outputRawFormat: json
outputParameters:
- { name: result, type: object, value: "$." }
- name: "deleteWordList"
method: DELETE
description: "Delete a word list."
inputParameters:
- { name: permalink, in: path, type: string, required: true, description: "Permalink of the word list." }
- { name: auth_token, in: header, type: string, required: true, description: "Valid user auth token." }
outputRawFormat: json
outputParameters:
- { name: result, type: object, value: "$." }
- name: "getWordListWords"
method: GET
description: "Return words in a word list."
inputParameters:
- { name: permalink, in: path, type: string, required: true, description: "Permalink of the word list." }
- { name: auth_token, in: header, type: string, required: true, description: "Valid user auth token." }
- { name: sortBy, in: query, type: string, required: false, description: "Attribute to sort by." }
- { name: sortOrder, in: query, type: string, required: false, description: "Sort direction." }
- { name: skip, in: query, type: integer, required: false, description: "Results to skip." }
- { name: limit, in: query, type: integer, required: false, description: "Maximum number of results to return." }
outputRawFormat: json
outputParameters:
- { name: result, type: object, value: "$." }
- name: "addWordsToWordList"
method: POST
description: "Add words to a word list."
inputParameters:
- { name: permalink, in: path, type: string, required: true, description: "Permalink of the word list." }
- { name: auth_token, in: header, type: string, required: true, description: "Valid user auth token." }
- { name: body, in: body, type: array, required: true, description: "Array of StringValue payloads." }
outputRawFormat: json
outputParameters:
- { name: result, type: object, value: "$." }
- name: "deleteWordsFromWordList"
method: POST
description: "Delete words from a word list."
inputParameters:
- { name: permalink, in: path, type: string, required: true, description: "Permalink of the word list." }
- { name: auth_token, in: header, type: string, required: true, description: "Valid user auth token." }
- { name: body, in: body, type: array, required: true, description: "Array of StringValue payloads to remove." }
outputRawFormat: json
outputParameters:
- { name: result, type: object, value: "$." }
exposes:
- type: rest
namespace: "wordnik-word-list-rest"
port: 8080
description: "REST adapter for Wordnik — Word List. One Spectral-compliant resource per consumed operation, prefixed with /v1."
resources:
- path: "/v1/word-lists/{permalink}"
name: "word-list"
description: "REST surface for a single word list."
operations:
- method: GET
name: "getWordListByPermalink"
description: "Return a word list by permalink."
call: "wordnik-word-list.getWordListByPermalink"
with:
permalink: "rest.permalink"
auth_token: "rest.auth_token"
outputParameters:
- { type: object, mapping: "$." }
- method: PUT
name: "updateWordList"
description: "Update a word list."
call: "wordnik-word-list.updateWordList"
with:
permalink: "rest.permalink"
auth_token: "rest.auth_token"
body: "rest.body"
outputParameters:
- { type: object, mapping: "$." }
- method: DELETE
name: "deleteWordList"
description: "Delete a word list."
call: "wordnik-word-list.deleteWordList"
with:
permalink: "rest.permalink"
auth_token: "rest.auth_token"
outputParameters:
- { type: object, mapping: "$." }
- path: "/v1/word-lists/{permalink}/words"
name: "word-list-words"
description: "REST surface for words inside a list."
operations:
- method: GET
name: "getWordListWords"
description: "Return words in a word list."
call: "wordnik-word-list.getWordListWords"
with:
permalink: "rest.permalink"
auth_token: "rest.auth_token"
sortBy: "rest.sortBy"
sortOrder: "rest.sortOrder"
skip: "rest.skip"
limit: "rest.limit"
outputParameters:
- { type: object, mapping: "$." }
- method: POST
name: "addWordsToWordList"
description: "Add words to a word list."
call: "wordnik-word-list.addWordsToWordList"
with:
permalink: "rest.permalink"
auth_token: "rest.auth_token"
body: "rest.body"
outputParameters:
- { type: object, mapping: "$." }
- path: "/v1/word-lists/{permalink}/delete-words"
name: "word-list-delete-words"
description: "REST surface for removing words from a list."
operations:
- method: POST
name: "deleteWordsFromWordList"
description: "Delete words from a word list."
call: "wordnik-word-list.deleteWordsFromWordList"
with:
permalink: "rest.permalink"
auth_token: "rest.auth_token"
body: "rest.body"
outputParameters:
- { type: object, mapping: "$." }
- type: mcp
namespace: "wordnik-word-list-mcp"
port: 9090
transport: http
description: "MCP adapter for Wordnik — Word List. One tool per consumed operation, routed inline through this capability's consumes block."
tools:
- name: "get-word-list"
description: "Return a word list by permalink."
hints: { readOnly: true, destructive: false, idempotent: true }
call: "wordnik-word-list.getWordListByPermalink"
with:
permalink: "tools.permalink"
auth_token: "tools.auth_token"
outputParameters:
- { type: object, mapping: "$." }
- name: "update-word-list"
description: "Update a word list."
hints: { readOnly: false, destructive: false, idempotent: true }
call: "wordnik-word-list.updateWordList"
with:
permalink: "tools.permalink"
auth_token: "tools.auth_token"
body: "tools.body"
outputParameters:
- { type: object, mapping: "$." }
- name: "delete-word-list"
description: "Delete a word list."
hints: { readOnly: false, destructive: true, idempotent: true }
call: "wordnik-word-list.deleteWordList"
with:
permalink: "tools.permalink"
auth_token: "tools.auth_token"
outputParameters:
- { type: object, mapping: "$." }
- name: "list-word-list-words"
description: "Return words in a word list."
hints: { readOnly: true, destructive: false, idempotent: true }
call: "wordnik-word-list.getWordListWords"
with:
permalink: "tools.permalink"
auth_token: "tools.auth_token"
sortBy: "tools.sortBy"
sortOrder: "tools.sortOrder"
skip: "tools.skip"
limit: "tools.limit"
outputParameters:
- { type: object, mapping: "$." }
- name: "add-words-to-word-list"
description: "Add words to a word list."
hints: { readOnly: false, destructive: false, idempotent: false }
call: "wordnik-word-list.addWordsToWordList"
with:
permalink: "tools.permalink"
auth_token: "tools.auth_token"
body: "tools.body"
outputParameters:
- { type: object, mapping: "$." }
- name: "delete-words-from-word-list"
description: "Delete words from a word list."
hints: { readOnly: false, destructive: true, idempotent: false }
call: "wordnik-word-list.deleteWordsFromWordList"
with:
permalink: "tools.permalink"
auth_token: "tools.auth_token"
body: "tools.body"
outputParameters:
- { type: object, mapping: "$." }