Skip to main content
Glama

Open funding calls

open_calls
Read-only

Open (default), upcoming, or all retained funding calls from the Estonian Business and Innovation Agency (EIS), Agricultural Registers and Information Board (PRIA), and Environmental Investment Centre (KIK). Pass a company profile or registry_code for matching calls, with reasons, rules, co-financing share, budget and size bands. Explicit profile fields override the company profile. This tool does not draft or submit applications. Use procurement_notices for public tenders. Do not look up natural persons.

Input Schema

NameRequiredDescriptionDefault
emtakNoEstonian Classification of Economic Activities (EMTAK) code. Matched on the division when the call has rules.
countyNoCounty name or alias. Valid: Ida-Viru maakond, Lääne-Viru maakond, Harju maakond, Hiiu maakond, Jõgeva maakond, Järva maakond, Lääne maakond, Põlva maakond, Pärnu maakond, Rapla maakond, Saare maakond, Tartu maakond, Valga maakond, Viljandi maakond, Võru maakond, Maakond puudu.
statusNoCall status: open (default), upcoming, or all retained calls.open
providerNoFunder, for example the Estonian Business and Innovation Agency (EIS)
size_bandNoCompany size band: e:0-9, e:10-49, e:50-249, e:250+, e:unknown.
registry_codeNo8-digit registry code; resolves Estonian Classification of Economic Activities (EMTAK), county and size band from the snapshot. Explicit emtak/county/size_band override it per dimension.
deadline_within_daysNoKeep calls whose deadline is within this many days

Output Schema

