Skip to main content
Glama

ssuMCP

Server Details

숭실대학교의 모든 정보 제공과 자동화 에이전트 기능을 MCP 표준 도구로 제공하는 공개 서버

지속적으로 업데이트 및 기능 추가 중입니다

공개 도구 •학식 - 학생식당·도담식당·기숙사(레지던스홀)등 모든 식당 메뉴 및 식당정보 •시설 - 캠퍼스 내 카페·편의점·복사 등 검색 •도서관 - 좌석 실시간 조회 / 도서 검색 •공지사항 - 최신 공지 목록·키워드검색·학과별공지 등

개인 도구 요청시 로그인 URL을 받아 한 번 로그인하면 이후 모든 개인 도구를 사용 가능

•u-SAINT - 시간표, 성적, 채플 정보, 졸업요건, 장학금 내역 등 •LMS - 현재 학기 미제출 과제·퀴즈목록 등 •도서관 - 대출 현황 및 반납 기한(예약 현황 및 예약 자동화 에이전트 도입 예정)

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.3/5 across 23 of 23 tools scored. Lowest: 3.7/5.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct university domain (e.g., notices, meals, library, grades, auth) with clear descriptions. Even similar tools like get_meal_by_date and get_today_meal are differentiated by date specificity. No tools overlap in their intended use.

Naming Consistency5/5

Tool names consistently follow a verb_noun pattern (get_, search_, list_, check_, start_, logout_). The verbs are appropriate for each action, and there is no mixing of styles like camelCase or inconsistent verb forms.

Tool Count5/5

23 tools cover a comprehensive set of university services (student info, campus facilities, notices, library, auth) without being excessive. Each tool serves a clear purpose, and the count is well-scoped for the server's stated domain.

Completeness4/5

The tool surface covers most information retrieval needs for a student portal. Minor gaps include the lack of action tools for library seat reservation or assignment submission, as noted in tool descriptions, but the core read-only workflow is complete.

Available Tools

23 tools
check_graduation_requirementsA
Read-only
Inspect

Returns the authenticated student's u-SAINT graduation eligibility and requirement status. Requires mcp_session_id with the SAINT provider linked via start_auth.

ParametersJSON Schema
NameRequiredDescriptionDefault
mcp_session_idYesMCP session ID issued by start_auth(SAINT). If absent or SAINT not linked, returns AUTH_REQUIRED with a loginUrl.
Behavior4/5

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

Annotations already indicate readOnlyHint=true and destructiveHint=false. The description adds that authentication via SAINT is required and that an AUTH_REQUIRED response occurs if not linked, providing behavioral context beyond annotations.

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

Conciseness5/5

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

Two concise sentences: first states purpose, second states a key requirement. No unnecessary words.

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

Completeness5/5

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

For a simple read tool with no output schema, the description adequately details the return value and the authentication requirement, making it complete.

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

Parameters4/5

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

Schema coverage is 100% with a description for mcp_session_id. The description adds meaning by explaining the linkage requirement and the AUTH_REQUIRED response, going beyond the schema.

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

Purpose5/5

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

The description clearly states the tool returns 'the authenticated student's u-SAINT graduation eligibility and requirement status', using a specific verb and resource. It distinguishes from sibling tools which handle notices, meals, library, etc.

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?

The description explicitly requires 'mcp_session_id with the SAINT provider linked via start_auth', providing clear context for when to use. However, it lacks explicit guidance on when not to use or alternatives.

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

get_active_noticesA
Read-only
Inspect

진행중(마감 전) 공지만 반환합니다. 마감 임박 공지나 현재 신청 가능한 공지를 확인할 때 유용합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNo카테고리 필터 (선택).
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds the key behavioral trait of filtering for active notices, which is useful context beyond annotations.

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

Conciseness5/5

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

The description consists of two concise sentences that are front-loaded with the core purpose. Every sentence adds value with no extraneous content.

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 simple read tool with one optional parameter and no output schema, the description explains the return filter and use case adequately. It could mention ordering or pagination, but is mostly complete.

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?

The input schema has 100% coverage with a description for the optional 'category' parameter. The tool description does not add any additional meaning beyond what the schema already provides, so baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool returns only active (pre-deadline) notices and explains its utility for checking imminent or currently applicable notices. This verb+resource combination distinguishes it from sibling tools like get_recent_notices.

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?

The description provides clear context for when to use the tool (checking active notices). However, it does not explicitly state when not to use it or mention alternatives, which would strengthen guidance.

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

get_auth_statusA
Read-only
Inspect

Returns the current MCP auth session status for each provider (SAINT, LMS, LIBRARY). If mcp_session_id is missing or invalid, all providers show as not linked. Sessions are stored in server memory and reset on server restart — call start_auth again if your session is lost.

