Skip to main content
Glama
asterixix

Polish Academic MCP

by asterixix

polon_search

Search Polish academic registry data including institutions, staff, projects, publications, and courses from the POL-on database. Retrieve structured JSON results with pagination support for research and academic queries.

Instructions

Query Polish POL-on registry data exposed by RAD-on Open Data API (same data as polon.nauka.gov.pl / radon.nauka.gov.pl/dane). No API key. Returns raw JSON: results[], pagination.maxCount, pagination.token (pass token as page_token for next page). Resources: institutions (higher-ed & science units), branches, employees (academic staff; supports first_name, last_name, discipline_name), projects (project_title_pl/en, project_number, keywords), publications PBN (publication_title, last_name as author surname), courses (course_name). Optional city/voivodeship apply to institutions and branches. Use accurate Polish strings; API matching is server-side.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
resourceYesPOL-on dataset to query
result_numbersNoPage size (resultNumbers); max 100 per request
page_tokenNoPagination token from prior response pagination.token
cityNoFilter: city — use for institutions or branches (UTF-8, e.g. Kraków)
voivodeshipNoFilter: Polish voivodeship name — institutions or branches
institution_nameNoFilter: institution name fragment — institutions only
first_nameNoFilter: employee first name — employees only
last_nameNoFilter: surname — employees (firstName+lastName) or publications (author lastName)
discipline_nameNoFilter: academic discipline name — employees only (e.g. astronomia)
project_title_plNoFilter: Polish project title — projects only
project_title_enNoFilter: English project title — projects only
project_numberNoFilter: grant/project number — projects only
keywordsNoFilter: project keywords — projects only
publication_titleNoFilter: publication title fragment — publications only
course_nameNoFilter: field of study name — courses only
Behavior4/5

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

With no annotations provided, the description carries full burden and does an excellent job disclosing behavioral traits. It explains the return format ('Returns raw JSON: results[], pagination.maxCount, pagination.token'), pagination mechanics ('pass token as page_token for next page'), API characteristics ('No API key'), and important constraints ('Use accurate Polish strings; API matching is server-side'). The only minor gap is not explicitly stating this is a read-only operation.

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 perfectly structured and concise. Every sentence earns its place: first establishes purpose and data source, then explains return format and pagination, lists available resources, and ends with important usage notes. No wasted words, front-loaded with essential information.

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 complex tool with 15 parameters and no output schema, the description does remarkably well. It explains the return format, pagination, resource options, and important constraints. The main gap is the lack of output schema, but the description compensates by describing the JSON structure. Given the complexity, it could benefit from more explicit error handling or rate limit information.

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?

With 100% schema description coverage, the baseline is 3. The description adds some value by explaining parameter relationships: 'Optional city/voivodeship apply to institutions and branches' and clarifying that 'last_name' serves different purposes for employees vs publications. However, it doesn't significantly enhance understanding beyond what the comprehensive schema already provides.

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's purpose: 'Query Polish POL-on registry data exposed by RAD-on Open Data API' with specific resources listed (institutions, branches, employees, projects, publications, courses). It distinguishes itself from siblings by specifying the exact data source (POL-on/RAD-on) and API characteristics, unlike generic search tools in the sibling list.

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 this tool: for querying specific Polish academic/scientific registry data. It mentions 'No API key' and 'Use accurate Polish strings; API matching is server-side' as important usage considerations. However, it doesn't explicitly state when NOT to use it or name specific alternatives among the many sibling tools.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/asterixix/polish-academic-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server