From 78625e1462223c6c0ad286c648d9944844fdf9b3 Mon Sep 17 00:00:00 2001 From: Brian O'Kelley Date: Fri, 5 Dec 2025 13:38:48 -0500 Subject: [PATCH 1/2] Remove false claims about HTTP/REST endpoints MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The README incorrectly described separate ADCP HTTP endpoints at /adcp/* that don't exist. PR #21 initially proposed these but design feedback explicitly rejected them. The server is MCP-only via stdio (local) or streamable-http (production). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- README.md | 63 ++++++++++++++++++++++--------------------------------- 1 file changed, 25 insertions(+), 38 deletions(-) diff --git a/README.md b/README.md index d61d32c..dd42b2d 100644 --- a/README.md +++ b/README.md @@ -8,34 +8,31 @@ The AdCP Creative Agent is a stateless service that: - Provides complete specifications for standard IAB creative formats (video, display, audio, native, DOOH) - Generates live previews from creative manifests using AI (Gemini) - Stores preview HTML in Tigris (Fly.io's S3-compatible global storage) -- Supports both local development (stdio) and production deployment (HTTP) +- Supports both local development (stdio) and production deployment (streamable-http) ## Architecture ``` -┌──────────────────────────────────┐ ┌──────────────────────────────────┐ -│ MCP Clients │ │ ADCP HTTP Clients │ -│ (Claude, Agents) │ │ (TypeScript, Python) │ -└────────┬─────────────────────────┘ └────────┬─────────────────────────┘ - │ │ - │ MCP Protocol │ HTTP JSON - │ (stdio or HTTP at /mcp) │ (at /adcp/*) - │ │ -┌────────▼───────────────────────────────────────▼────────────────────────┐ -│ AdCP Creative Agent (Combined Server) │ +┌──────────────────────────────────┐ +│ MCP Clients │ +│ (Claude, Agents, MCP Libraries) │ +└────────┬─────────────────────────┘ + │ + │ MCP Protocol + │ (stdio locally, streamable-http in production) + │ +┌────────▼─────────────────────────────────────────────────────────────────┐ +│ AdCP Creative Agent (MCP Server) │ │ │ -│ /mcp - MCP Protocol Endpoint /adcp - ADCP HTTP Endpoints │ -│ (JSON-RPC wrapped responses) (Direct ADCP JSON responses) │ -│ │ -│ ┌─────────────────────────────────────────────────────────────────┐ │ -│ │ list_creative_formats - Returns all standard format specs │ │ -│ └─────────────────────────────────────────────────────────────────┘ │ -│ ┌─────────────────────────────────────────────────────────────────┐ │ -│ │ build_creative - AI-powered creative generation (Gemini) │ │ -│ └─────────────────────────────────────────────────────────────────┘ │ -│ ┌─────────────────────────────────────────────────────────────────┐ │ -│ │ preview_creative - Renders creative to HTML, uploads to Tigris │ │ -│ └─────────────────────────────────────────────────────────────────┘ │ +│ ┌─────────────────────────────────────────────────────────────────┐ │ +│ │ list_creative_formats - Returns all standard format specs │ │ +│ └─────────────────────────────────────────────────────────────────┘ │ +│ ┌─────────────────────────────────────────────────────────────────┐ │ +│ │ build_creative - AI-powered creative generation (Gemini) │ │ +│ └─────────────────────────────────────────────────────────────────┘ │ +│ ┌─────────────────────────────────────────────────────────────────┐ │ +│ │ preview_creative - Renders creative to HTML, uploads to Tigris │ │ +│ └─────────────────────────────────────────────────────────────────┘ │ └──────────────────────────────────┬───────────────────────────────────────┘ │ │ S3 API @@ -48,24 +45,14 @@ The AdCP Creative Agent is a stateless service that: └──────────────────────────────────────────────────────────────────────────┘ ``` -## Endpoints - -The server provides two protocols for accessing the same tools: +## Protocol -### MCP Endpoint (`/mcp`) -For MCP clients (like Claude Desktop, MCP client libraries): -- Follows MCP JSON-RPC protocol specification -- Responses wrapped in `{"result": {"content": [{"type": "text", "text": "..."}]}}` -- Use with MCP client libraries or Claude Desktop integration +This server implements the [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) using FastMCP: -### ADCP HTTP Endpoints (`/adcp/*`) -For direct HTTP clients that expect unwrapped ADCP responses: -- `GET /adcp/list-creative-formats` - List all available formats -- `POST /adcp/list-creative-formats` - List formats with filters (JSON body) -- `POST /adcp/preview-creative` - Generate creative preview -- `POST /adcp/build-creative` - AI-powered creative generation +- **Local development**: stdio transport (default) +- **Production (Fly.io)**: streamable-http transport on port 8080 -Returns clean ADCP JSON responses without MCP protocol wrapping. +Use any MCP client library to connect. For Claude Desktop integration, see the configuration below. ## Quick Start From e52f0594e0f7f05cf61f4795d1b4130d2fd15e99 Mon Sep 17 00:00:00 2001 From: Brian O'Kelley Date: Fri, 5 Dec 2025 13:40:27 -0500 Subject: [PATCH 2/2] Fix broken link to ADCP spec docs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The URL changed from adcontextprotocol.org/docs/... to docs.adcontextprotocol.org/docs/... 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index dd42b2d..49f1096 100644 --- a/README.md +++ b/README.md @@ -502,4 +502,4 @@ Apache 2.0 License - see LICENSE file ## Spec Reference -Format specifications from [AdCP Media Buy Protocol](https://adcontextprotocol.org/docs/media-buy/specification) +Format specifications from [AdCP Media Buy Protocol](https://docs.adcontextprotocol.org/docs/media-buy/overview)