ParametersJSON Schema
NameRequiredDescriptionDefault
mcp_session_idNoMCP session ID issued by start_auth. If absent or invalid, all providers show as not linked.
Behavior5/5

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

Description adds significant behavioral context beyond annotations: explains session storage in memory, reset on restart, and fallback action. This fully informs the agent about side effects and constraints.

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

Conciseness5/5

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

Three sentences front-load the primary purpose, then add essential behavior and fallback. No redundancy or filler.

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?

Covers purpose, parameter behavior, and persistence; however, lacks detail on the exact return format (e.g., whether status objects contain booleans or strings), which would help agents parse output without an output schema.

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% with parameter already described. The description restates the parameter's effect (missing/invalid returns not linked) but adds no new semantic detail beyond the schema.

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

Purpose5/5

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

Description clearly states it returns auth session status for three specific providers (SAINT, LMS, LIBRARY), distinguishing it from sibling tools like start_auth and logout_* which handle authentication lifecycle.

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?

Implied usage is checking auth status. The description tells users that a valid mcp_session_id is needed for real status, and that sessions reset on restart, suggesting when to call start_auth. However, it does not explicitly contrast with alternatives.

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

get_department_noticesA
Read-only
Inspect

특정 학과/부서 공지만 반환합니다. 예: '컴퓨터학부', '장학팀', '국제팀', '소프트웨어학부'.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo페이지 번호 (기본 1).
departmentYes학과/부서 이름. 예: 컴퓨터학부, 장학팀, 소프트웨어학부.
Behavior3/5

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

Annotations already indicate readOnlyHint=true and destructiveHint=false, so the description does not need to reiterate safety. It adds no additional behavioral context beyond the basic function, which is acceptable for a read-only tool.

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

Conciseness5/5

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

Single sentence with essential information, no wasted words. The department example list is concise and helpful.

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 simple list tool with complete schema coverage and clear annotations, the description is adequate. It lacks details about return format but no output schema exists, so the burden is low.

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 description's mention of department examples does not add significant meaning beyond the schema. The page parameter is not elaborated, but the schema already describes it.

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

Purpose5/5

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

Description clearly states the tool returns notices for a specific department, using the Korean verb '반환합니다'. It distinguishes from siblings like 'get_recent_notices' and 'search_notices' by specifying department filtering.

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

Usage Guidelines3/5

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

Description provides examples of department names but does not explicitly state when to use this tool versus alternatives. Usage is implied through the department filter, but no when-not or alternative guidance is given.

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

get_dorm_weekly_mealA
Read-only
Inspect

숭실대학교 레지던스홀(기숙사) 식당의 이번 주 주간 메뉴를 조회합니다. 7일치 조식/중식/석식과 휴무 정보를 함께 반환합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description adds value by specifying the return includes 7 days of meals and holiday info. No contradictions, and the description adequately discloses the tool's behavior beyond annotations.

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

Conciseness5/5

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

The description is a single, well-structured sentence in Korean that conveys all necessary information without waste.

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

Completeness5/5

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

Given no parameters and no output schema, the description fully explains what the tool does and what it returns. It is complete for a simple read-only query tool.

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

Parameters4/5

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

No parameters exist, so schema coverage is 100%. The description adds context about what is returned (7 days, meals, holiday info), which is useful beyond the empty schema.

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

Purpose5/5

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

The description clearly states it queries the weekly menu of the residence hall cafeteria, returning 7 days of breakfast/lunch/dinner and closed days. The verb '조회합니다' is specific, and it distinguishes from sibling tools like get_meal_by_date and get_today_meal.

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

Usage Guidelines3/5

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

The description does not explicitly state when to use this tool vs alternatives. While the purpose implies it for weekly overview, no direct guidance is provided for choosing between this and similar tools like get_meal_by_date or get_today_meal.

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

get_library_seat_statusA
Read-only
Inspect

숭실대학교 중앙도서관의 현재 좌석 현황을 층별로 조회합니다. 응답에는 해당 층의 전체/이용 가능/예약/사용 불가 좌석 수와 구역별 분포가 포함됩니다. 이 도구는 읽기 전용이며, 좌석 예약은 별도의 동작 도구로 분리되어 있습니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
floorYes조회할 도서관 층 코드. 가능한 값: 2 (2층), 5 (5층), 6 (6층).
Behavior4/5

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

Annotations already indicate readOnlyHint=true; description confirms and adds value by detailing response structure (counts and distribution). No contradictions.

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

Conciseness5/5

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

Three concise sentences: purpose, response content, and read-only note. No unnecessary information, front-loaded with key actions.

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

