AI Prompt for MCP Servers
MCP server that exposes real estate data as Resources and canned workflows as Prompt Templates, installable in Claude Code. Covers resource URIs, subscriptions, and prompt argument design.
More prompts for MCP Servers.
Opinionated recipe for turning an existing send email via SendGrid API into a clean MCP tool. Focus: tight schema, JWT bearer token flow, retries, and Zod-backed input validation.
Opinionated recipe for turning an existing invoke AWS Lambda API into a clean MCP tool. Focus: tight schema, JWT bearer token flow, retries, and TypeBox-backed input validation.
Opinionated recipe for turning an existing create Linear issue API into a clean MCP tool. Focus: tight schema, API key in header flow, retries, and Zod-backed input validation.
Opinionated recipe for turning an existing query BigQuery API into a clean MCP tool. Focus: tight schema, OAuth 2.0 authorization code flow flow, retries, and ArkType-backed input validation.
Opinionated recipe for turning an existing search Notion pages API into a clean MCP tool. Focus: tight schema, JWT bearer token flow, retries, and Zod-backed input validation.
Production MCP server exposing query Elasticsearch index over WebSocket. Tested with custom host via MCP SDK — includes auth (JWT bearer token), schema validation (TypeBox), error handling, and host-specific install instructions.
You are building an MCP server that primarily surfaces **Resources** and **Prompt Templates** (not just tools) to give agents in Claude Code deep, navigable context over a real estate dataset. **Runtime:** TypeScript + Node 20 **Validator:** ArkType **Auth:** OAuth 2.0 client credentials ## Background on the three MCP primitives - **Tools** → model-initiated actions (side-effectful) - **Resources** → application-attached read-only context (file-like, addressable by URI) - **Prompt Templates** → user-initiated canned workflows with typed arguments This server leans heavily on Resources and Prompts. Only expose Tools where a Resource won't do. ## Part 1 — Resource design for real estate 1. Define the resource URI scheme, e.g. `real estate://<entity>/<id>` and `real estate://search?q=...` 2. List 8 concrete resource examples with URI, MIME type, and a short description 3. Implement `resources/list` — paginated, with cursor 4. Implement `resources/read` — return `text` or `blob` content, set `mimeType` correctly 5. Implement `resources/templates/list` for parameterized URIs 6. If the dataset changes, implement `resources/subscribe` + `notifications/resources/updated` 7. Access control: which resources should require elevated auth? ## Part 2 — Prompt Templates for real estate workflows Design 6 Prompt Templates that Claude Code users would reach for. For each, provide: - `name` (kebab-case, scoped like `real estate/<verb>`) - `description` shown in the Claude Code UI picker - `arguments`: name, description, `required`, example value - The **messages** the template expands to, including how it attaches relevant Resources via `resource_link` or embedded resource contents - Why this is a Prompt (user-initiated) and not a Tool (model-initiated) Example workflows to cover: "summarize today's changes in <entity>", "compare two <entities>", "draft a <domain>-specific report from <resource>". ## Part 3 — Tools (only where needed) List any tools the agent genuinely needs (e.g. write-back actions). Keep the tool surface small; prefer resources for reads. ## Part 4 — Claude Code install + UX - Config JSON block for Claude Code's MCP settings - How Resources appear in the Claude Code UI (attach picker, @-mention, autocomplete) - How Prompt Templates appear (slash menu, command palette) - Screenshots/descriptions of the expected UX so the user knows what "working" looks like ## Part 5 — Implementation Write the full server code for: - The resource handler (list + read + templates + subscribe) - Two of the prompt templates, fully fleshed out - OAuth 2.0 client credentials middleware - A `Dockerfile` that runs under TypeScript + Node 20 ## Part 6 — Testing - Unit tests: resource URI parsing, prompt argument validation - Integration test driving the server via the MCP client SDK - A manual test plan for Claude Code: "open Claude Code, attach resource X, run prompt Y, expect Z" ## Part 7 — Versioning and backward compat When the real estate schema changes, how do you version resource URIs and prompt argument shapes without breaking existing agents? Document the deprecation path. Output must be concrete and implementation-ready. No vague "you could also...". Pick one stack, ship it.