Skip to main content
Glama
CodingWithJoseph

InnovationsHospitalitySearch MCP Server

README.md
# Innovations Hospitality Search

The public marketing site and private publishing console for Innovations Hospitality Search, a boutique national hospitality recruiting and executive search firm.

## What Is Included

- Public marketing, expertise, process, candidate, contact, insight, and opportunity pages
- Database-backed articles, guides, and hospitality opportunities
- Private administration for content, opportunities, inquiries, and analytics
- Supabase authentication, database access, and row-level security
- Resend inquiry notifications and acknowledgements
- A private MCP server for authenticated publishing workflows
- Technical SEO including metadata, structured data, sitemap, robots directives, RSS, and `llms.txt`

## Technology

- Next.js 15 with the App Router
- React 19 and TypeScript
- Tailwind CSS with shared marketing and administration styles
- Supabase Auth and Postgres
- Resend
- Model Context Protocol SDK
- Vitest

## Local Setup

1. Install dependencies:

   ```bash
   npm install
   ```

2. Copy `.env.example` to `.env.local` and provide the required Supabase values. Add Resend and analytics values only when those services are being tested.

3. Apply the SQL migrations in `supabase/migrations` to the configured Supabase project.

4. Start the development server:

   ```bash
   npm run dev
   ```

5. Open [http://localhost:3000](http://localhost:3000).

## Verification

Run the complete local verification set before opening or merging a pull request:

```bash
npm run typecheck
npm test
npm run build
```

## Deployment

The application is deployed as a Next.js server. `NEXT_PUBLIC_SITE_URL` and
`NEXT_PUBLIC_ADMIN_URL` are required in production. The public origin controls
SEO, OAuth metadata, MCP discovery, public publishing links, the sitemap, RSS,
and `llms.txt`; the admin origin controls login, recovery, protected previews,
and console links. Production must use:

```text
NEXT_PUBLIC_SITE_URL=https://www.innovationshospitalitysearch.com
NEXT_PUBLIC_ADMIN_URL=https://admin.innovationshospitalitysearch.com
```

Follow the [custom-domain migration runbook](docs/CUSTOM_DOMAIN_MIGRATION.md)
before enabling redirects from the Railway-generated hostname.

Do not expose `SUPABASE_SERVICE_ROLE_KEY`, `RESEND_API_KEY`, or `RESEND_WEBHOOK_SECRET` through `NEXT_PUBLIC_` environment variables.

## Documentation

- [Publishing platform setup](docs/CONTENT_PLATFORM.md)
- [Private MCP setup](docs/PRIVATE_MCP.md)

## Current Status

The first production-ready marketing and publishing foundation is complete. Editorial content and public opportunities can be managed from the private console without a code deployment.