Completeness5/5

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

Given simple parameter, annotations covering safety, and clear response description (no output schema needed), the tool definition is fully complete for an agent to use correctly.

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 description coverage is 100%; the parameter 'floor' has clear descriptions in the schema. Description does not add further parameter details beyond the schema.

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

Purpose5/5

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

Clearly states it inquires current seat status by floor, with specific response contents (total/available/reserved/unavailable counts and area distribution), and distinguishes from a separate reservation tool.

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?

Explicitly states the tool is read-only and that reservation is handled separately, guiding appropriate usage. No direct sibling tool for seat status, so no additional exclusions needed.

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

get_meal_by_dateA
Read-only
Inspect

지정한 날짜(yyyy-MM-dd)의 숭실대학교 학생식당 메뉴를 조회합니다. restaurant 인자를 비워두면 캠퍼스 내 모든 식당의 코너별 메뉴와 휴무 정보를 함께 반환합니다. restaurant 인자를 지정하면 해당 식당만 조회합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateYes조회할 날짜. 반드시 ISO 형식 yyyy-MM-dd 의 문자열 (예: 2026-05-07). 빈 값/다른 형식이면 에러.
restaurantNo선택사항. 특정 식당만 조회하고 싶을 때 식당 이름을 한국어로 전달합니다. 가능한 값: 학생식당, 숭실도담식당, 스낵코너, 푸드코트, THE KITCHEN, FACULTY LOUNGE. 비워두면 전체 식당의 메뉴를 함께 반환합니다.
Behavior4/5

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

Annotations already declare readOnly and non-destructive. Description adds behavioral context: returning all corner menus and holiday info when restaurant is empty. No contradictions.

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

Conciseness5/5

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

Two sentences, front-loaded with main purpose, no unnecessary words. Each sentence adds distinct value.

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

Completeness5/5

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

For a simple query tool with well-described parameters, the description fully covers usage scenarios. No output schema needed for menu listing; description suffices.

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

Parameters5/5

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

Schema covers 100% of parameters but description adds meaning: exact ISO date format for 'date' and enumerates possible Korean values for 'restaurant'. Also explains empty behavior, which schema doesn't cover.

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

Purpose5/5

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

Description clearly states the action (조회) and resource (숭실대학교 학생식당 메뉴) with specific date format. It distinguishes from sibling 'get_today_meal' by supporting arbitrary dates, and explains behavior based on restaurant parameter.

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?

Description explicitly explains two usage modes: leaving restaurant empty for all restaurants vs. specifying one. It provides clear context on when to use each, but does not mention when not to use this tool or alternatives beyond siblings.

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

get_my_assignmentsA
Read-only
Inspect

Returns the authenticated student's pending LMS assignments and quizzes for the current term. Requires mcp_session_id with the LMS provider linked via start_auth. Returns AUTH_REQUIRED with a loginUrl if LMS is not authenticated — show the loginUrl to the user and ask them to open it in a browser, then retry this call with the returned mcp_session_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
mcp_session_idYesMCP session ID issued by start_auth(LMS). If absent or LMS not linked, returns AUTH_REQUIRED with a loginUrl.
Behavior5/5

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

Beyond the readOnlyHint annotation, the description discloses the error recovery flow (returning loginUrl on auth failure) and confirms no destructive actions, fully revealing runtime behavior.

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

Conciseness5/5

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

The description is exactly two sentences long, with the first sentence stating the core purpose and the second providing crucial usage guidance—no unnecessary words.

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

Completeness5/5

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

For a simple tool with one parameter and no output schema, the description fully covers purpose, parameter semantics, and expected error handling, enabling correct invocation.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3. The description adds value by explaining the source of mcp_session_id (from start_auth) and the error handling context, raising it above baseline.

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

Purpose5/5

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

The description clearly states it returns pending LMS assignments and quizzes for the authenticated student's current term, which distinguishes it from sibling tools like get_my_grades or get_my_schedule.

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?

The description explains the authentication prerequisite and provides clear instructions for handling AUTH_REQUIRED errors, though it does not explicitly mention alternatives or when not to use.

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

get_my_chapel_infoA
Read-only
Inspect

Returns the authenticated student's u-SAINT chapel attendance information. Year and semester are optional; without them the current u-SAINT semester is used. Requires mcp_session_id with the SAINT provider linked via start_auth.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearNoAcademic year, such as 2026.
semesterNoSemester: 1학기, 여름학기, 2학기, or 겨울학기.
mcp_session_idYesMCP session ID issued by start_auth(SAINT). If absent or SAINT not linked, returns AUTH_REQUIRED with a loginUrl.
Behavior5/5

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

Annotations already indicate readOnlyHint=true and destructiveHint=false. Description supplements with important details: authentication requirement and error response when session is absent or not linked. No contradiction.

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

Conciseness5/5

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

Two sentences, each with a distinct purpose: first states core function, second covers optional parameters and auth requirement. No fluff, front-loaded.

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 simple read-only tool with 3 parameters and no output schema, description covers purpose, parameters, default behavior, and auth linkage. Could mention return format but not critical.

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

Parameters4/5

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

Schema has 100% coverage with descriptions for all 3 parameters. Description adds value by explaining default behavior for year and semester when omitted, which is not in schema.

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

Purpose5/5

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

Description clearly states the tool returns chapel attendance info for the authenticated student, using a specific verb and resource. It distinguishes from sibling tools like get_my_grades or get_my_schedule.

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?

Provides context on optional parameters and default behavior (current semester used when omitted). Also states the authentication requirement via mcp_session_id linked through start_auth. Does not explicitly exclude alternatives but is sufficient.

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

get_my_gradesA
Read-only
Inspect

Returns the authenticated student's cumulative u-SAINT grades including semester GPA history. Requires mcp_session_id with the SAINT provider linked via start_auth. Returns AUTH_REQUIRED with a loginUrl if SAINT is not authenticated — show the loginUrl to the user and ask them to open it in a browser, then retry this call with the returned mcp_session_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
mcp_session_idYesMCP session ID issued by start_auth(SAINT). If absent or SAINT not linked, returns AUTH_REQUIRED with a loginUrl.
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds value by explaining the auth requirement and that AUTH_REQUIRED with loginUrl is returned if not authenticated. This goes beyond the annotations to provide behavioral context for error handling.

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

Conciseness5/5

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

Three sentences: first states purpose, second states requirement, third explains error recovery. Every sentence is necessary and front-loaded. No wasted words.

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

Completeness5/5

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

For a tool with one parameter and no output schema, the description is fully complete. It covers purpose, input requirement, error scenario, and user action. No obvious gaps.

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

Parameters4/5

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

There is one required parameter (mcp_session_id) with 100% schema description coverage. The description adds meaning by explaining that if the parameter is absent or SAINT not linked, the tool returns AUTH_REQUIRED with a loginUrl. This enhances the schema's description.

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

Purpose5/5

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

The description clearly states it returns the authenticated student's cumulative u-SAINT grades including semester GPA history. It specifies a concrete action ('returns') and a resource ('u-SAINT grades'), which distinguishes it from sibling tools like get_my_schedule or get_my_library_loans.

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?

The description explicitly states the required mcp_session_id from start_auth and provides step-by-step instructions for handling the AUTH_REQUIRED error: show loginUrl to user and retry. It does not mention when to use this tool over alternatives like check_graduation_requirements, but the context is clear enough for the intended use case.

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

get_my_library_loansA
Read-only
Inspect

Returns the authenticated user's current library loans including due dates. Requires mcp_session_id with the LIBRARY provider linked via start_auth. Returns AUTH_REQUIRED with a loginUrl if LIBRARY is not authenticated — show the loginUrl to the user and ask them to open it in a browser, then retry this call with the returned mcp_session_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
mcp_session_idYesMCP session ID issued by start_auth(LIBRARY). If absent or LIBRARY not linked, returns AUTH_REQUIRED with a loginUrl.
Behavior5/5

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

Annotations indicate readOnlyHint=true and destructiveHint=false. The description adds behavioral context: the tool may return AUTH_REQUIRED with a loginUrl if not authenticated, and details the correct user-facing flow. No contradictions with annotations.

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

Conciseness5/5

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

The description is two sentences, efficient and front-loaded: the first states the main purpose, the second provides necessary authentication handling. No unnecessary words.

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

Completeness5/5

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

Given no output schema, the description still explains both success (loans with due dates) and error (AUTH_REQUIRED) behavior. It covers authentication requirements and user interaction steps. Complete for a simple read 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?

The only parameter mcp_session_id is fully described in the schema (100% coverage). The description does not add extra parameter-specific meaning beyond the schema, but the schema itself is sufficient. Per guidelines, baseline 3 is appropriate.

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

Purpose5/5

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

The description explicitly states 'Returns the authenticated user's current library loans including due dates.' This clearly identifies the verb (Returns), resource (library loans), and scope (authenticated user). It distinguishes from siblings like search_library_book which deals with book search.

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

Usage Guidelines5/5

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

The description provides clear guidance: it requires mcp_session_id linked via start_auth, and explicitly instructs the agent to show loginUrl to the user and retry if authentication fails. This tells when to use and how to handle authentication errors.

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

get_my_scheduleA
Read-only
Inspect

Returns the authenticated student's u-SAINT timetable for all enrolled semesters. Requires mcp_session_id with the SAINT provider linked via start_auth. Returns AUTH_REQUIRED with a loginUrl if SAINT is not authenticated — show the loginUrl to the user and ask them to open it in a browser, then retry this call with the returned mcp_session_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
mcp_session_idYesMCP session ID issued by start_auth(SAINT). If absent or SAINT not linked, returns AUTH_REQUIRED with a loginUrl.
Behavior4/5

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

Beyond annotations (readOnlyHint, destructiveHint), the description discloses that the tool returns AUTH_REQUIRED with a loginUrl if SAINT is not authenticated, adding important behavioral context.

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

Conciseness5/5

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

Two concise sentences: first states purpose, second explains authentication flow. No unnecessary words, front-loaded with the core action.

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

Completeness5/5

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

For a simple retrieval tool with one parameter and no output schema, the description covers purpose, auth dependency, and error handling. It is complete and leaves no ambiguity.

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

Parameters4/5

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

The schema covers the parameter fully, but the description adds meaning by explaining what happens if mcp_session_id is absent or SAINT not linked (returns AUTH_REQUIRED). This goes beyond the schema's description.

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

Purpose5/5

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

The description clearly states the tool returns the authenticated student's u-SAINT timetable for all enrolled semesters. It specifies the verb 'Returns' and the resource, distinguishing it from sibling tools like get_my_grades or get_my_assignments.

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?

The description explicitly explains the prerequisite: requires mcp_session_id from start_auth(SAINT). It also provides error handling guidance (show loginUrl, retry). No explicit when-not-to-use, but the context is clear.

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

get_my_scholarshipsA
Read-only
Inspect

Returns the authenticated student's u-SAINT scholarship receipt history. Year is optional; without it all available history is returned. Requires mcp_session_id with the SAINT provider linked via start_auth.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearNoAcademic year, such as 2026.
mcp_session_idYesMCP session ID issued by start_auth(SAINT). If absent or SAINT not linked, returns AUTH_REQUIRED with a loginUrl.
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds value by noting the optional year behavior and the AUTH_REQUIRED response when mcp_session_id is missing or SAINT not linked, which aligns with annotations.

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

Conciseness5/5

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

The description is two sentences, front-loaded with the main purpose, and contains no superfluous information. Every word earns its place.

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?

Given no output schema, the description covers prerequisites, optional parameter behavior, and error conditions. It is sufficiently complete for an agent to use the tool correctly, though return format is not detailed.

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

Parameters4/5

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

Schema coverage is 100%, so the schema documents both parameters. The description adds meaning by clarifying the year parameter's optional nature and the implication of returning all history when omitted, and by explaining the mcp_session_id's role in authentication.

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

Purpose5/5

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

The description clearly states the tool returns the authenticated student's u-SAINT scholarship receipt history, using a specific verb and resource, which distinguishes it from sibling tools like get_my_grades or get_my_schedule.

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?

The description explains that the year parameter is optional and that a valid mcp_session_id with SAINT linked via start_auth is required. It provides clear context for use but does not explicitly state when not to use or mention alternatives.

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

get_notice_detailA
Read-only
Inspect

공지 URL 로 본문 전체 텍스트를 반환합니다. get_recent_notices 나 search_notices 결과의 link 값을 그대로 전달하세요.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes공지 URL. get_recent_notices/search_notices 결과의 link 값.
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description confirms the read-only nature by stating it returns text, but adds no additional behavioral context beyond what the annotations provide.

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

Conciseness5/5

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

The description is a single, effective sentence in Korean. It front-loads the purpose and includes essential usage instruction without any filler. Every word earns its place.

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

Completeness5/5

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

For a simple tool with one parameter and no output schema, the description is complete. It explains what the tool returns (full text), how to obtain the input (from sibling tools), and implicitly conveys that the output is plain text. No additional information is necessary.

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?

The input schema covers 100% of parameters, with a clear description for the 'url' field. The description repeats the schema's guidance ('get_recent_notices/search_notices 결과의 link 값') without adding new meaning or format details. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool returns the full text of a notice given its URL. It specifies the resource ('본문 전체 텍스트') and action ('반환합니다'), and implicitly distinguishes from sibling tools that list or search notices by requiring a specific URL as input.

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

Usage Guidelines5/5

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

The description explicitly instructs the agent to pass the 'link' value from get_recent_notices or search_notices results as the input. This provides clear context on when and how to use the tool, effectively guiding the agent away from incorrect usage.

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

