Skip to main content
Glama

This Weekend (이번 주말)

행사 제보

submit_event
Idempotent

지도에 없는 행사를 운영자 검토 대기열에 올립니다. 운영자가 그대로 승인할 수 있도록 일정, 분야, 장소 이름·주소·좌표, 설명, 확인용 url을 모두 넣어야 하고, 승인하기 전에는 공개되지 않습니다. 이미 지도에 있는 행사면 새로 올리지 않고 그 행사를 알려 줍니다. 사용자가 제보하겠다고 할 때만 부르세요.

Input Schema

NameRequiredDescriptionDefault
feeNofree는 무료, paid는 유료, unknown은 모름입니다. 기본값은 unknown입니다.unknown
urlYes운영자가 행사를 확인할 수 있는 http 또는 https 주소. 주최 측 안내 페이지가 가장 좋습니다.
cityYes행사가 열리는 시·도 id(seoul, busan 등).
kindYes행사 종류. 맞는 값이 없으면 기타를 고르고 kindOther에 종류를 적습니다.
placeYes장소 이름(두 글자 이상).
titleYes행사 이름. 두 글자 이상.
topicYes분야나 주제(예: 사진, 재즈).
addressYes장소의 도로명 주소.
bookingNonone은 예약 없이 입장, optional은 예약을 받지만 필수는 아님, required는 예약 필수, unknown은 모름입니다. 기본값은 unknown입니다.unknown
editKeyNo제보를 처음 보냈을 때 받은 editKey. reportId와 함께 넣습니다.
endDateYes끝 날짜(YYYY-MM-DD). 하루짜리 행사면 startDate와 같은 날짜를 넣습니다. 이미 끝난 행사는 받지 않습니다.
endTimeNo끝 시간(HH:MM, 24시간제). 모르면 비웁니다.
districtYes시·군·구 이름(종로구, 해운대구, 수원시). 서울은 25개 구 이름 중 하나여야 합니다.
latitudeYes장소의 위도(WGS84, 예: 37.5796). 지도에 핀을 꽂는 데 씁니다.
reportIdNo이미 보낸 제보를 고칠 때 넣는 reportId. editKey와 함께 넣으면 새로 접수하지 않고 그 제보를 고칩니다. 검토 전이면 내용이 바로 바뀌고, 반려된 제보는 고친 내용으로 다시 접수합니다.
kindOtherNokind가 기타일 때 적는 종류 이름(두 글자 이상).
longitudeYes장소의 경도(WGS84, 예: 126.9770).
startDateYes시작 날짜(YYYY-MM-DD, 한국 시간).
startTimeNo시작 시간(HH:MM, 24시간제). 모르면 비웁니다.
descriptionYes행사 설명 10자 이상. 출처에서 확인한 대상이나 프로그램을 적습니다. 승인되면 행사 페이지의 설명으로 쓰입니다.
locationModeNooffline은 현장 행사, hybrid는 현장과 온라인을 함께 하는 행사입니다. 온라인으로만 열리는 행사는 지도에 올릴 수 없어 받지 않습니다. 기본값은 offline입니다.offline

Output Schema

NameRequiredDescriptionDefault
eventYes관련된 공개 행사. submit_event에서는 already_listed일 때만 들어 있습니다.
editKeyYes제보를 고치거나 검토 결과를 볼 때 쓰는 키. 새로 접수할 때 한 번만 알려 주니 reportId와 함께 사용자에게 전하거나 보관해 두세요. duplicate와 already_listed면 null입니다.
messageYes
outcomeYesreceived는 새로 접수함, updated는 검토 전인 제보를 고침, resubmitted는 반려된 제보를 고쳐 다시 접수함, duplicate는 같은 제보가 이미 있음, already_listed는 지도에 이미 있는 행사라 접수하지 않음입니다.
reportIdYes접수 번호. already_listed면 null입니다.
revisionOfYes반려된 제보를 고쳐 다시 접수했다면 반려된 이전 접수 번호입니다. 아니면 null입니다.
reviewStatusYespending은 검토 전, approved는 반영됨, rejected는 반영하지 않음입니다. already_listed면 null입니다.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnly=false, idempotent=true, destructive=false; the description adds the substantive behavior: submissions land in a review queue and stay unpublished until an operator approves them, and duplicate detection returns the existing event instead of writing. Both are consistent with the idempotent and non-read-only hints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four short sentences, purpose front-loaded, each carrying distinct information (queue target, required payload, approval gating, duplicate behavior, invocation condition). No filler, though the required-field enumeration partially restates what the schema mandates.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 21-parameter, 13-required tool the description covers the create path well, and an output schema exists so return values needn't be explained. However it never mentions the second mode — editing a prior submission via reportId + editKey — nor the offline/hybrid restriction, both of which affect whether the agent should call this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already explains every field, including enums, formats, and bounds. The description enumerates the required set (schedule, topic, venue, coordinates, description, url) and explains why completeness matters for approval, but adds no format or usage detail beyond the schema; baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('지도에 없는 행사를 운영자 검토 대기열에 올립니다') and scopes it to events not already on the map. It doesn't name the sibling report_event_change, which handles corrections to existing events, so the boundary with that sibling must be inferred.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'사용자가 제보하겠다고 할 때만 부르세요' gives an explicit gating condition, and the duplicate clause tells the agent not to create a new entry for already-mapped events. Missing is a named alternative (e.g. report_event_change for change requests), so the routing rule is clear but incomplete.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources