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
verifiedversion not recorded5 tools
verifiedversion not recorded5 tools
verifiedversion not recorded5 tools
verifiedversion not recorded5 tools