JUHE API Marketplace
HorkyChen avatar
MCP Server

Talebook MCP Server

A simple FastAPI-based MCP server that provides book-related tools, currently supporting retrieval of book collection counts.

0
GitHub Stars
8/23/2025
Last Updated
MCP Server Configuration
1{
2 "name": "talebook-mcp",
3 "command": "python",
4 "args": [
5 "/path/to/talebook-mcp/src/server.py"
6 ],
7 "env": {}
8}
JSON8 lines

README Documentation

Talebook MCP Server

A simple Model Context Protocol (MCP) server built with FastAPI that provides book-related tools.

Features

  • get_books_count: Returns the current count of books in the collection (defaults to 1)
  • Built with FastAPI for both MCP and HTTP interfaces
  • Supports both stdio transport (for MCP clients) and HTTP endpoints

Installation

  1. Install dependencies:
pip install -r requirements.txt

Usage

Running as MCP Server (stdio transport)

python src/server.py

Running as FastAPI HTTP Server

python src/server.py --fastapi

The HTTP server will be available at http://localhost:8000

Available Endpoints (HTTP mode)

  • GET / - Health check
  • GET /tools - List available tools
  • POST /tools/get_books_count - Get books count

Available Tools (MCP mode)

  • get_books_count: Get the current count of books in the collection
    • Input: No parameters required
    • Output: Text content with the books count

MCP Configuration

To use this server with an MCP client, add the following to your MCP configuration:

{
  "mcpServers": {
    "talebook-mcp": {
      "command": "python",
      "args": ["/path/to/talebook-mcp/src/server.py"],
      "env": {}
    }
  }
}

Development

The server is structured to be easily extensible. To add new tools:

  1. Add the tool definition to the list_tools() function
  2. Add the tool handler to the call_tool() function
  3. Implement the tool function
  4. Optionally add HTTP endpoints for the new tool

Example Tool Usage

When using an MCP client, you can call the get_books_count tool:

{
  "method": "tools/call",
  "params": {
    "name": "get_books_count",
    "arguments": {}
  }
}

The server will respond with:

{
  "content": [
    {
      "type": "text",
      "text": "Current books count: 1"
    }
  ]
}

Quick Install

Quick Actions

Key Features

Model Context Protocol
Secure Communication
Real-time Updates
Open Source