get_recent_noticesA
Read-only
Inspect

숭실대 학교 공지사항 최신 목록을 조회합니다. category 를 지정하면 해당 카테고리만 필터링합니다. 카테고리 목록은 list_notice_categories 도구로 확인할 수 있습니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo페이지 번호 (1부터). 기본값 1.
categoryNo카테고리 (선택): 학사/장학/국제교류/외국인유학생/채용/비교과·행사/교원채용/교직/봉사/기타. 비워두면 전체.
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description's safety profile is clear. The description adds filtering behavior but omits details like pagination limits, default number of results, or sorting order.

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

Conciseness5/5

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

Two sentences, each serving a distinct purpose: stating the primary function and referencing the category list tool. Front-loaded and concise.

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

Completeness2/5

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

No output schema exists, yet the description does not hint at the return format (e.g., list of IDs or summaries). Pagination is not addressed beyond the page parameter, and no integration with get_notice_detail is suggested.

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%, and the description restates the category parameter's filtering role without adding new semantics beyond the schema. The page parameter is not elaborated.

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

Purpose5/5

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

The description clearly states the tool retrieves the latest list of Soongsil University notices and can filter by category. It distinguishes itself from sibling tools like get_active_notices or search_notices by specifying '최신' (latest).

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?

The description explicitly mentions using list_notice_categories to see available categories, guiding proper usage. However, it does not compare with other notice-related tools or specify when not to use this tool.

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

get_today_mealA
Read-only
Inspect

오늘 숭실대학교 학생식당의 메뉴를 조회합니다. restaurant 인자를 비워두면 학생식당, 숭실도담식당, FACULTY LOUNGE 등 캠퍼스 내 모든 식당의 코너별 메뉴와 휴무 정보를 함께 반환합니다. restaurant 인자를 지정하면 해당 식당만 조회합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
restaurantNo선택사항. 특정 식당만 조회하고 싶을 때 식당 이름을 한국어로 전달합니다. 가능한 값: 학생식당, 숭실도담식당, 스낵코너, 푸드코트, THE KITCHEN, FACULTY LOUNGE. 비워두면 전체 식당의 메뉴를 함께 반환합니다.
Behavior5/5

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

Annotations declare readOnlyHint=true, and the description adds context: it describes that empty argument returns all corners' menus and closure info, and specifying a restaurant restricts results. This goes beyond annotations.

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

Conciseness5/5

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

Two sentences, front-loaded with main purpose, no extraneous words. Efficient and clear.

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

Completeness5/5

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

Given the tool's simplicity (one optional parameter, no output schema), the description fully covers behavior for both parameter states and provides all needed context.

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

Parameters4/5

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

Schema coverage is 100% for the single parameter, and the description adds meaning by explaining the effect of empty vs specified values, and lists possible restaurant names. It enhances the schema description.

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

Purpose5/5

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

The description clearly states the tool retrieves today's meal from Soongsil University student cafeteria, explains the behavior for empty vs specified restaurant argument, and distinguishes it from sibling tools like get_meal_by_date by specifying 'today'.

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?

The description explains when to leave restaurant empty (returns all campus restaurants) vs specifying a restaurant (filters). It implicitly differentiates from siblings but does not explicitly state when not to use.

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

list_notice_categoriesA
Read-only
Inspect

숭실대 공지사항 카테고리 목록을 반환합니다. get_recent_notices, search_notices 의 category 파라미터에 사용할 수 있는 값을 확인할 때 유용합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description adds only the context of returning a list and its relationship to other tools. No additional behavioral details like output format are provided.

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

Conciseness5/5

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

Two sentences with no wasted words. The purpose and usage context are front-loaded and clear.

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?

Given the zero parameters and no output schema, the description is complete enough for a simple category list tool, but it could mention the output type (e.g., names/IDs) without being necessary.

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

Parameters4/5

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

There are no parameters, and schema coverage is 100%. The description adds no parameter details, but with no parameters this is acceptable; baseline 4 is appropriate.

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

Purpose5/5

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

The description clearly states the tool returns a list of notice categories and explicitly links its utility to the category parameter of sibling tools get_recent_notices and search_notices, distinguishing it from other tools.

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?

The description provides clear context for when to use the tool (to check category values for other tools) but does not explicitly state when not to use it or list alternatives.

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

logout_allA
Destructive
Inspect

Removes the entire MCP auth session and all linked providers. Requires mcp_session_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
mcp_session_idYesMCP session ID to fully invalidate.
Behavior3/5

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

Annotations already declare destructiveHint=true, so the description's 'Removes' and 'fully invalidate' align with it. The description adds the scope ('all linked providers') but does not disclose side effects or irreversibility beyond what annotations imply. Neither contradicts the other.

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

