Ultrapedia
US ultramarathons: dates, places, distances, elevation, prices. Every value cited.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"ultrapedia": {
"url": "https://ultrapedia.run/mcp"
}
}
}Remote-Endpunkte
https://ultrapedia.run/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (8)
🟢describe
What Ultrapedia holds: the queryable views, every column and what it means, the allowed values of category columns, and how many races there are. Read this before writing SQL for `query`.
Eingabe-Schema
{
"type": "object",
"properties": {},
"title": "describeArguments"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "describeOutput"
}🟢query(sql, limit)
Run one read-only SQL SELECT (SQLite) over the views `races`, `editions` and `sources`. Returns columns and rows; `truncated` is true when more rows exist than `limit` (max 500). Example: SELECT slug, name, date, city FROM races WHERE state='CO' AND distance_category='100M' AND date >= date('now') ORDER BY date
Eingabe-Schema
{
"type": "object",
"properties": {
"sql": {
"title": "Sql",
"type": "string"
},
"limit": {
"default": 100,
"title": "Limit",
"type": "integer"
}
},
"required": [
"sql"
],
"title": "queryArguments"
}🟢search_races(text, state, distance_category, date_from, date_to, ...)
Find races. `text` matches the name, city or start location; `state` is a two-letter code; `distance_category` is one of the values in `describe`; dates are yyyy-mm-dd and filter the current edition's date. Returns the main columns; use `get_race` for everything about one race.
Eingabe-Schema
{
"type": "object",
"properties": {
"text": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Text"
},
"state": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "State"
},
"distance_category": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Distance Category"
},
"date_from": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Date From"
},
"date_to": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Date To"
},
"limit": {
"default": 25,
"title": "Limit",
"type": "integer"
}
},
"title": "search_racesArguments"
}🟢get_race(slug)
Everything about one race: its values, its editions, and for every value the page it was read from and the verbatim quote.
Eingabe-Schema
{
"type": "object",
"properties": {
"slug": {
"title": "Slug",
"type": "string"
}
},
"required": [
"slug"
],
"title": "get_raceArguments"
}🟢read_source(url, find)
Read a public web page the way this server reads it when it checks a quote: its visible text and its links. Use it before `propose_correction` to copy an exact quote, or to read a race page your own tools cannot open. `find` returns only the passages around that text. A value that is a URL (website_url, registration_url) can be shown by a link: quote the sentence that holds it.
Eingabe-Schema
{
"type": "object",
"properties": {
"url": {
"title": "Url",
"type": "string"
},
"find": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Find"
}
},
"required": [
"url"
],
"title": "read_sourceArguments"
}🔴propose_correction(slug, field, value, source_url, quote, ...)
Send a value for one field of one race, read from a web page — a correction or a value the index is missing. `field` is a column name from `describe`; `value` is in that column's form and units (gain_m in metres, dates yyyy-mm-dd, start_time HH:MM 24h, price_usd a number). `quote` must be copied verbatim from `source_url` and must show the value. For date, start time, price, aid stations, drop bags and runners, `year` is the edition year. The server checks the quote on the page; the result says whether the value was applied, held for a maintainer, or rejected and why.
Eingabe-Schema
{
"type": "object",
"properties": {
"slug": {
"title": "Slug",
"type": "string"
},
"field": {
"title": "Field",
"type": "string"
},
"value": {
"title": "Value"
},
"source_url": {
"title": "Source Url",
"type": "string"
},
"quote": {
"title": "Quote",
"type": "string"
},
"year": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Year"
}
},
"required": [
"slug",
"field",
"value",
"source_url",
"quote"
],
"title": "propose_correctionArguments"
}🟡propose_race(name, distance_category, source_url, quote, state, ...)
Send a US ultramarathon the index does not have yet. Check with search_races first. `quote` is copied verbatim from `source_url` and names the race. One call for each distance (a 50K and a 100M at the same event are two races).
Eingabe-Schema
{
"type": "object",
"properties": {
"name": {
"title": "Name",
"type": "string"
},
"distance_category": {
"title": "Distance Category",
"type": "string"
},
"source_url": {
"title": "Source Url",
"type": "string"
},
"quote": {
"title": "Quote",
"type": "string"
},
"state": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "State"
},
"city": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "City"
},
"website_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Website Url"
}
},
"required": [
"name",
"distance_category",
"source_url",
"quote"
],
"title": "propose_raceArguments"
}⚪report_problem(slug, note, source_url, quote)
Report something a single value cannot fix: a cancelled or discontinued race, two rows for the same race, a race filed under the wrong distance. Include a source and quote when you have one.
Eingabe-Schema
{
"type": "object",
"properties": {
"slug": {
"title": "Slug",
"type": "string"
},
"note": {
"title": "Note",
"type": "string"
},
"source_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Source Url"
},
"quote": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Quote"
}
},
"required": [
"slug",
"note"
],
"title": "report_problemArguments"
}Community
Nachweis