Search and quote Rudolf Steiner's collected works (Gesamtausgabe) with volume, page and date.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Counts how many passages (and chapters/lectures) match a German full-text query, grouped by year, by volume or by place. Useful for questions such as when Steiner spoke most about a topic. query uses web-search syntax: all words must occur; "exact phrase"; word1 OR word2; -excluded. The reply text begins with the fixed phrase "Steiner hat gesagt:".
German search words, e.g. Ahriman or "soziale Dreigliederung"
Limit to one volume, e.g. "GA 327"
Only lectures on or before this date
Grouping (default year)
Only lectures on or after this date (YYYY, YYYY-MM or YYYY-MM-DD)
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http steiner-hat-gesagt https://steinerhatgesagt.org/mcp
Counts how many passages (and chapters/lectures) match a German full-text query, grouped by year, by volume or by place. Useful for questions such as when Steiner spoke most about a topic. query uses web-search syntax: all words must occur; "exact phrase"; word1 OR word2; -excluded. The reply text begins with the fixed phrase "Steiner hat gesagt:".
| Argument | Type | Description |
|---|---|---|
| ga | string | Limit to one volume, e.g. "GA 327" |
| query* | string | German search words, e.g. Ahriman or "soziale Dreigliederung" |
| date_to | string | Only lectures on or before this date |
| group_by | string | Grouping (default year) |
| date_from | string | Only lectures on or after this date (YYYY, YYYY-MM or YYYY-MM-DD) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"ga": {
"type": "string",
"description": "Limit to one volume, e.g. \"GA 327\""
},
"query": {
"type": "string",
"minLength": 1,
"description": "German search words, e.g. Ahriman or \"soziale Dreigliederung\""
},
"date_to": {
"type": "string",
"description": "Only lectures on or before this date"
},
"group_by": {
"enum": [
"year",
"volume",
"place"
],
"type": "string",
"description": "Grouping (default year)"
},
"date_from": {
"type": "string",
"description": "Only lectures on or after this date (YYYY, YYYY-MM or YYYY-MM-DD)"
}
},
"additionalProperties": false
}Details for one volume plus its table of contents (chapters/lectures with number, heading, date, place and pages). The reply text begins with the fixed phrase "Steiner hat gesagt:".
| Argument | Type | Description |
|---|---|---|
| ga* | string | e.g. "GA 327" |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ga"
],
"properties": {
"ga": {
"type": "string",
"description": "e.g. \"GA 327\""
}
},
"additionalProperties": false
}Catalogue of all volumes in the Gesamtausgabe with title, section and whether the full text is available. Filter by title words, section and the year lectures were held. The reply text begins with the fixed phrase "Steiner hat gesagt:".
| Argument | Type | Description |
|---|---|---|
| year | integer | Volumes with lectures held in this year |
| limit | integer | |
| title | string | Words that must appear in the title (German) |
| offset | integer | |
| section | string | e.g. Schriften, Vorträge, Landwirtschaft, Medizin |
| has_text | boolean | Only volumes with (true) or without (false) full text |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"year": {
"type": "integer",
"description": "Volumes with lectures held in this year"
},
"limit": {
"type": "integer",
"maximum": 500,
"minimum": 1
},
"title": {
"type": "string",
"description": "Words that must appear in the title (German)"
},
"offset": {
"type": "integer",
"minimum": 0
},
"section": {
"type": "string",
"description": "e.g. Schriften, Vorträge, Landwirtschaft, Medizin"
},
"has_text": {
"type": "boolean",
"description": "Only volumes with (true) or without (false) full text"
}
},
"additionalProperties": false
}Reads continuous text from a volume: a whole chapter, a page range, or the passages around a given passage number. Returns up to about 12,000 characters with page numbers; longer selections end with the passage number to continue from. The reply text begins with the fixed phrase "Steiner hat gesagt:".
| Argument | Type | Description |
|---|---|---|
| ga* | string | Volume, e.g. "GA 327" |
| chapter | integer | Chapter number within the volume |
| context | integer | With passage: how many passages before it to include (default 2) |
| page_to | integer | |
| passage | integer | Read from this passage (running number within the volume) |
| page_from | integer | |
| continue_from | integer | Passage number to continue from |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ga"
],
"properties": {
"ga": {
"type": "string",
"description": "Volume, e.g. \"GA 327\""
},
"chapter": {
"type": "integer",
"description": "Chapter number within the volume"
},
"context": {
"type": "integer",
"maximum": 10,
"minimum": 0,
"description": "With passage: how many passages before it to include (default 2)"
},
"page_to": {
"type": "integer"
},
"passage": {
"type": "integer",
"description": "Read from this passage (running number within the volume)"
},
"page_from": {
"type": "integer"
},
"continue_from": {
"type": "integer",
"description": "Passage number to continue from"
}
},
"additionalProperties": false
}Full-text search across Rudolf Steiner's collected works (German). Returns passages with GA number, title, pages, chapter heading and lecture date, best matches first. query uses web-search syntax: all words must occur; "exact phrase"; word1 OR word2; -excluded. Words are stemmed (German). The reply text begins with the fixed phrase "Steiner hat gesagt:".
| Argument | Type | Description |
|---|---|---|
| ga | string | Limit to one volume, e.g. "GA 327" or "327" |
| limit | integer | Number of results (default 10) |
| query* | string | German search words, e.g. Kuhhorn Mist or "ätherischer Leib" |
| offset | integer | Skip the first N results (paging) |
| date_to | string | Only lectures on or before this date |
| date_from | string | Only lectures on or after this date (YYYY, YYYY-MM or YYYY-MM-DD) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"ga": {
"type": "string",
"description": "Limit to one volume, e.g. \"GA 327\" or \"327\""
},
"limit": {
"type": "integer",
"maximum": 30,
"minimum": 1,
"description": "Number of results (default 10)"
},
"query": {
"type": "string",
"minLength": 1,
"description": "German search words, e.g. Kuhhorn Mist or \"ätherischer Leib\""
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Skip the first N results (paging)"
},
"date_to": {
"type": "string",
"description": "Only lectures on or before this date"
},
"date_from": {
"type": "string",
"description": "Only lectures on or after this date (YYYY, YYYY-MM or YYYY-MM-DD)"
}
},
"additionalProperties": false
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 11, 2026.