Skip to main content
Glama

noark5_upload_file

Upload a local file to a Noark 5 entity that exposes a fil relation, and retrieve the created or updated archive objects in the response.

Instructions

Upload a file to an entity that has a fil relation key.

Any entity whose _links contains the relation key https://rel.arkivverket.no/noark5/v5/api/arkivstruktur/fil/ supports upload. (Use noark5_entity_links or noark5_list_children to discover this.)

Resolves the href of the fil relation from the entity's _links, then POSTs raw binary content to that URL. The server returns JSON containing all created and updated instances — typically a dokumentobjekt with file metadata (filnavn, mimeType, checksum, etc), plus any other entities it created during the upload (e.g., an embedded dokumentbeskrivelse when uploading from a registrering).

Args: entity_url: The self-href URL of any entity with a fil relation key. file_path: Path to a local file to upload. mime_type: MIME type of the uploaded file (default: application/octet-stream).

Returns details of all created/updated entities from the server response.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
file_pathYes
mime_typeNoapplication/octet-stream
entity_urlYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

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

With no annotations provided, the description carries the full burden of disclosing behavior. It explains that the tool resolves the href from _links, POSTs raw binary content, and returns JSON of created/updated instances with typical metadata fields. This is substantive and transparent about mechanism and side effects, though it does not mention authentication requirements or potential errors.

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?

The description is well-structured and front-loaded: core statement, prerequisite condition, discovery hint, mechanism, args, and return summary. It is slightly redundant—the return behavior is stated twice—but every section earns its place and the formatting aids parsing.

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 tool's complexity, the description covers the necessary prerequisites, how to determine if an entity supports upload, the HTTP mechanism, and the expected response. An output schema exists, so return values are already structured. A small gap is lack of mention of authentication or failure cases, but the description is otherwise sufficient.

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 description coverage is 0%, so the description must compensate, and it does. The Args section adds meaning to all three parameters: entity_url is a self-href URL with a fil relation, file_path is a local file path, and mime_type has a stated default. This goes well beyond the bare schema titles.

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 opens with a specific verb and resource: 'Upload a file to an entity that has a fil relation key.' It clearly differentiates this from sibling tools like create_dokumentbeskrivelse or download_dokumentobjekt by tying upload capability to the presence of a specific relation key in _links.

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 gives concrete guidance on when this tool applies: any entity whose _links contains the specified fil relation key supports upload, and it names discovery tools (noark5_entity_links or noark5_list_children) to verify eligibility. It does not explicitly state when not to use it or compare against alternatives like create_dokumentbeskrivelse, so it misses the highest bar.

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/petterreinholdtsen/noark5-tg-mcp'

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