tamil-bible-mcp

tamil-bible-mcp

Provides access to the Tamil Roman Catholic Bible and daily devotional content (daily verse, Mass readings, saint of the day, promise-box verses, daily quiz) as tools for AI assistants.

Category
Visit Server

README

Tamil Bible MCP Server

An MCP (Model Context Protocol) server that exposes the Tamil Roman Catholic Bible — plus daily-devotional content (daily verse, Mass readings, saint of the day, promise-box verses, a daily quiz) — as tools for AI assistants like Claude.

It talks to its client over stdio and to its data store over the network via Supabase (hosted Postgres + REST API). Each user runs their own instance against their own Supabase project — there is no shared public server and no bundled credentials.

Platform support

This server uses the MCP stdio transport, which works with local MCP clients: Claude Desktop, Claude Code, Cursor, Windsurf, and similar tools that spawn a local subprocess. It does not currently support ChatGPT connectors or other platforms that require a remote HTTP/SSE MCP endpoint — that would need a separate hosted deployment and is not implemented here.

Tools

Tool Description
list_books List all 75 books with numbers, English/Tamil names, and chapter counts
get_book_info Detailed info and introduction for one book
get_verse Fetch one verse by book/chapter/verse number
get_chapter Fetch every verse in a chapter
search_verses Keyword search over verse text (Tamil script), optionally scoped to one book
get_daily_verse The daily verse for a given date (defaults to today)
get_mass_readings Catholic daily Mass readings — first/second reading, psalm, gospel
get_daily_saint Saint of the day with a Tamil biography
get_promise_box A promise-box verse, random or filtered by category
list_promise_categories List all promise-box categories
get_daily_quiz The daily quiz question, options, and explanation

Quick start

1. Set up your own Supabase project

You need a Supabase project (the free tier is enough) with the schema this server expects. This repo includes everything needed to stand one up from scratch:

git clone https://github.com/vivekellappan-biit/tamil-bible-mcp.git
cd tamil-bible-mcp
npm install
cp .env.example .env   # then fill in your Supabase project URL + service role key
  1. Create a project at supabase.com.
  2. In the Supabase SQL editor, run supabase/schema.sql to create the tables.
  3. Get the project's Service Role key (Project Settings → API) — not the anon/public key — and put it in .env along with the project URL.
  4. Seed the tables with the bundled Tamil Bible + devotional data:
    node scripts/seed.mjs
    
    This loads data/*.json (≈39k rows: the full Bible text plus daily verses, Mass readings, saints, promise-box entries, and quiz questions) into your project.

The service role key bypasses Row Level Security and has full read/write access to your project — treat it as a secret. Since this server only runs locally over stdio (never over the network), that's a reasonable trust boundary for a personal instance, but don't reuse this key anywhere network-facing.

2. Build

npm run build

3. Register with your MCP client

Claude Code — the fastest way, using the published npm package (no cloning required):

claude mcp add tamil-bible -s user \
  -e SUPABASE_URL=https://your-project.supabase.co \
  -e SUPABASE_SERVICE_KEY=your-service-role-key \
  -- npx -y tamil-bible-mcp

-s user registers it globally for your user account, so it's available in every project, not just the one you run this from. Use -s project instead if you want it committed to a specific repo's .mcp.json for your team, or -s local to keep it private to just the current project. Verify it connected with claude mcp list.

If you're working from a local clone instead (e.g. to modify the server), this repo's .mcp.json already points at the local build:

{
  "mcpServers": {
    "tamil-bible": {
      "type": "stdio",
      "command": "node",
      "args": ["dist/index.js"],
      "env": {}
    }
  }
}

Claude Desktop — add to claude_desktop_config.json, using npx (no cloning required):

{
  "mcpServers": {
    "tamil-bible": {
      "command": "npx",
      "args": ["-y", "tamil-bible-mcp"],
      "env": {
        "SUPABASE_URL": "https://your-project.supabase.co",
        "SUPABASE_SERVICE_KEY": "your-service-role-key"
      }
    }
  }
}

Or, if you're running from a local clone:

{
  "mcpServers": {
    "tamil-bible": {
      "command": "node",
      "args": ["/absolute/path/to/tamil-bible-mcp/dist/index.js"]
    }
  }
}

Configuration

Variable Required Description
SUPABASE_URL Yes Your Supabase project URL
SUPABASE_SERVICE_KEY Yes Your Supabase service role key (bypasses RLS)

Read from .env at the project root, falling back to real environment variables if .env is absent. Environment variables you set explicitly always take precedence over .env. The server exits immediately if either variable is missing.

Development

npm run dev      # tsc --watch
npm run build    # compile + copy books.json + chmod +x
npm start        # node dist/index.js

There's no test suite or linter configured; tsc --strict is the only automated correctness check. See CLAUDE.md for a deeper architecture walkthrough (verse addressing scheme, response conventions, etc.) if you're extending this.

Data & content

The bundled data/*.json files are a full export of the Tamil Roman Catholic Bible translation and associated devotional content (Mass readings, saint biographies, quiz questions) used by this project. Redistribution rights for this specific translation and content have been confirmed by the maintainer. If you plan to redistribute this data further, verify your own rights to do so first.

Contributing

Issues and PRs welcome. Since there's no CI test suite, please make sure npm run build passes cleanly before submitting, and describe how you tested any behavioral change (this is a stdio MCP server, so manual testing means driving it through an MCP client or raw JSON-RPC over stdio).

License

MIT — see LICENSE.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured