# OpenContent - Attribution-First Content Ingestion and Share Layer > AI-native open media/content ingestion, attribution, metadata, share-card, discovery, and MCP/API platform ## Overview OpenContent is a production-ready content ingestion and attribution platform designed for humans and agents. It provides: - **Full MCP Protocol Support** - Tools, resources, prompts for AI agents - **Auto-Generated SEO/AEO** - OG tags, Twitter/X cards, JSON-LD structured data, metatags, and share-card metadata - **Session Persistence** - JA4+ fingerprinting, draft auto-save - **Emoji Support** - Unicode emojis and shortcodes throughout - **Multi-Source Ingestion** - Accept videos, audio, podcasts, music, playlists, documents, articles, and public links ## Quick Start ### MCP Connection ```json { "mcpServers": { "OpenContent": { "url": "https://opencontent.platphormnews.com/api/mcp" } } } ``` ### REST API ```bash # List documents curl https://opencontent.platphormnews.com/api/v1/documents # Search curl "https://opencontent.platphormnews.com/api/v1/search?q=getting+started" # Submit content curl -X POST https://opencontent.platphormnews.com/api/v1/submissions \ -H "Content-Type: application/json" \ -d '{"source_url":"https://example.com","title":"My Doc","content":"# Hello"}' # Get dynamic share links for existing content curl https://opencontent.platphormnews.com/api/v1/content/{slug}/share-links # Safely preview public URL metadata without persistence curl -X POST https://opencontent.platphormnews.com/api/v1/content/preview \ -H "Content-Type: application/json" \ -d '{"url":"https://example.com/public-content"}' # Regenerate persisted metadata and share-card data curl -X POST https://opencontent.platphormnews.com/api/v1/content/{slug}/metadata/regenerate \ -H "Authorization: Bearer $PLATPHORM_API_KEY" # View public-safe Web Status curl https://opencontent.platphormnews.com/api/web/status ``` ## MCP Tools (47 Available) - `list_documents` - List published content with filtering, search, and pagination. Returns title, slug, emoji summary, reading time. - `get_document` - Get a single document by slug, including full Markdown content and metadata. - `create_document` - Create a new document. Returns the created document with slug and generated SEO metadata. - `update_document` - Update an existing document by slug. Only provided fields are updated. - `delete_document` - Soft-delete a document by slug. - `search` - Full-text search across all documents using PostgreSQL tsvector. - `list_categories` - List all document categories with document counts. - `list_content` - List public OpenContent media/content entries with filtering, search, and pagination. - `get_content` - Get a public OpenContent entry by slug or id with attribution, metadata, share-card data, and dynamic share links. - `preview_url` - Safely preview a public URL with SSRF protection and generated attribution, SEO/AEO, OG/Twitter, JSON-LD, share-card, and share-link metadata without persisting it. - `regenerate_metadata` - Regenerate and persist SEO/AEO/OG/Twitter/JSON-LD/metatag/share-link metadata for an existing OpenContent entry. Requires PLATPHORM_API_KEY. - `regenerate_share_card` - Regenerate and persist share-card and dynamic share-link metadata for an existing OpenContent entry. Requires PLATPHORM_API_KEY. - `get_share_links` - Get dynamic share links for an existing OpenContent entry without re-ingestion. - `get_attribution` - Get the generated attribution block for an existing OpenContent entry. - `search_content` - Search public OpenContent entries by title, description, creator, source URL, category, platform, and tags. - `list_sources` - List public content source domains with real content counts. - `list_platforms` - List OpenContent platforms with real public content counts. - `list_tags` - List public OpenContent tags with real content counts. - `validate_content_metadata` - Validate whether an existing OpenContent entry has the required attribution, SEO/AEO, OG/Twitter, share-card, metatag, JSON-LD, and share-link metadata. - `create_docs_report` - Create a public-safe OpenContent inventory, metadata, and share-card coverage report for Docs publication or operator review. - `create_sheet_report` - Create a structured OpenContent inventory report payload suitable for Sheets export; returns an honest degraded state if Sheets export is not configured. - `create_deck_summary` - Create an executive OpenContent summary payload suitable for Decks export; returns an honest degraded state if Decks export is not configured. - `get_related_content` - Get documents related to a specific document by slug based on category and tags. - `list_media_content` - List approved media content with filtering by type, platform, category, featured state, and sort order. - `get_media_content` - Get a single approved media content item with attribution and ingestion metadata. - `submit_content` - Submit external content for review and potential publication. - `ingest_url` - Automatically fetch and ingest content from a URL. - `ingest_media_url` - Ingest a media URL into media_content using the platform extractor pipeline. - `get_emoji` - Get a descriptive emoji summary for a given text. - `add_emoji_to_doc` - Generate and add an emoji summary to an existing document. - `bulk_import` - Import multiple documents at once. - `regenerate_seo` - Regenerate SEO metadata (og_title, og_description) for all documents. - `generate_optimization` - Generate SEO optimization suggestions for a document. - `export_content` - Export documents matching criteria in a specific format. - `get_stats` - Get overall documentation platform statistics. - `get_analytics_overview` - Get analytics, ingestion quality, submission queue, and content-health coverage for the full platform. - `get_discovery_hub` - Get the unified discovery map for human, builder, and machine-readable project surfaces. - `get_web_status` - Get public-safe OpenContent Web Status with source-labeled counts, route readiness, auth boundary, and degraded states. - `trigger_webhook` - Trigger a test webhook event. - `list_integrations` - List all configured external integrations. - `call_integration` - Call a specific external integration endpoint. - `parse_markdown` - Parse Markdown content and return HTML with table of contents - `generate_share_links` - Generate social sharing links for a document or OpenContent media/content entry. - `list_project_content` - List static root documentation files exposed publicly by this project. - `get_project_doc` - Get a specific static root documentation file from this project by slug. - `trigger_automation` - Trigger an automation workflow via Claws - `get_automation_status` - Get status of an automation workflow via Claws ## MCP Resources - `project-content://{slug}` - Access documentation for specific projects - `content://index` - Index of all published documentation pages - `content://media` - Index of approved public media content - `content://categories` - All documentation categories - `content://recent` - Recently published documentation - `content://popular` - Most viewed documentation - `content://tags` - All unique tags used in documentation - `content://stats` - Overall statistics for the documentation platform - `content://analytics` - Analytics, ingestion quality, and content-health summary - `content://discover` - Unified discovery map for human, builder, and machine-readable surfaces - `content://sitemap` - XML sitemap representation of all content - `content://llms` - AI-friendly representation of all documentation - `opencontent://content` - Public media/content entries with attribution-first metadata - `opencontent://content/{id}` - Single content entry by slug or id - `opencontent://sources` - Public source domains with content counts - `opencontent://platforms` - Supported and observed content platforms with counts - `opencontent://categories` - Content categories with media counts - `opencontent://tags` - Public content tags with counts - `opencontent://content/{id}/metadata` - SEO/AEO/OG/Twitter/share-card/JSON-LD metadata for a content entry - `opencontent://content/{id}/share-links` - Dynamic share links for an existing content entry - `opencontent://content/{id}/attribution` - Generated attribution block for an existing content entry - `opencontent://openapi` - OpenAPI discovery URL and endpoint inventory - `opencontent://llms` - LLM discovery URLs for OpenContent - `opencontent://trust-policy` - Public/protected boundary, auth, attribution, metadata, and trace policy summary - `opencontent://web-status` - Public-safe Web Status with source-labeled counts, route readiness, and degraded states ## MCP Prompts - `explain_doc` - Explain a documentation page in simple terms - `summarize_category` - Summarize all documents in a category - `compare_content` - Compare two documentation pages - `generate_faq` - Generate FAQ from document content - `translate_doc` - Translate document to another language - `improve_seo` - Suggest SEO improvements for a document - `summarize_content` - Summarize an OpenContent media/content entry with attribution context - `generate_attribution` - Generate or review an attribution block for an OpenContent entry - `generate_seo_metadata` - Generate SEO metadata guidance for an OpenContent entry - `generate_aeo_metadata` - Generate answer-engine metadata guidance for an OpenContent entry - `generate_share_copy` - Generate social share copy from OpenContent share-card metadata - `create_content_brief` - Create a human-machine handoff brief for an OpenContent entry - `explain_ingestion_failure` - Explain an ingestion or metadata generation failure in operator-friendly terms - `generate_content_remediation` - Generate remediation steps for missing attribution, metadata, or share-card coverage - `human_machine_content_handoff` - Prepare a handoff note for humans and agents working on a content entry ## API Endpoints ### Documents - `GET /api/v1/documents` - List (search, filter, paginate) - `POST /api/v1/documents` - Create (API key required) - `GET /api/v1/documents/{slug}` - Get document - `PUT /api/v1/documents/{slug}` - Update (API key) - `DELETE /api/v1/documents/{slug}` - Delete (API key) ### Submissions - `POST /api/v1/submissions` - Submit content (open) - `GET /api/v1/submissions` - List (API key) - `POST /api/v1/content/ingest` - Add URL content to the public OpenContent archive with attribution, metadata, share-card data, and share links - `POST /api/v1/ingest` - Legacy protected document URL ingestion ### Search & Categories - `GET /api/v1/search?q={query}` - Full-text search - `GET /api/v1/categories` - List categories ### Session & Fingerprinting - `GET /api/session` - Get/create session - `POST /api/session` - Save drafts, preferences ### OG Image Generation - `GET /api/og?title=...&emoji=...` - Generate share image ### Web Status - `GET /web/status` - Public-safe Web Status page - `GET /api/web/status` - Web Status JSON, schema `web.status.v1` - `GET /api/web/scorecard` - Web Status scorecard - `GET /api/web/manifest` - Web manifest - `GET /api/web/fingerprints` - Public-safe hashes ## Auto-Generated Features Every document automatically gets: - OG title, description, image - Twitter card meta tags - JSON-LD structured data - Canonical URL - Reading time & word count - Emoji summary - Keywords extraction - Social share links Every media/content entry also supports post-creation retrieval and protected regeneration of attribution, SEO/AEO, OG/Twitter/X metadata, JSON-LD, metatags, share-card metadata, and dynamic share links without re-ingestion. ## Authentication Bearer token for protected endpoints: ``` Authorization: Bearer $PLATPHORM_API_KEY ``` Bootstrap first key (only if none exist): ```bash curl -X PUT https://opencontent.platphormnews.com/api/v1/keys -d '{"name":"Admin"}' ``` ## Related Resources - [Full LLM Context](https://opencontent.platphormnews.com/llms-full.txt) - Complete doc index - [LLM Index JSON](https://opencontent.platphormnews.com/llms-index.json) - Machine-readable - [API content](https://opencontent.platphormnews.com/docs/api) - Interactive reference - [MCP Guide](https://opencontent.platphormnews.com/docs/mcp) - MCP integration - [Web Status](https://opencontent.platphormnews.com/web/status) - Public-safe readiness and source-backed metrics - [Graph JSON](https://opencontent.platphormnews.com/graph.json) - Generated public-safe graph snapshot - [OpenAPI JSON](https://opencontent.platphormnews.com/openapi.json) - Machine-readable API spec ## External Integrations - Emoji MCP: https://emoji.platphormnews.com/api/mcp - Calendar, Kanban integrations available --- OpenContent v2.0.0 | MCP Protocol 2024-11-05