NameRequiredDescriptionDefault
as_ofYes
callsNo
profileNo
sourcesYes
row_countNo
truncatedNo
disclaimerYes
calls_totalNo
snapshot_idYes
source_detailsYesFull attribution and acquisition evidence: source_metadata(key).
omitted_sectionsNoSections removed to fit the response budget, including default sections. Request one named section to retrieve it. Present only when truncated.
unknown_scope_countNoCalls dropped by an EMTAK filter because the source named no sector. Zero when the caller did not filter by EMTAK.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / status
      Added value: +{
      +  "default": "open",
      +  "description": "Call status: open (default), upcoming, or all retained calls.",
      +  "enum": [
      +    "open",
      +    "upcoming",
      +    "all"
      +  ],
      +  "title": "Status",
      +  "type": "string"
      +}
    • addedOutput schema / properties / calls / items / properties / opens_at
      Added value: +{
      +  "description": "Opening date when known, including for upcoming calls.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / calls / items / properties / status / description
      Added value: +"Effective call status for the selected open, upcoming, or all retained calls."
  2. Changed5 schema fields changed
    • addedOutput schema / properties / omitted_sections
      Added value: +{
      +  "description": "Sections removed to fit the response budget, including default sections. Request one named section to retrieve it. Present only when truncated.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / source_details
      Added value: +{
      +  "description": "Full attribution and acquisition evidence: source_metadata(key).",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / sources / items / properties / as_of
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / sources / items / properties / key
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "snapshot_id",
      -  "as_of",
      -  "sources",
      -  "disclaimer"
      -]New value: +[
      +  "snapshot_id",
      +  "as_of",
      +  "sources",
      +  "source_details",
      +  "disclaimer"
      +]
  3. Changed8 schema fields changed
    • addedOutput schema / properties / calls / items / properties / call_match / additionalProperties
      Added value: +true
    • addedOutput schema / properties / calls / items / properties / call_match / description
      Added value: +"Distinct counties, excluded areas, EMTAK divisions and size bands. The stored call_match rows stay the full county × division × band product; this payload does not repeat it."
    • removedOutput schema / properties / calls / items / properties / call_match / items
      Removed value: -{
      -  "additionalProperties": true,
      -  "properties": {
      -    "county": {
      -      "type": [
      -        "string",
      -        "null"
      -      ]
      -    },
      -    "emtak2": {
      -      "type": [
      -        "string",
      -        "null"
      -      ]
      -    },
      -    "size_band": {
      -      "type": [
      -        "string",
      -        "null"
      -      ]
      -    }
      -  },
      -  "type": [
      -    "object",
      -    "null"
      -  ]
      -}
    • addedOutput schema / properties / calls / items / properties / call_match / properties
      Added value: +{
      +  "counties": {
      +    "items": {
      +      "type": "string"
      +    },
      +    "type": [
      +      "array",
      +      "null"
      +    ]
      +  },
      +  "emtak_divisions": {
      +    "items": {
      +      "type": "string"
      +    },
      +    "type": [
      +      "array",
      +      "null"
      +    ]
      +  },
      +  "excluded_areas": {
      +    "items": {
      +      "type": "string"
      +    },
      +    "type": [
      +      "array",
      +      "null"
      +    ]
      +  },
      +  "size_bands": {
      +    "items": {
      +      "type": "string"
      +    },
      +    "type": [
      +      "array",
      +      "null"
      +    ]
      +  }
      +}
    • changedOutput schema / properties / calls / items / properties / call_match / type
      Previous value: -[
      -  "array",
      -  "null"
      -]New value: +[
      +  "object",
      +  "null"
      +]
    • addedOutput schema / properties / calls / items / properties / match / properties / reasons / items / properties / sector_scope
      Added value: +{
      +  "description": "all, listed or unknown. Same scope as the call.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / calls / items / properties / sector_scope
      Added value: +{
      +  "description": "all when the source opened every sector, listed when it names divisions, unknown when it names none.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / unknown_scope_count
      Added value: +{
      +  "description": "Calls dropped by an EMTAK filter because the source named no sector. Zero when the caller did not filter by EMTAK.",
      +  "type": [
      +    "number",
      +    "null"
      +  ]
      +}
  4. Changed3 schema fields changed
    • changedInput schema / properties / emtak / description
      Previous value: -"EMTAK code. Matched on the division when the call has rules."New value: +"Estonian Classification of Economic Activities (EMTAK) code. Matched on the division when the call has rules."
    • changedInput schema / properties / provider / description
      Previous value: -"Funder, for example EIS"New value: +"Funder, for example the Estonian Business and Innovation Agency (EIS)"
    • changedInput schema / properties / registry_code / description
      Previous value: -"8-digit registry code; resolves EMTAK, county and size band from the snapshot. Explicit emtak/county/size_band override it per dimension."New value: +"8-digit registry code; resolves Estonian Classification of Economic Activities (EMTAK), county and size band from the snapshot. Explicit emtak/county/size_band override it per dimension."
  5. Changed2 schema fields changed
    • addedOutput schema / properties / calls / items / properties / deadline_kind
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / calls / items / properties / url
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
  6. Changed10 schema fields changed
    • addedInput schema / properties / registry_code
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "8-digit registry code; resolves EMTAK, county and size band from the snapshot. Explicit emtak/county/size_band override it per dimension.",
      +  "title": "Registry Code"
      +}
    • addedInput schema / properties / size_band
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Company size band: e:0-9, e:10-49, e:50-249, e:250+, e:unknown.",
      +  "title": "Size Band"
      +}
    • addedOutput schema / properties / calls / items / properties / call_match
      Added value: +{
      +  "items": {
      +    "additionalProperties": true,
      +    "properties": {
      +      "county": {
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "emtak2": {
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "size_band": {
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      }
      +    },
      +    "type": [
      +      "object",
      +      "null"
      +    ]
      +  },
      +  "type": [
      +    "array",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / calls / items / properties / cofinance_pct
      Added value: +{
      +  "type": [
      +    "number",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / calls / items / properties / deadline_missing
      Added value: +{
      +  "type": [
      +    "boolean",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / calls / items / properties / match
      Added value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "reasons": {
      +      "items": {
      +        "additionalProperties": true,
      +        "properties": {
      +          "dimension": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "kind": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "value": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          }
      +        },
      +        "type": [
      +          "object",
      +          "null"
      +        ]
      +      },
      +      "type": [
      +        "array",
      +        "null"
      +      ]
      +    }
      +  },
      +  "type": [
      +    "object",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / calls / items / properties / size_bands
      Added value: +{
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": [
      +    "array",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / calls / items / properties / total_budget
      Added value: +{
      +  "type": [
      +    "number",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / calls_total
      Added value: +{
      +  "type": [
      +    "number",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / profile
      Added value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "county": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "emtak": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "emtak2": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "registry_code": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "size_band": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    }
      +  },
      +  "type": [
      +    "object",
      +    "null"
      +  ]
      +}
  7. Changed3 schema fields changed
    • addedOutput schema / properties / sources / items / properties / licence_checked_at
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / sources / items / properties / licence_evidence_url
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / sources / items / properties / rights_status
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
  8. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "as_of": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "calls": {
      +      "items": {
      +        "additionalProperties": true,
      +        "properties": {
      +          "category": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "deadline": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "id": {
      +            "type": [
      +              "number",
      +              "null"
      +            ]
      +          },
      +          "max_grant": {
      +            "type": [
      +              "number",
      +              "null"
      +            ]
      +          },
      +          "measure": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "provider": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "source_url": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "status": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "summary": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "title": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          }
      +        },
      +        "type": [
      +          "object",
      +          "null"
      +        ]
      +      },
      +      "type": [
      +        "array",
      +        "null"
      +      ]
      +    },
      +    "disclaimer": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "row_count": {
      +      "type": [
      +        "number",
      +        "null"
      +      ]
      +    },
      +    "snapshot_id": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "sources": {
      +      "items": {
      +        "additionalProperties": true,
      +        "properties": {
      +          "attribution": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "licence": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "licence_url": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "name": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "url": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          }
      +        },
      +        "type": [
      +          "object",
      +          "null"
      +        ]
      +      },
      +      "type": [
      +        "array",
      +        "null"
      +      ]
      +    },
      +    "truncated": {
      +      "type": [
      +        "boolean",
      +        "null"
      +      ]
      +    }
      +  },
      +  "required": [
      +    "snapshot_id",
      +    "as_of",
      +    "sources",
      +    "disclaimer"
      +  ],
      +  "title": "open_callsOutput",
      +  "type": "object"
      +}
  9. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already establish readOnly, non-destructive, closed-world behavior, and the description adds matching semantics (reasons, rules, co-financing share, budget and size bands) plus an override precedence rule that a caller would not otherwise know. It stops short of describing result ordering, limits, or incomplete-snapshot caveats for a listing tool, so it is strong but not exhaustive.

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?

Scope and funders are front-loaded, followed by matching behavior, then exclusions in descending priority. Dense but each sentence carries a distinct constraint; the status enumeration is mildly redundant with the schema and the provider parameter.

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?

With an output schema, full parameter documentation, and safety annotations already present, the description covers what is missing: coverage of the three agencies, matching behavior, precedence, and negative scope. The undefined 'company profile' phrase and absence of any note on result volume are the only loose ends.

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 baseline is 3; the description's override rule duplicates what registry_code's schema text already says per dimension. The only added signal is matching-oriented output content, and it introduces a 'company profile' input that has no corresponding parameter in the schema, which risks confusing a caller.

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 definition pairs a specific verb (retrieve open/upcoming/all retained) with a specific resource (funding calls) and names the three funding agencies it covers. It also explicitly distinguishes itself from procurement_notices and from application tools, so an agent can identify it without opening any schema.

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?

It states the default status, how to get matching calls (profile or registry_code), and gives explicit exclusions: it does not draft or submit applications, tenders belong to procurement_notices, and natural persons should not be looked up. Both when-to-use and when-not-to-use are covered with named alternatives.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources