For AI agents: a documentation index is available at https://docs.plungeai.com/llms.txt. Append .md to any page URL, or send Accept: text/markdown, to get markdown. Setup instructions for agents are at https://docs.plungeai.com/agents.md. Execution planes take an ozk_ key; the models plane takes an sk-ocean- key.

Documentation Index: fetch the complete documentation index at /llms.txt. Use this file to discover all available pages before exploring further.

Available now over MCP; a REST route is tracked as TI-79.

Read the identity behind your key: the user, the auth type and tier, the key label and id, and the current rate-limit window. It is the plungeai_whoami tool of the MCP server, so any MCP client can call it, and it is read-only.

Endpoint

POST https://mcp.plungeai.com/v1  ·  tools/call  ·  name: plungeai_whoami

Authorizations

Authorization: Bearer $PLUNGE_API_KEY or X-API-Key: $PLUNGE_API_KEY, an ozk_ key from Dashboard → One API → Keys. The call counts toward your rate limit, so the window it reports includes it.

Arguments

user_requeststring

The user's words, up to 4,000 characters. Optional.

formatstring

markdown or json. json returns the fields below as a JSON document and as structuredContent.

Default: markdown

Output

With format: "markdown" (the default) the text starts with # Who am I and lists User, Auth (type and tier), Key (label and key id), Rate window (<n>/min used · <n>/day used, left out when the counter cannot be read) and Server. With format: "json":

userstring

Your user id.

auth_typestring

How the request authenticated, api-key for an ozk_ key.

tierstring | null

The key's tier: free, pro or enterprise, or null when the key carries none.

key_labelstring | null

The name you gave the key in the Dashboard, or null when it has none.

key_idstring | null

The key's id, or null when it is not known.

rate_windowobject | null

{ "minute_used", "day_used" } for the current windows, or null when the counter cannot be read.

serverstring

The server name and host, plungeai.com (mcp.plungeai.com).

Example

import json, os, requests

r = requests.post(
    "https://mcp.plungeai.com/v1",
    headers={
        "Authorization": f"Bearer {os.environ['PLUNGE_API_KEY']}",
        "Content-Type": "application/json",
        "Accept": "application/json, text/event-stream",
    },
    json={"jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": {"name": "plungeai_whoami", "arguments": {"user_request": "who am I?", "format": "json"}}},
)
frames = [line[len("data: "):] for line in r.text.splitlines() if line.startswith("data: ")]
print(json.loads(frames[-1])["result"]["structuredContent"])

Result shape, Markdown form (the field layout of the tool reference; every value is a placeholder):

# Who am I

- **User:** `00000000-0000-4000-8000-000000000005`
- **Auth:** api-key · tier **free**
- **Key:** my-laptop (`00000000-0000-4000-8000-000000000008`)
- **Rate window:** 1/min used · 12/day used
- **Server:** plungeai.com (mcp.plungeai.com)

Result shape, JSON form (format: "json", the structuredContent; every value is a placeholder):

{
  "user": "00000000-0000-4000-8000-000000000005",
  "auth_type": "api-key",
  "tier": "free",
  "key_label": "my-laptop",
  "key_id": "00000000-0000-4000-8000-000000000008",
  "rate_window": { "minute_used": 1, "day_used": 12 },
  "server": "plungeai.com (mcp.plungeai.com)"
}

The same tool is documented field by field on plungeai_whoami.

Planned: TI-33

Search is not available yet. Until it ships, use the page index or browse the sidebar.

Planned: TI-34

The docs assistant is not available yet. You can hand these docs to your own assistant instead.