Shakespeare's Monologues
Search Shakespeare monologues, plays, paraphrases and summaries from shakespeare-monologues.org
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
claude mcp add --transport http shakespeare-s-monologues 'https://mcp.shakespeare-monologues.org/mcp'
{
"mcpServers": {
"shakespeare-s-monologues": {
"type": "http",
"url": "https://mcp.shakespeare-monologues.org/mcp"
}
}
}
shakespeare-monologues-mcpclaude mcp add shakespeare-s-monologues -- npx -y shakespeare-monologues-mcp@0.1.0
{
"mcpServers": {
"shakespeare-s-monologues": {
"command": "npx",
"args": [
"-y",
"shakespeare-monologues-mcp@0.1.0"
]
}
}
}
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Shakespeare's Monologues — MCP server
A small, read-only Model Context Protocol server that lets MCP-capable AI clients search and fetch Shakespeare monologue metadata from shakespeare-monologues.org.
It's a thin, stateless wrapper over the site's public JSON index
(/api/monologues.json) — no database, no secrets. Every result carries the
monologue's permalink url (where the full text, scene context, and modern-English
paraphrase live) and an attribution note.
Tools
| Tool | What it does |
|---|---|
search_monologues | Free-text search (character / play / first line) + filters: gender, play, style, act, limit. |
get_monologue | One monologue's index entry by numeric id. |
random_monologue | A random monologue, optional gender / play filters. |
list_plays | Every play with its classification and monologue count. |
list_all_monologues_for_a_character | Every monologue spoken by a named character. |
get_monologue_of_the_day | The current Monologue of the Day (latest social post). |
get_paraphrased_monologue | A monologue's full text + its modern-English paraphrase (AI-generated; may be null if not yet generated). |
get_scene_summary | AI-generated summary of the scene a monologue is in (by monologue id). |
get_play_summary | AI-generated summary of a play (by title). |
send_feedback | Lets an agent report a missing capability, a problem, or praise. Added by the PostHog analytics SDK; only present when analytics is on. |
The paraphrase and summaries are AI-generated (Claude) and only partially cached so far, so those tools return
nullwhere content hasn't been generated yet.
Run locally
Two transports, same tools. server.ts builds the tool surface and knows
nothing about how it's reached; index.ts serves it over HTTP and stdio.ts
over stdio.
Over stdio, the way an MCP client spawns a local server:
npx shakespeare-monologues-mcp
Over HTTP, which is how the hosted instance runs:
npm install
npm run build
npm start # listens on :3000, POST /mcp (set PORT to change)
Health check: GET /health → {"ok":true}.
Neither mode needs credentials — the server reads the site's public JSON index.
Set MONOLOGUES_API_URL to point it elsewhere, and POSTHOG_PROJECT_API_KEY=""
to disable analytics.
Connecting a client
Remote MCP means users add a URL, no install. In a client that supports remote / custom MCP servers (Claude Desktop connectors, etc.), add:
https://mcp.shakespeare-monologues.org/mcp
Or run it yourself over stdio, with no hosted dependency:
{
"mcpServers": {
"shakespeare-monologues": {
"command": "npx",
"args": ["-y", "shakespeare-monologues-mcp"]
}
}
}
For clients configured with a JSON config file, use the streamable-HTTP transport:
{
"mcpServers": {
"shakespeare-monologues": {
"type": "streamable-http",
"url": "https://mcp.shakespeare-monologues.org/mcp"
}
}
}
For a client that only speaks stdio, bridge to the remote server with
mcp-remote:
{
"mcpServers": {
"shakespeare-monologues": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.shakespeare-monologues.org/mcp"]
}
}
}
Note on "autonomous" use: there's no mechanism today for an arbitrary agent to discover and use this with zero user action — a client/platform still has to connect it. For truly zero-setup access, agents can hit the plain JSON API (
/api/monologues.json) and/llms.txtdirectly.
License
- Code: MIT.
- Data served through it: © shakespeare-monologues.org, CC BY-NC-SA 4.0 — please keep the attribution that each tool response includes.
Frequently asked questions
What is Shakespeare's Monologues?
Search Shakespeare monologues, plays, paraphrases and summaries from shakespeare-monologues.org
How do I install Shakespeare's Monologues?
It runs as a remote server. In Claude Code: claude mcp add --transport http shakespeare-s-monologues 'https://mcp.shakespeare-monologues.org/mcp'. For other clients, paste the JSON configuration from this page into their MCP settings.
Does Shakespeare's Monologues need an API key?
Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.
Is Shakespeare's Monologues open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains Shakespeare's Monologues?
It is published by slshults. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.