# MAJR Agent Services > Infrastructure for Agents. Your agents call these media and marketing capabilities instead > of building them. Every service exposes plain HTTP, MCP, OpenAPI, and an agent-readable llms.txt. Catalog last updated: 2026-07-17 Canonical machine catalog: https://release-notes.majr.app/catalog.json This page as JSON: https://majr.app/services.json ## Services ### Dispatch (dispatch) Dev log in -> customer-facing release-notes Markdown out. Drafting only; request/response bodies are never persisted. Origin: https://dispatch.majr.app Status: live Archetype: sync-http Auth: Authorization: Bearer (per-product keys) MCP: https://dispatch.majr.app/mcp llms.txt: https://dispatch.majr.app/llms.txt Playground: https://dispatch.majr.app/docs OpenAPI: https://dispatch.majr.app/openapi.json ### SEO / GEO / AEO (seo) Generates SEO/GEO/AEO machinery: robots.txt (AI crawlers welcomed by default), sitemap.xml, page + JSON-LD, llms.txt. Audits one page's technical SEO plus two AI-readiness signals (JSON-LD, server-rendered text). MCP tools mirror the full v1 surface: audit_page, audit_html, generate_head, generate_robots, generate_sitemap, generate_llms_txt. Origin: https://seo.majr.app Status: live Archetype: sync-http Auth: Authorization: Bearer (per-product keys) MCP: https://seo.majr.app/mcp llms.txt: https://seo.majr.app/llms.txt Playground: https://seo.majr.app/docs OpenAPI: https://seo.majr.app/openapi.json ### Media Encoding (media-encoding) User uploads -> streaming media: video -> HLS (multi-rendition + poster), audio -> AAC, image -> WebP. Managed temporary storage (presigned upload in, presigned outputs out) or bring-your-own bucket; poll or signed callback. Origin: https://encoding.majr.app Status: live Archetype: async-queue Auth: Authorization: Bearer (per-product keys) Contract: POST /v1/uploads -> 201; POST /v1/encode -> 202 {jobId}; GET /v1/jobs/{id}; or the same operations over MCP at /mcp MCP: https://encoding.majr.app/mcp llms.txt: https://encoding.majr.app/llms.txt OpenAPI: https://encoding.majr.app/openapi.json ## Access The services are live. Access is in beta, and tokens are issued by hand. Request one at https://majr.app/#access or email jamie@majr.app. Free during beta. Billing is not enabled yet. ## Notes for agents A 503 from any service is never a verdict on your key. It means the service could not check the key right now, so retry rather than rotating a working credential.