npm mcp-poetrystdioMITupdated 4mo ago
Unofficial MCP server for exploring classic poetry through PoetryDB.
What can you do with PoetryDB MCP Server?
PoetryDB MCP Server
Unofficial MCP server for exploring classic poetry through PoetryDB.
At a glance
| Metric | Value |
|---|---|
| Tools | 12 |
| Categories | 3 |
| Transport | stdio |
| Auth | none |
| MCP Registry name | io.github.lacausecrypto/poetrydb |
| npm package | mcp-poetry |
| Source API | https://poetrydb.org |
| Content | classic poetry by author, title, line text, and form |
Install
npm install -g mcp-poetry
Or from source:
npm install
npm run build
MCP Registry
This server is published to the MCP Registry under:
io.github.lacausecrypto/poetrydb
Claude Desktop
{
"mcpServers": {
"poetrydb": {
"command": "npx",
"args": ["-y", "mcp-poetry"]
}
}
}
For a local checkout, replace the command with:
{
"mcpServers": {
"poetrydb": {
"command": "node",
"args": ["/absolute/path/to/mcp-poetrydb/dist/index.js"]
}
}
}
Tools
Catalog
catalog_overview: list categories and available toolscatalog_category: show tools for a specific category
Search
search_by_author: find poems by author namesearch_by_title: find a poem by titlesearch_by_lines: search text inside poem linessearch_by_linecount: find poems by exact line countsearch_combined: query multiple PoetryDB fields in one requestlist_authors: list all available authors
Discovery
random_poem: fetch one or more random poemsget_sonnets: fetch 14-line poemsget_haikus: fetch 3-line poemslist_titles: list poem titles
Example requests
Simple
Random poem please.
Expected tool:
random_poem({ "count": 1 })
Browse
Show me the available poets.
Expected tool:
list_authors({})
Targeted search
Find Ozymandias.
Expected tool:
search_by_title({ "title": "Ozymandias" })
Text search
Show me poems containing the word "love".
Expected tool:
search_by_lines({ "text": "love" })
Form-based discovery
Give me 14-line poems by Shakespeare.
Expected tool:
search_combined({ "fields": "author,linecount", "values": "Shakespeare;14" })
More advanced
List Shakespeare results, but only return title and linecount.
Expected tool:
search_by_author({ "author": "Shakespeare", "fields": "title,linecount" })
Multi-step exploration
Start with the catalog, then show me the discovery tools, then give me a sonnet.
Typical tool sequence:
catalog_overview({})
catalog_category({ "category_id": "discovery" })
get_sonnets({})
Development
npm run build
npm run test:ci
npm test
npm pack --dry-run
Environment variables:
POETRYDB_BASE_URLPOETRYDB_REQUEST_TIMEOUT_MSPOETRYDB_REQUEST_RETRIES
Notes
- No API key is required.
- This package is not affiliated with PoetryDB.
- Built for MCP clients that prefer a compact stdio server over a custom PoetryDB integration.
- MCP Registry identity:
io.github.lacausecrypto/poetrydb
Attribution
- PoetryDB: poetrydb.org
- Upstream project: thundercomb/poetrydb
Additional implementation notes are in documentation.md.
Install
Add PoetryDB MCP Server to your client. Pick the one you use.
claude mcp add mcp-poetry -- npx -y mcp-poetrycodex mcp add mcp-poetry -- npx -y mcp-poetryamp mcp add mcp-poetry -- npx -y mcp-poetry{
"mcpServers": {
"mcp-poetry": {
"command": "npx",
"args": [
"-y",
"mcp-poetry"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"mcp-poetry": {
"command": "npx",
"args": [
"-y",
"mcp-poetry"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"mcp-poetry","command":"npx","args":["-y","mcp-poetry"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"mcp-poetry": {
"command": "npx",
"args": [
"-y",
"mcp-poetry"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"mcp-poetry": {
"command": "npx",
"args": [
"-y",
"mcp-poetry"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"mcp-poetry": {
"command": "npx",
"args": [
"-y",
"mcp-poetry"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"mcp-poetry": {
"type": "local",
"command": "npx",
"args": [
"-y",
"mcp-poetry"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"mcp-poetry": {
"command": {
"path": "npx",
"args": [
"-y",
"mcp-poetry"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y mcp-poetryRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
Score
39 / 100
Incomplete
- Documentation22/25
- Maintenance13/25
- Trust13/20
- Capability0/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 141 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 1.0.1Latest | Apr 12, 2026 |