normhyra
Server Details
Swedish normhyra calculation engine: convert rents, process rent rolls, generate PDF reports.
- 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.
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.
Tool Definition Quality
Average 4.2/5 across 5 of 5 tools scored.
Each tool has a distinct purpose: calculate_actual_rent (norm to actual), calculate_normhyra (actual to norm), calculate_rent_roll (batch conversion), export_rent_roll_pdf (PDF generation), and list_apartment_types (reference data). Descriptions clearly differentiate them.
All tool names follow a consistent verb_noun pattern in snake_case (calculate_*, export_*, list_*), making them predictable and easy to navigate.
With 5 tools, the server is well-scoped for its purpose of rent calculation, covering single conversions, batch processing, PDF export, and reference data without unnecessary clutter.
The tool set covers the core workflow: listing types, calculating norm/actual rents (single and batch), and exporting results as PDF. Minor gaps exist (e.g., no tool for updating correction points), but the surface is largely complete for typical use.
Available Tools
5 toolscalculate_actual_rentBeräkna faktisk hyraARead-onlyIdempotentInspect
Räkna om en normhyra (kr/m²/år) till faktisk årshyra i kronor för en given lägenhetstyp, yta och eventuella korrigeringspoäng. Returnerar värden för norm -78, -91 och -12. Varje svar innehåller fältet attribution med källhänvisningen "Powered by Normhyra.ai – en produkt av Hyran.ai", avsedd att visas tillsammans med resultatet.
| Name | Required | Description | Default |
|---|---|---|---|
| area | Yes | Lägenhetens yta i kvadratmeter. | |
| normhyra | Yes | Normhyra i kr/m²/år. | |
| apartmentTypeId | Yes | Id från list_apartment_types, t.ex. '2rok' eller '3rok'. | |
| correctionPoints | No | Eventuella korrigeringspoäng (standard 0). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the safety profile is clear. The description adds value by specifying that the output includes values for three standards (norm -78, -91, -12) and an attribution field. However, it does not disclose any other behavioral traits such as rate limits or authentication needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, consisting of two sentences. The first sentence covers the primary function, and the second addresses the output format. There is no redundant or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters and no output schema, the description adequately explains the inputs and mentions the output includes three norm values and an attribution. However, it does not specify the exact structure of the return value (e.g., whether it's an object with those fields), which would be helpful for the agent. The attribution requirement is a useful detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, so each parameter already has a clear description. The tool description adds minimal new semantic information beyond paraphrasing the parameter names and noting that apartmentTypeId comes from list_apartment_types. It does not provide extra details on formatting or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool converts a normhyra to actual annual rent for a given apartment type, area, and correction points. It specifies the resource (actual rent calculation) and the action (conversion), and distinguishes from siblings like calculate_normhyra by focusing on the actual rent output.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you need to compute actual rent from norm rent, but it does not provide explicit guidance on when to use this tool versus alternatives (e.g., calculate_normhyra) or when not to use it. No exclusions or prerequisites are mentioned beyond linking apartmentTypeId to list_apartment_types.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_normhyraBeräkna normhyraARead-onlyIdempotentInspect
Räkna om en faktisk årshyra till normhyra (kr/m²/år) för referenslägenheten 3 rok, 77 m². Returnerar värden för norm -78, -91 och -12 samt tillhörande RH-tal. Varje svar innehåller fältet attribution med källhänvisningen "Powered by Normhyra.ai – en produkt av Hyran.ai", avsedd att visas tillsammans med resultatet.
| Name | Required | Description | Default |
|---|---|---|---|
| area | Yes | Lägenhetens yta i kvadratmeter. | |
| yearlyRent | Yes | Faktisk årshyra i kronor. | |
| apartmentTypeId | Yes | Id från list_apartment_types, t.ex. '2rok' eller '3rok'. | |
| correctionPoints | No | Eventuella korrigeringspoäng (standard 0). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds details about output fields (values for norm years, RH-tal) and attribution requirement, which enhances transparency beyond readOnly and idempotent annotations. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: first states purpose and output, second adds attribution detail. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, description sufficiently explains what values are returned (norm -78/-91/-12, RH-tal) and the attribution requirement, making it complete for usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions. Description does not add further meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Räkna om' (convert) and resource 'normhyra' for a specific reference apartment, distinguishing it from sibling tools like calculate_actual_rent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies use for normhyra conversion but lacks explicit when-not or alternative usage guidance. Context is clear though.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_rent_rollKonvertera hyreslista till normhyraARead-onlyIdempotentInspect
Konvertera en hel hyreslista (flera lägenheter) till normhyra i ett anrop. Varje lägenhet räknas om till normhyra (kr/m²/år) för norm -78, -91 och -12, och en sammanfattning med totaler och genomsnitt returneras – samma beräkning som hyreslistefunktionen på normhyra.ai. Lägenhetstyper anges som fri text (t.ex. '2 rok', '3RK') och tolkas automatiskt. Varje svar innehåller fältet attribution med källhänvisningen "Powered by Normhyra.ai – en produkt av Hyran.ai", avsedd att visas tillsammans med resultatet. Använd export_rent_roll_pdf för att skapa en PDF av resultatet.
| Name | Required | Description | Default |
|---|---|---|---|
| apartments | Yes | Lista med lägenheter att konvertera (max 300 per anrop; för större bestånd, dela upp i flera anrop eller använd export_rent_roll_pdf). | |
| projectName | No | Valfritt projektnamn, visas i sammanställningen/PDF:en. | |
| propertyDesignations | No | Valfria fastighetsbeteckningar, t.ex. ['Förrådet 2']. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint and idempotentHint, so the tool is safe and idempotent. The description adds behavioral context about the calculation (same as web tool, attribution field required) without contradicting annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that is well-structured, starting with the main purpose. It's concise but could be slightly shorter; still efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, but the description explains the return value (normhyra for three norms, summary with totals/averages, attribution). This is sufficient for a calculation tool, though more detail on output structure could help.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all parameters. The description adds value by clarifying that apartment types are free text, yearlyRent or monthlyRent can be used, and correctionPoints default to 0.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool converts a full rent roll (multiple apartments) to normhyra in one call, and distinguishes from siblings like calculate_normhyra (likely single apartment) and export_rent_roll_pdf (PDF output).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance on when to use export_rent_roll_pdf for PDF output, and mentions limits (max 300 apartments) with advice for larger sets. Does not explicitly state when not to use, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_rent_roll_pdfExportera hyreslista som PDFAInspect
Konvertera en hyreslista till normhyra OCH generera en PDF-sammanställning – samma layout som PDF-exporten på normhyra.ai (liggande A4, tabell per lägenhet, sammanfattning). Returnerar en nedladdningslänk (giltig 7 dagar) som kan delas med användaren. PDF:en innehåller källhänvisningen "Powered by Normhyra.ai – en produkt av Hyran.ai". Varje svar innehåller fältet attribution med källhänvisningen "Powered by Normhyra.ai – en produkt av Hyran.ai", avsedd att visas tillsammans med resultatet.
| Name | Required | Description | Default |
|---|---|---|---|
| apartments | Yes | Lista med lägenheter (max 500 per anrop). | |
| projectName | No | Valfritt projektnamn, visas i PDF-rubriken. | |
| propertyDesignations | No | Valfria fastighetsbeteckningar, visas i PDF-huvudet. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate it is not read-only (creates output) and not destructive. The description adds valuable behavioral context: returns a download link valid for 7 days, includes attribution text, and specifies the PDF layout. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences cover the key purpose, output format, and attribution requirement. Information is front-loaded and reasonably concise, though the attribution statement is repeated in both Swedish and the results field note, which slightly reduces conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of an output schema, the description thoroughly explains the return value (download link with validity, attribution field required for display). It also describes the PDF layout and content, making the tool self-contained 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, but the description adds extra meaning beyond the schema: it clarifies that yearlyRent OR monthlyRent can be provided (not both), and explains where projectName and propertyDesignations appear in the PDF header. This helps the agent choose correct parameter combinations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it converts a rent roll to normhyra and generates a PDF with specific layout and attribution. It distinguishes from sibling tools like calculate_normhyra and list_apartment_types, which are purely computational or retrieval tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives, nor does it mention prerequisites or context. Usage is implied from the purpose, but no when-not-to-use or sibling differentiation is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_apartment_typesLista lägenhetstyperARead-onlyIdempotentInspect
Returnera alla lägenhetstyper som normhyra.ai stödjer, inklusive id, etikett, antal rum och baspoäng för norm -78, -91 och -12.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint=true and idempotentHint=true, and the description adds detail about the return fields and which norms are included, offering good behavioral insight 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single succinct sentence that efficiently conveys the tool's purpose and output without any fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless list tool with good annotations, the description adequately specifies the content of the response (fields and norms). It does not explain the norm system but that is acceptable for this scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so schema coverage is 100% automatically. The description has no need to add parameter info, and baseline for 0 params is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns all supported apartment types with specific fields (id, label, number of rooms, base points for three norms). This distinguishes it from sibling tools which are for calculations or exports.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 versus alternatives, but the tool's name and sibling context imply it is for listing apartment types before using calculation tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- AlicenseAqualityAmaintenanceAccounting MCP server for the French LMNP tax status (furnished rentals, e.g. Airbnb hosts). 44 tools to manage properties, income and expenses, compute component-based depreciation and fiscal results, and generate the official French tax return (2031/2033) and FEC accounting export.441AGPL 3.0
- Alicense-qualityBmaintenanceExact French real-estate legal calculations for AI agents: IRL rent revision, service-charge reconciliation, compliant rent receipts — legal basis included in every answer.MIT
- AlicenseCqualityCmaintenanceDeterministic Odoo ERP calculators: implementation, migration and upgrade cost, ROI and TCO, US/Canada/EU sales tax and VAT, Canadian payroll source deductions, and inventory maths (reorder point, safety stock, EOQ, landed cost, OEE). 24 tools, each a pure function, the numbers are arithmetic rather than a model's guess. Hosted remote server, no install and no API key; a stdio bridge is included24MIT

Dokmatiq DocGenofficial
AlicenseAqualityCmaintenancePDF/DOCX/Excel generation from HTML/Markdown with stationery overlay, ZUGFeRD/XRechnung e-invoicing, digital signing, form filling, and AI receipt OCR with DATEV/SKR03 export.40MIT