Conciseness5/5

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

Two sentences with no waste. The first sentence states the action clearly, and the second adds the requirement. Information is front-loaded and easy to parse.

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

Completeness3/5

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

The tool is simple with one parameter and no output schema. The description covers the action and requirement, but does not mention what the result or response looks like (e.g., success/failure). With siblings like 'logout_provider', a brief comparison would be helpful. Adequate but not thorough.

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% and the description redundantly states 'Requires mcp_session_id' which is already in the schema with a description. No additional semantics are provided beyond the schema.

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

Purpose5/5

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

The description uses a specific verb ('Removes') and resource ('entire MCP auth session and all linked providers'), clearly distinguishing it from the sibling tool 'logout_provider' which likely logs out a single provider.

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

Usage Guidelines3/5

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

The description states the requirement for mcp_session_id but does not explicitly specify when to use this tool versus alternatives like 'logout_provider' or 'start_auth'. Usage context is implied but not clarified.

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

logout_providerA
Destructive
Inspect

Unlinks a specific provider (SAINT, LMS, or LIBRARY) from the MCP session. Requires both mcp_session_id and provider.

ParametersJSON Schema
NameRequiredDescriptionDefault
providerYesProvider to unlink: SAINT, LMS, or LIBRARY.
mcp_session_idYesMCP session ID issued by start_auth.
Behavior3/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false. The description adds that it 'unlinks' and requires parameters, but no further behavioral details such as side effects, reversibility, or prerequisites.

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

Conciseness5/5

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

Single sentence that efficiently conveys purpose and requirements with no redundancy.

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 simple tool with two parameters and high schema coverage, the description covers purpose and requirements. Lacks mention of session validity or error states but is adequate given the tool's simplicity.

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% with clear parameter descriptions. The description only restates the requirement for both parameters, adding no extra meaning beyond the schema.

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

Purpose5/5

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

Clearly states the action 'unlinks' a specific provider from the MCP session, naming the allowed providers and required parameters. It distinguishes from the sibling 'logout_all' which handles all providers.

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

Usage Guidelines3/5

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

The description implies usage when you need to unlink a single provider given a session ID, but does not provide explicit when-not-to-use or alternatives like 'logout_all'. No exclusions or context for appropriate use.

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

search_campus_facilitiesA
Read-only
Inspect

숭실대학교 캠퍼스 내 식당, 카페, 편의점, 서점 등의 시설 정보를 검색합니다. 시설 이름, 위치, 운영시간, 전화번호, 별칭 등을 부분 일치로 검색하며, query 가 비어 있으면 전체 시설 목록을 반환합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNo검색어 (선택). 시설명, 별칭, 위치 등에 부분 일치. 비워두면 전체 목록. 최대 64자.
Behavior5/5

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

Description discloses partial matching behavior on multiple fields (name, alias, location) and empty-query behavior. Annotations already declare readOnlyHint=true and destructiveHint=false, so description adds operational details without contradiction.

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

Conciseness5/5

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

Description is concise: one sentence with two clear clauses, front-loaded with purpose and followed by behavior. No wasted words.

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

Completeness5/5

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

Given low complexity (1 optional param, no output schema), the description fully covers behavior, parameter semantics, and usage context. No gaps.

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

Parameters5/5

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

Schema coverage is 100% with description for 'query'. Description adds value by explaining partial matching across fields and full list on empty query, beyond schema's basic type and length.

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

Purpose5/5

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

Description clearly states the tool searches for campus facilities (식당, 카페, 편의점, 서점) with specific verb '검색합니다'. It distinguishes from siblings by focusing on physical facilities, unlike other tools for notices, grades, etc.

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?

Description implies usage for facility search and mentions empty query returns full list, but does not explicitly state when not to use or compare to alternatives. However, the tool's focus is clear from context.

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

search_library_bookA
Read-only
Inspect

숭실대학교 중앙도서관 소장 도서를 키워드로 검색합니다. 응답에는 도서별 제목·저자·청구기호·소장 위치·대출 가능 여부가 포함됩니다. 검색어는 제목·저자·출판 정보에 부분 일치합니다. 이 도구는 읽기 전용이며, 도서 대출/예약 액션은 별도 도구로 분리되어 있습니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo페이지 (0-based, 기본 0)
sizeNo페이지당 결과 수 (1~20, 기본 10)
queryYes검색어 (제목/저자/출판 키워드, 1~64자)
Behavior4/5

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

Annotations already declare readOnlyHint=true. The description adds that the response includes title, author, call number, location, and availability, and that search matches partially on title/author/publisher. This provides useful behavioral context beyond the annotations.

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

