SofiaStage Events

Read-only tools for current SofiaStage events, venues, cities, performers, and editorial.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
90%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,490Tokens (tool definitions)
~2.6 KBTypical response size
Moderate attention impact (1.16% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "events": {
      "url": "https://api.sofiastage.com/mcp"
    }
  }
}

Remote endpoints

https://api.sofiastage.com/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢search_events(query, scope, city, date_from, date_to, ...)

Search current cultural events by Sofia/all-city scope, city, date, local time, venue, title, performer, or editorial collection. Returns stable event IDs and cursor pagination.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "description": "Performance-title search text. Bulgarian and Latin transliteration are supported.",
      "type": "string",
      "minLength": 1,
      "maxLength": 160
    },
    "scope": {
      "default": "sofia",
      "description": "Default Sofia-only scope, or all cities.",
      "type": "string",
      "enum": [
        "sofia",
        "all"
      ]
    },
    "city": {
      "description": "City name. Providing a city takes precedence over the Sofia default.",
      "type": "string",
      "minLength": 1,
      "maxLength": 160
    },
    "date_from": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "date_to": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "relative_date": {
      "type": "string",
      "enum": [
        "today",
        "tomorrow",
        "this_weekend",
        "next_7_days"
      ]
    },
    "time_from": {
      "description": "Local Europe/Sofia lower boundary for the first requested date.",
      "type": "string",
      "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d$"
    },
    "time_to": {
      "description": "Local Europe/Sofia upper boundary for the last requested date.",
      "type": "string",
      "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d$"
    },
    "venue": {
      "type": "string",
      "minLength": 1,
      "maxLength": 160
    },
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 160
    },
    "performer": {
      "description": "Performer or creative-team name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 160
    },
    "editorial": {
      "description": "Editorial collection or extra name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 160
    },
    "include": {
      "default": [],
      "maxItems": 2,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "stars",
          "extras"
        ]
      }
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    },
    "page_token": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2048
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "events": {
      "type": "array",
      "items": {
        "type": "object",
        "propertyNames": {
          "type": "string"
        },
        "additionalProperties": {}
      }
    },
    "has_more": {
      "type": "boolean"
    },
    "page_token": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "applied_filters": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "timezone": {
      "type": "string",
      "const": "Europe/Sofia"
    }
  },
  "required": [
    "events",
    "has_more",
    "page_token",
    "applied_filters",
    "timezone"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_event(event_id, include)

Get one event by canonical show_stable_id or legacy source ID, optionally including related performers and editorial entries.

Input Schema

{
  "type": "object",
  "properties": {
    "event_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Canonical show_stable_id (preferred) or legacy source ID."
    },
    "include": {
      "default": [
        "stars",
        "extras"
      ],
      "maxItems": 2,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "stars",
          "extras"
        ]
      }
    }
  },
  "required": [
    "event_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "event": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    }
  },
  "required": [
    "event"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢search_catalog(kind, query, scope, city, limit)

Search cities, venues, production titles, performers, or editorial collections. Performer and editorial results are compact; use their detail tools next.

Input Schema

{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string",
      "enum": [
        "city",
        "venue",
        "title",
        "performer",
        "editorial"
      ]
    },
    "query": {
      "type": "string",
      "minLength": 1,
      "maxLength": 160
    },
    "scope": {
      "default": "sofia",
      "type": "string",
      "enum": [
        "sofia",
        "all"
      ]
    },
    "city": {
      "type": "string",
      "minLength": 1,
      "maxLength": 160
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "required": [
    "kind"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string",
      "enum": [
        "city",
        "venue",
        "title",
        "performer",
        "editorial"
      ]
    },
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "propertyNames": {
          "type": "string"
        },
        "additionalProperties": {}
      }
    },
    "truncated": {
      "type": "boolean"
    }
  },
  "required": [
    "kind",
    "items",
    "truncated"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_performer(name_or_slug)

Get a SofiaStage performer or creative-team profile, biography metadata, public links, and precomputed upcoming events by exact name or route slug.

Input Schema

{
  "type": "object",
  "properties": {
    "name_or_slug": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Exact public name/title or route slug."
    }
  },
  "required": [
    "name_or_slug"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "performer": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    }
  },
  "required": [
    "performer"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_editorial(name_or_slug)

Get a SofiaStage editorial collection, article metadata, and precomputed upcoming events by exact title or route slug.

Input Schema

{
  "type": "object",
  "properties": {
    "name_or_slug": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Exact public name/title or route slug."
    }
  },
  "required": [
    "name_or_slug"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "editorial": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    }
  },
  "required": [
    "editorial"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools
verifiedversion not recorded5 tools