GospelChannel Church Finder

io.github.Ac0AI由 GitHub 账号 Ac0AI 发布v1.0.0更新于 Oct 24, 2026

Find a Christian church by worship style, denomination, language, and location. Read-only.

发布方自己的服务:Finder Jobs

已验证Streamable HTTP可网页运行位置与生活知识与记忆

概览

AI 生成的概览

只读的远程 MCP 服务器,让助手按地点、宗派、敬拜风格和语言查找基督教教会,并查看教会资料。

可以做什么
  • 按距离查找用户附近的教会,仅使用粗略位置信息
  • 按目录质量排序查找指定城市中的教会
  • 按敬拜风格、宗派或语言筛选结果
  • 按 slug 读取单个教会的完整资料:敬拜风格、宗派、语言、简介、热门敬拜歌曲、联系方式及已记录的主日时间
适用场景
适合在首次拜访前查找或比较基督教教会,或需要了解某间教会的宗派、语言、敬拜风格、聚会时间等细节时使用。
运行要求
需连接 gospelchannel.com 上的远程 streamable HTTP 端点;未声明任何软件包、账号、API 密钥或请求头。助手需能访问该端点。
安装前请注意
仅提供只读查询,未声明写入操作。基于位置的搜索依赖客户端提供的粗略位置信息,结果可能不够精确。教会资料来自第三方目录,可能不完整或已过时。

安装

在 SourceWeft 中

  1. 打开 控制台中的 GospelChannel Church Finder,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.Ac0AI%2Fgospelchannel-church-finder/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "gospelchannel-church-finder": {
      "type": "http",
      "url": "https://gospelchannel.com/mcp"
    }
  }
}

README

GospelChannel — The Church Guide

Find the right church before your first visit.

Free global church guide with worship-aware profiles, built with Next.js 16, OpenNext on Cloudflare Workers, Cloudflare D1, Spotify, and YouTube.

Solo-maintained project, and my first open source project. This repository is public so people can report bugs, suggest improvements, and send small focused pull requests. I am still learning the open source side of things, so patience and clarity help a lot.

Status

  • Production site: https://gospelchannel.com
  • Contributor language: English or Swedish is fine
  • Project direction is maintainer-led

What the app does

  • Find and compare churches by location, tradition, language, worship style, and service details
  • Browse curated worship and gospel music connected to church profiles
  • Explore church pages with Spotify embeds and YouTube video grids
  • Submit church suggestions and ownership claims
  • Run scheduled content refresh jobs
  • Generate SEO assets such as sitemap.xml, robots.txt, and structured data

Stack

  • Next.js 16 (App Router)
  • OpenNext + Cloudflare Workers
  • Cloudflare D1 + Drizzle
  • Better Auth
  • Spotify Web API
  • YouTube Data API
  • Cloudflare R2 for media
  • PostHog for analytics

Local setup

Prerequisites:

  • Node 22.x
  • npm

If you use nvm, run:

bash
nvm use

Install and start:

bash
pnpm installcp .env.example .env.localpnpm dev

Helpful commands:

bash
pnpm lintpnpm buildpnpm smokepnpm check:env

Database (Cloudflare D1)

Cloudflare D1 is the canonical database. The Worker uses the GOSPEL_D1 binding in wrangler.jsonc; it does not need a database URL or API token. Local development uses an isolated local D1 database by default.

bash
pnpm db:migrate:localpnpm dev

Node maintenance jobs use GOSPEL_D1_DATABASE_ID, CLOUDFLARE_ACCOUNT_ID, and GOSPEL_D1_API_TOKEN (or the existing CLOUDFLARE_API_TOKEN). The token needs Account / D1 / Edit for jobs that write. Missing credentials fail closed. For local jobs, an existing wrangler login can supply a refreshed token without saving a second secret:

bash
node scripts/with-d1-wrangler-auth.mjs node scripts/check-d1-access.mjs

Create a versioned SQL migration with pnpm db:new-migration -- descriptive_name, keep the Drizzle models in src/db/d1-schema in sync, and apply with pnpm db:migrate after checking the configured remote database. Production imports must apply 0000_initial.sql, load data, then apply the remaining migrations so derived search triggers do not rewrite imported source rows.

All active maintenance/import scripts use D1, including the Supabase-export importer. Node scripts use the same D1 account, database ID and token as scheduled jobs; there is no Postgres driver or fallback. Run local commands through with-d1-wrangler-auth.mjs when using the Wrangler login. Use pnpm exec tsx for scripts which import TypeScript modules.

After a schema change, regenerate the Node field codecs with pnpm db:script-types; the test suite checks that they match the Drizzle schema. Live integration tests require GOSPEL_D1_VERIFY_REMOTE=1 in addition to D1 credentials, so ordinary tests never query production implicitly.

Environment variables

You do not need every external integration to read the code or work on docs and UI.

Typical local development:

  • NEXT_PUBLIC_SITE_URL
  • NEXT_PUBLIC_MEDIA_BASE_URL
  • BETTER_AUTH_URL
  • BETTER_AUTH_SECRET
  • Local D1 initialized with pnpm db:migrate:local

Needed for specific integrations and production-like flows:

  • YOUTUBE_API_KEY
  • SPOTIFY_CLIENT_ID
  • SPOTIFY_CLIENT_SECRET
  • APIFY_TOKEN
  • ANTHROPIC_API_KEY
  • BREVO_API_KEY
  • CRON_SECRET

Admin access is database-backed. Promote an account to admin with:

bash
pnpm db:seed -- [email protected]

Notes:

  • pnpm build uses offline mode for the content pipeline.
  • Full admin, mail, sync, and deployment flows need real service credentials.
  • Keep secrets in .env.local. Do not commit them.

Contributing

Ideas, bug reports, and small PRs are welcome.

If you want to help, the easiest path is:

  • open an issue
  • keep the idea or fix small
  • explain the problem in plain language

Best ways to help:

  • Open an issue for bugs or feature ideas
  • Send focused PRs that solve one problem at a time
  • Include screenshots when changing UI
  • Update docs if behavior changes

See CONTRIBUTING.md for the short version of how this repo is run.

Security

Please do not post security issues publicly. See SECURITY.md.

Deployment

The production app is deployed on Cloudflare Workers via OpenNext. Contributors usually do not need deployment access.

Maintainer deploy command:

bash
pnpm deploy

Project notes

  • Spotify can require Extended Quota Mode for some external playlist access.
  • The app has manual data fallbacks in src/data/manual/ for cases where API data is limited or unavailable.

License

MIT. See LICENSE.

来源:README.md,提交 949c406

工具

3

find_churches_near

Find churches near a place

Find Christian worship churches near the user, ranked by distance. Uses only the coarse location metadata ChatGPT shares, never raw location input fields. If the metadata includes only a city, it searches that city. Filter by worship style, denomination, or language.

输入参数limitlanguageradius_kmdenominationworship_style

find_churches_in_city

Find churches in a city

Find Christian worship churches in a named city, ranked by directory quality. Filter by worship style, denomination, or language.

输入参数city必填limitlanguagedenominationworship_style

get_church

Get a church profile

Get the full profile for one church by its slug (the last path segment of its gospelchannel.com/church/<slug> URL): worship styles, denomination, language, summary, top worship songs, contact, and recorded service times if available.

输入参数slug必填

版本历史

1
  1. v1.0.0最新Sep 16, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Finder 集成