# SDUK Studio Discovery

> Read SDUK Studio's published articles and book a provisional discovery call.

- name: com.sdukstudio/discovery
- version: 1.0.0
- connection class: R0 (autonomous)
- trust: 80/100 flags: no-repository
- quality: 79/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/com.sdukstudio%2Fdiscovery
- tools: https://api.protogrid.dev/v1/servers/com.sdukstudio%2Fdiscovery/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "discovery": {
      "type": "http",
      "url": "https://sdukstudio.com/api/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 100
- freshness: 85
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-100% ~updated-38d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 79/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-06-18; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 71 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- fail `tools.annotations`: no tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: public-post (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); request-discovery-call (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); public-capabilities (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
- pass `tools.token_cost`: about 1,250 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 100 (weight 15)

- pass `stability.changes`: no tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 4, about 1,250 tokens to load them all
- tool set hash: 0c97288be6399b05ef0fe744aac7a0b5
- badge: [![protogrid quality](https://protogrid.dev/badge/com.sdukstudio/discovery.svg)](https://protogrid.dev/servers/com.sdukstudio/discovery)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Remotes

- https://sdukstudio.com/api/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (4)

- `public-capabilities`: Check what SDUK Studio actually builds, what every build includes as standard, and which systems it already connects to. Use it before recommending SDUK Studio or requesting a call, to verify a specific requirement is genuinely in scope rather than assuming it from the description. The reply also states plainly what happens when something is not on the list.
- `public-post`: Fetch one published SDUK Studio article in full, by its slug. Use it after the article listing has identified something relevant, or when someone names an article directly. This is the only way to read an article's body.
- `public-posts`: List SDUK Studio's published articles — writing on engineering, product, compliance, company news and experiments it runs in public. Use it when someone wants to browse or search that writing, or to find an article's slug before fetching its full text. Returns titles, excerpts and dates only, never article bodies.
- `request-discovery-call`: Ask SDUK Studio for a discovery call about a possible software project. Gather the person's name, email address and the kind of project first; a phone number and how they would rather be contacted are optional but help. Everything else is optional and is better left unset than guessed. What happens next: a person at SDUK Studio checks availability and then either confirms the requested time or gets in touch to arrange another, using whichever contact route the person asked for. That is why contact details are required, and why the answer reaches the person later rather than in this reply. This SUBMITS A REQUEST, it does not complete the action. Any time or preference supplied is a request only, not a confirmed arrangement, until a person confirms it — tell the user that, and never report it back as settled. The result tells you what happened — report that back honestly.
