A public API for everything we do.
Our services, our client work and our contact details, as JSON and as MCP tools. Read-only, no authentication, no API key. Agents can start at /auth.md.
REST API
Base URL https://telsamedia.co.uk/api/v1 · OpenAPI 3.1 at
/api/v1/openapi.json.
| Endpoint | Returns |
|---|---|
GET /health | Liveness and API version. |
GET /company | Contact details, address, social profiles and review scores. |
GET /services | Every service we offer. |
GET /services/{slug} | One service in full — offerings, statistics, FAQs. Slugs: marketing, design, development. |
GET /portfolio | Client projects. Supports ?q=, ?limit= (1–100), ?offset=. |
GET /portfolio/{slug} | One client project. |
GET /openapi.json | The machine-readable description of all of the above. |
curl -s 'https://telsamedia.co.uk/api/v1/portfolio?q=roofing&limit=3'
Errors come back as {"error":{"code":"…","message":"…"}} with a matching
status — 404 for an unknown slug, 405 for anything
but GET, 429 past 120 requests per minute per IP.
MCP server
Streamable HTTP at https://telsamedia.co.uk/mcp — stateless, read-only,
no credentials. Server card:
/.well-known/mcp/server-card.json.
{
"mcpServers": {
"telsa-media": { "type": "http", "url": "https://telsamedia.co.uk/mcp" }
}
}
| Tool | What it does |
|---|---|
list_services | List every service Telsa Media offers (digital marketing, design & branding, web development), with a short summary and the page URL for each. |
get_service | Full detail for one service: what it covers, the specific offerings within it, headline results and frequently asked questions. |
search_portfolio | Search Telsa Media's client websites and case studies by business name, sector or keyword — useful for finding relevant prior work in a given industry. |
get_project | Detail for a single client project, including the sector, the services delivered and the live site URL. |
get_company_details | Telsa Media's contact details, registered address, founding year, social profiles and public review scores — and where a human enquiry should be sent. |
A GET to /mcp returns
405 by design: this server never pushes, so it offers no SSE stream. Send one
JSON-RPC request per POST — batching was removed from the spec in revision 2025-06-18.
Markdown for agents
Every page on this site will return itself as Markdown if you ask for it. HTML stays the default,
and both representations carry Vary: Accept.
curl -s -H 'Accept: text/markdown' https://telsamedia.co.uk/services/marketing
The response comes back as text/markdown with an
x-markdown-tokens estimate so you can budget the fetch.
Discovery documents
| Path | Standard |
|---|---|
| /.well-known/api-catalog | RFC 9727 — API catalog |
| /.well-known/ai-catalog.json | ARD capability manifest |
| /.well-known/agent-skills/index.json | Agent Skills Discovery v0.2.0 |
| /.well-known/mcp/server-card.json | MCP Server Card (SEP-1649) |
| /auth.md | Agent access & usage policy |
| /robots.txt | Content Signals |
Homepage responses also carry a Link header (RFC 8288) pointing at the
catalog, the OpenAPI description and this page.
Fair use
- 120 requests per minute per IP, for the REST API and for MCP separately. Honour
Retry-After. - Responses are cached for five minutes; the underlying content changes at most weekly. Cache rather than poll.
- Identify yourself in
User-Agentwith a contactable URL or address. - Everything is read-only. There is no endpoint that submits an enquiry — that is what the contact page and hello@telsamedia.com are for.
Questions about integrating? Get in touch.