\1
Multi-Format Content Delivery for AI Systems, Crawlers & Licensing
Version 1.0 | Dr. Paul Farrow | November 2025
This API provides content in multiple industry-standard formats designed for modern publishers, AI systems, search engines, and licensing platforms.
Semantic HTML with Schema.org, OpenGraph, and AI permission metadata
RSS 2.0 and Atom 1.0 feeds with category and tag filtering
XML sitemaps for articles, categories, and tags
JSON API with pagination, filtering, and search
Flexible queries with GraphiQL interface
Model Context Protocol adapter for LLMs
Natural Language Web structured summaries
JSON, NDJSON, and XML archive exports
https://drpaulfarrow.com/publisher
# Get all articles
curl https://drpaulfarrow.com/publisher/api/v1/articles
# Get single article
curl https://drpaulfarrow.com/publisher/api/v1/articles/privacy-first-advertising
# RSS feed
curl https://drpaulfarrow.com/publisher/rss.xml
# MCP query
curl -X POST https://drpaulfarrow.com/publisher/mcp \
-H "Content-Type: application/json" \
-d '{"tool":"get_article","parameters":{"slug":"privacy-first-advertising"}}'
/articles/{article-id}
Returns a fully-formed HTML article page with comprehensive metadata.
<meta name="ai-training" content="allow" />
<meta name="ai-inference" content="allow" />
<meta name="ai-commercial" content="allow" />
/rss.xml
Returns last 50 articles across all categories.
/rss/{category}.xml
Example: /rss/privacy.xml
/rss/tag/{tag}.xml
Example: /rss/tag/ai.xml
privacy | neuroscience | adtech | ai | career
/sitemap.xml
Sitemap index linking to all sub-sitemaps.
/sitemaps/articles.xml
All article URLs with last modified dates.
/sitemaps/categories.xml
Category listing pages.
/sitemaps/tags.xml
Tag listing pages.
/api/v1/articles
| Parameter | Type | Description |
|---|---|---|
category |
string | Filter by category |
tag |
string | Filter by tag |
limit |
integer | Items per page (default: 20) |
cursor |
integer | Pagination offset (default: 0) |
{
"data": [
{
"id": "privacy-first-advertising",
"title": "The Future of Privacy-First Advertising",
"author": "Dr. Paul Farrow",
"published_at": "2025-01-15T10:00:00Z",
"category": "privacy",
"tags": ["privacy", "advertising"],
"excerpt": "...",
"canonical_url": "https://drpaulfarrow.com/publisher/privacy-first-advertising",
"allow_ai_training": true,
"allow_ai_inference": true
}
],
"pagination": {
"cursor": 20,
"hasMore": false,
"total": 10
}
}
/api/v1/articles/{id}
Returns complete article including HTML and plaintext content.
/api/v1/categories
/api/v1/tags
/api/v1/licensing
/graphql
Interactive GraphiQL interface available at /graphql
query {
articles(category: "privacy", limit: 5) {
id
title
author
published_at
excerpt
tags
allow_ai_training
}
categories
tags
}
query {
search(query: "artificial intelligence") {
id
title
excerpt
canonical_url
}
}
/mcp
Exposes publisher content to LLMs via standardized MCP tools.
| Tool | Parameters | Description |
|---|---|---|
list_articles |
none | Get all articles with metadata |
get_article |
slug |
Get single article by ID |
search_articles |
query |
Search articles by text |
get_categories |
none | List all categories |
get_tags |
none | List all tags |
{
"tool": "get_article",
"parameters": {
"slug": "privacy-first-advertising"
}
}
{
"tool": "get_article",
"result": { /* full article object */ },
"timestamp": "2025-11-17T12:00:00Z",
"rights": {
"licensing_endpoint": "https://drpaulfarrow.com/publisher/api/v1/licensing",
"attribution_required": true
}
}
/nlweb/articles/{slug}
Natural Language Web format (v0.83+) with structured metadata for AI consumption.
/export/json
Complete archive in JSON format with metadata.
/export/ndjson
Newline-delimited JSON, one article per line.
/export/xml
Complete archive in XML format.
/robots.txt
Configures crawler access for different user agents including AI bots.
API endpoints are rate-limited to 100 requests per 15 minutes per IP address.
"Too many requests from this IP, please try again later."
CORS is enabled for all origins to facilitate testing and integration.
All articles follow a unified content model:
{
"id": "string (unique slug)",
"title": "string",
"subtitle": "string (optional)",
"author": "string",
"published_at": "ISO 8601 datetime",
"updated_at": "ISO 8601 datetime",
"category": "string",
"tags": ["array of strings"],
"excerpt": "string (short description)",
"content_html": "string (HTML)",
"content_plaintext": "string (plain text)",
"cover_image_url": "string (optional)",
"canonical_url": "string (full URL)",
"rights_licensing": "string",
"allow_ai_crawl": "boolean",
"allow_ai_training": "boolean",
"allow_ai_inference": "boolean",
"licensing_endpoint": "string (URL)"
}
For licensing inquiries, commercial use, or technical support:
When using content from this API, please provide proper attribution:
Farrow, P. (2025). [Article Title]. Retrieved from https://drpaulfarrow.com/publisher/[article-id]