# Teneo Book Generation [Health: Active]

**Category:** 💻 Developer Tools  
**Repository:** https://github.com/Traviseric/teneo-book-mcp  
**GitHub Stars:** 0  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/teneo-book-generation-2

## Description
Publish-ready nonfiction books from a topic: manuscript, cover, PDF/EPUB/DOCX. Free outline to try.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "teneo-book-generation": {
    "command": "npx",
    "args": ["-y","skills"]
  }
}
```

## Documentation & README

# teneo-book-mcp

MCP server for [Teneo](https://teneo.io). Lets any MCP-capable agent — Claude Desktop,
Cursor, Claude Code, or your own — generate a **complete, publish-ready non-fiction book**:
full manuscript, cover, and PDF/EPUB/DOCX files.

```json
{
  "mcpServers": {
    "teneo-book": {
      "command": "npx",
      "args": ["-y", "teneo-book-mcp"],
      "env": { "TENEO_API_KEY": "tk_live_..." }
    }
  }
}
```

## Tools

| Tool | What it does |
|---|---|
| `teneo_capabilities` | Discover auth, pricing, request shape, workflow, and output shape. Start here. |
| `teneo_generate_book` | Start a book (async) → returns a `jobId`. Runs ~45 min. Charged in credits. |
| `teneo_book_status` | Poll a job; when `completed`, returns download URLs for the cover and PDF/EPUB/DOCX. |
| `teneo_generate_outline` | Generate an outline only, without running the full pipeline. **Free.** |
| `teneo_research_niche` | Niche research from a seed topic. **Free.** |
| `teneo_generate_cover` | Generate a cover only. |
| `teneo_evaluate_book` | Run quality evaluation on an existing generated book. |

## What it costs

Priced in Teneo credits. One credit is **$69** singly, **$59** each in a 3-pack, **$44.90**
each in a 10-pack; credits never expire.

```
requiredCredits = bookCredits + coverCredits + qualityCreditsReserve
bookCredits     = wordBandCredits(estimatedWordCount) x modelMultiplier(model_version)
estimatedWordCount = number_of_chapters x topics_per_chapter x subtopic_count x 350
```

A default request (12 chapters / 3 topics / 3 subtopics) estimates 37,800 words → **1.05
credits, about $72 at list**. `teneo_generate_outline` and `teneo_research_niche` cost
**nothing**, so validate direction before committing to a paid generation.

**A funded Teneo balance is required before the first paid call** — there is no
pay-per-call endpoint yet. The live numbers, the full model-multiplier table, and the
request schema are always at
[`/api/agent/capabilities`](https://teneo.io/api/agent/capabilities), which is
authoritative if anything here disagrees with it.

## Setup

Get a credential, then add the config block above to your MCP client.

- **Preferred (delegated):** start at [`auth.teneo.io/auth.md`](https://auth.teneo.io/auth.md),
  register for `https://teneo.io/`, have the user approve the claim, and exchange it for a
  delegated agent token. Pass it as `TENEO_AGENT_TOKEN`. The delegated user is charged.
- **Legacy:** create an API key in your Teneo dashboard and pass `TENEO_API_KEY=tk_live_...`.
- Point at staging with `TENEO_BASE_URL=https://staging.teneo.io`.

## Spend semantics

Worth knowing before you wire this into an autonomous loop:

- **Quoted before charged.** A request that would exceed the balance returns `402` with the
  full quote and charges nothing — a safe way to read the exact price.
- **Idempotent.** Send an `Idempotency-Key` header; replaying a request replays the original
  debit instead of charging twice.
- **Refunded on failure.** A failed generation is refunded in full.
- **Async.** A book takes ~45 minutes. Poll `teneo_book_status`, or pass `callback_url` for
  a completion webhook. Download URLs expire in ~1 hour; re-poll for fresh ones.

## Not for

A single short answer, a blog post, or an article — answer those directly instead. Fiction
and novels are not supported by this API.

## Develop

```bash
npm test          # unit tests for the HTTP client (mocked fetch, no network)
npm start         # run the MCP server over stdio
```

`client.mjs` is a dependency-free HTTP client; `server.mjs` wraps it as MCP tools. Both
mirror the published
[OpenAPI contract](https://teneo.io/openapi/agent-book-generation.yaml).

## Links

- Agent front door: <https://teneo.io/agents>
- Capability manifest: <https://teneo.io/api/agent/capabilities>
- OpenAPI: <https://teneo.io/openapi/agent-book-generation.yaml>
- Also installable as an agent skill: `npx skills add https://teneo.io`
- Official MCP registry: `io.github.Traviseric/teneo-book-mcp`

## License

MIT

