search_poems
Pack: poetrydb · Connect: https://pipeworx.io/mcp (see Connect below for a single-pack URL)
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/search_poems for the schema, then POST the same URL with its arguments for the data.
Search PoetryDB for poems by title or partial title (e.g., “The Road Not Taken”). Returns matching poems with full text, author, and line count. Note: searches titles only, not poem body text.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
author | string | no | Author name or fragment, e.g. “Dickinson”, “Shakespeare”. Optional if title given. |
title | string | no | Poem title or fragment, e.g. “Hope”, “Sonnet”. Optional if author given. |
limit | number | no | Max poems to return (default 10, max 20). |
Example call
Arguments
{
"title": "The Road Not Taken"
}
curl
curl -X POST https://gateway.pipeworx.io/poetrydb/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_poems","arguments":{"title":"The Road Not Taken"}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('search_poems', {
"title": "The Road Not Taken"
});
More examples
{
"author": "Dickinson",
"limit": 5
}
Connect
Add this to your MCP client config — every tool in the catalog, including this one — or use one-click install buttons:
{
"mcpServers": {
"pipeworx": {
"url": "https://pipeworx.io/mcp"
}
}
}
Connect to just the poetrydb pack
{
"mcpServers": {
"poetrydb": {
"url": "https://gateway.pipeworx.io/poetrydb/mcp"
}
}
}
See Getting Started for client-specific install steps.