Conciseness5/5

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

The description is concise—two sentences—and front-loaded with the main action. Every sentence adds value without redundancy.

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?

Given the lack of output schema, the description lists response fields (title, author, call number, location, availability) and mentions partial matching. It covers the main functionality and constraints well for a search 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%, and the description does add any additional meaning beyond what the schema already provides for the parameters.

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

Purpose5/5

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

The description clearly states the tool searches for books in Soongsil University Central Library by keyword, listing the response fields. This is specific and distinct from sibling tools like search_campus_facilities and search_notices.

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?

The description explicitly states the tool is read-only and that loan/reservation actions are handled by other tools, guiding when to use it and when not to. However, it does not name the alternative tools explicitly.

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

search_noticesA
Read-only
Inspect

숭실대 공지사항을 키워드로 검색합니다. 제목·본문에 키워드가 포함된 공지를 반환합니다. category 를 함께 지정하면 해당 카테고리 내에서만 검색합니다.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo페이지 번호 (기본 1).
keywordYes검색 키워드. 최대 64자.
categoryNo카테고리 필터 (선택).
Behavior3/5

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

Annotations already indicate readOnlyHint=true and destructiveHint=false, so the agent knows this is a safe read operation. The description adds no additional behavioral traits (e.g., auth requirements, rate limits, pagination details) beyond what annotations provide.

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

Conciseness5/5

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

The description is three concise sentences in Korean, front-loading the main action ('searches notices by keyword') without any extraneous words. Every sentence adds value.

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?

The tool has no output schema, but the description conveys the core functionality. Given the simplicity (3 parameters, no nested objects) and sibling context (get_notice_detail for details), it is sufficiently complete, though it could hint at result ordering or pagination limits.

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

Parameters4/5

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

Schema provides descriptions for all three parameters (100% coverage). The description adds meaning by clarifying that keyword searches title and body, and category restricts to that category, enriching the semantic understanding beyond the schema alone.

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

Purpose5/5

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

The description clearly states it searches Soongsil University notices by keyword, specifying that it returns notices containing the keyword in title or body. This distinguishes it from siblings like get_recent_notices (no keyword filtering) and get_notice_detail (specific notice retrieval).

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?

The description explains that specifying a category restricts search to that category, providing context for parameter use. While it doesn't explicitly list alternatives or when not to use, the sibling tool names imply other use cases (e.g., get_recent_notices for browsing).

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

start_authAInspect

Generates a browser login URL for the specified provider (SAINT, LMS, or LIBRARY). Use this tool when a private tool returns AUTH_REQUIRED. Steps: 1) Call this tool to get loginUrl and mcpSessionId. 2) Show the user: 'Please open this link to log in: [loginUrl]'. 3) Wait for the user to confirm login is complete. 4) Retry the original private tool call with mcp_session_id=[mcpSessionId]. Creates a new MCP session if mcp_session_id is not provided.

ParametersJSON Schema
NameRequiredDescriptionDefault
providerYesProvider to authenticate. SAINT: 시간표·성적·채플·졸업·장학금. LMS: 과제·퀴즈. LIBRARY: 도서관 대출 현황.
mcp_session_idNoExisting MCP session ID to reuse. If absent, a new session is created.
Behavior5/5

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

Discloses that a new MCP session is created if mcp_session_id is not provided, and that the tool returns loginUrl and mcpSessionId. Annotations provide no behavioral cues, so the description fully handles transparency. No contradiction with annotations.

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?

Description is about 80 words and front-loads the main purpose. Steps could be formatted as a list for clarity, but the current paragraph structure is clear and readable without unnecessary wording.

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

Completeness5/5

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

For a tool with no output schema, the description explains the return values (loginUrl, mcpSessionId) and the full user-interaction flow. It also sets clear context among 22 sibling tools by specifying the use case (AUTH_REQUIRED). No gaps.

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

Parameters5/5

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

Schema coverage is 100% and the description adds meaningful Korean context for the provider parameter (e.g., SAINT for timetable/grades/chapel/graduation/scholarships) and explains the optional reuse of mcp_session_id. This goes beyond the schema descriptions.

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

Purpose5/5

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

Description clearly states it generates a browser login URL for specified providers (SAINT, LMS, LIBRARY) and is used when a private tool returns AUTH_REQUIRED. This distinguishes it from sibling tools like get_auth_status, logout_all, and logout_provider.

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

Usage Guidelines5/5

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

Explicitly says 'Use this tool when a private tool returns AUTH_REQUIRED' and provides step-by-step instructions including showing the user the login URL, waiting for confirmation, and retrying the original tool with the mcp_session_id. This is comprehensive guidance.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources