---
title: "Your first request | StudioMeyer Academy"
description: "Start without an account: read the index, find content and try the public MCP."
canonical: "https://studiomeyer.academy/en/entwickler/schnellstart"
language: en
markdown_versions: ["https://studiomeyer.academy/entwickler/schnellstart.md", "https://studiomeyer.academy/en/entwickler/schnellstart.md", "https://studiomeyer.academy/es/entwickler/schnellstart.md"]
publisher: "StudioMeyer Academy, https://studiomeyer.academy (llms.txt: https://studiomeyer.academy/llms.txt)"
---

## 1\. Read the contract

GET /v1 returns current operations, schemas, permissions and next links. These examples need no account or key.

```
curl -fsS 'https://studiomeyer.academy/v1'
```

## 2\. Find a path and a playbook

Read the lists and use a returned ID or link for the next call. For lessons use lesson:\<level>:\<slug> or an explicit level. Do not invent module or lesson IDs.

```
curl -fsS 'https://studiomeyer.academy/v1/paths?locale=en'
curl -fsS 'https://studiomeyer.academy/v1/library/playbooks?locale=en'
curl -fsS 'https://studiomeyer.academy/v1/search?query=prompt&locale=en'
```

## 3\. Initialize the public MCP and list tools

The public entry uses Streamable HTTP. Negotiate the protocol version with initialize; send MCP-Protocol-Version on subsequent requests too. These calls only read and need no token.

```
curl -fsS 'https://mcp.studiomeyer.academy/mcp?access=free' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -H 'MCP-Protocol-Version: 2025-11-25' \
  --data '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-11-25","capabilities":{},"clientInfo":{"name":"academy-quickstart","version":"1.0.0"}}}'

curl -fsS 'https://mcp.studiomeyer.academy/mcp?access=free' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -H 'MCP-Protocol-Version: 2025-11-25' \
  --data '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'
```

## 4\. Connect personally when needed

For progress and notes connect OAuth with learn:read and learn:write. Scripts can use an API key created in the browser. The example below expects a locally set REST token and only reads your permissions.

```
# Set ACADEMY_TOKEN locally to your REST credential. Never commit it.
curl -fsS 'https://studiomeyer.academy/v1/me/access' \
  -H "Authorization: Bearer $ACADEMY_TOKEN"
```

- [Access and permissions](https://studiomeyer.academy/en/entwickler/anmeldung)
- [REST API](https://studiomeyer.academy/en/entwickler/api)

## Sitemap

Public pages of this site as Markdown: [sitemap](https://studiomeyer.academy/sitemap.md). Curated entry point: [llms.txt](https://studiomeyer.academy/llms.txt), full text: [llms-full.txt](https://studiomeyer.academy/llms-full.txt).
