tendfeed
Server Details
Bid/no-bid verdicts for open EU tenders, from 592,000 real TED contract awards.
- 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 3 of 3 tools scored.
Each tool has a clearly distinct purpose: ranking lanes, retrieving a specific verdict, and searching tenders. No overlap.
All tool names follow a consistent verb_noun snake_case pattern (find_winnable_lanes, get_verdict, search_tenders).
Three tools is a reasonable number for a focused service covering ranking, retrieval, and search. Not too few or too many.
The set covers the core actions for the domain: finding competitive lanes, getting verdict details, and searching tenders. Minor gaps like listing all tenders without verdicts, but well-scoped for its purpose.
Available Tools
3 toolsfind_winnable_lanesARead-onlyInspect
Rank CPV sector "lanes" by competition density from the full corpus of 592,000 real EU awards: median bidders, single-bidder share, bid-rate, median value, beachhead score. Answers "where is competition thinnest right now". Returns the top-ranked lanes only (see "limit"); the total count is in coverage.lanes_ranked. Data/research tool over TED (Tenders Electronic Daily, CC BY 4.0). Not legal advice, no guarantee of award.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many top-ranked lanes to return (sorted by beachhead_score) | |
| min_n | No | Drop lanes thinner than this (honest: small n = noise) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and destructiveHint=false, establishing safety. The description adds context about data source (real EU awards from TED), return format (top-ranked lanes, total count in coverage.lanes_ranked), and disclaimers. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured, with two main sentences providing all necessary information plus disclaimers. No unnecessary words or filler.
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?
Despite lacking an output schema, the description explains the return format and total count. The tool is read-only and well-scoped, so the description adequately covers what the agent needs to know for correct invocation.
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 both parameters described. The description adds minimal extra meaning beyond the schema (e.g., mentioning coverage.lanes_ranked), but not enough to significantly enhance parameter understanding. Baseline score of 3 is appropriate.
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 ranks CPV sector lanes by competition density using specific metrics (median bidders, single-bidder share, etc.) and answers 'where is competition thinnest right now'. This distinguishes it from sibling tools (get_verdict, search_tenders) which serve different purposes.
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 provides clear context (data research tool over TED, answers a specific question) but does not explicitly state when not to use or contrast with alternatives. However, the information is sufficient for an agent to infer appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_verdictARead-onlyInspect
Pull one versioned verdict object by tender id (decision, score, per-channel evidence, price status, reason). Requires an API key (Authorization: Bearer cfm_live_…) with an active TendFeed subscription; without one you get a machine-readable key-required or subscription-required answer. Data/research tool over TED (Tenders Electronic Daily, CC BY 4.0). Not legal advice, no guarantee of award.
| Name | Required | Description | Default |
|---|---|---|---|
| tender_id | Yes | Tender publication id |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and destructiveHint. The description adds valuable context: versioned nature, auth requirements, data source (TED, CC BY 4.0), and a disclaimer. 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?
The description is concise, front-loaded with the main action, and includes necessary caveats. Slightly verbose with the legal disclaimer, but overall 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?
For a simple read-only retrieval tool with one parameter and no output schema, the description covers return fields, auth, data source, and limitations. Lacks details on error responses beyond auth, but adequate.
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% and the description only restates the parameter by name. No additional semantics or format details are provided beyond the schema description.
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 verb 'Pull' and the resource 'versioned verdict object by tender id', listing the specific data fields returned. This distinguishes it from siblings that search or find lanes.
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 clear context: requires API key with subscription and explains error responses. However, it does not explicitly compare to siblings or state when to prefer this tool over search_tenders or find_winnable_lanes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_tendersARead-onlyInspect
Open EU tenders with a bid/no-bid verdict (Worth-It score, reason, competition density, price corridor where robust, deadline, SME-fit). Filter by sector (CPV division), country (NUTS), SME-only, min score. Guests (no key) get the expired-tender board plus a live_matched count; an API key (Authorization: Bearer cfm_live_…) with an active TendFeed subscription unlocks the live, still-biddable board. Data/research tool over TED (Tenders Electronic Daily, CC BY 4.0). Not legal advice, no guarantee of award.
| Name | Required | Description | Default |
|---|---|---|---|
| cpv | No | CPV division prefix, e.g. 45 (construction), 72 (IT), 33 (medical) | |
| nuts | No | Country prefix, e.g. DE, FR, PL | |
| limit | No | ||
| sme_only | No | ||
| min_score | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds significant behavioral context: access tiers (guests see expired, API key unlocks live), data source (TED, CC BY 4.0), and disclaimers (not legal advice). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is informative and reasonably concise, with front-loaded purpose. It could be slightly trimmed (e.g., access details could be separate), but overall no wasted sentences. Good structure.
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, the description explains return fields (score, reason, etc.). It covers filters, access differences, data source, and legal disclaimer. All necessary context for an agent to use the tool correctly is present.
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 40% (2 of 5 parameters described in schema). The description mentions four filters (cpv, nuts, sme_only, min_score) but omits 'limit', and gives no default values or range details. It adds partial meaning but fails to fully compensate for the low schema coverage.
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 searches open EU tenders with verdict details, lists output fields (Worth-It score, etc.), and specifies filters. It distinguishes from siblings by focusing on search with verdicts, while 'get_verdict' likely retrieves a single verdict and 'find_winnable_lanes' finds lanes.
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 for searching and filtering tenders with verdicts. It explains access levels (guest vs. API key) but does not explicitly contrast with sibling tools or state when not to use. The context is clear enough for an agent to infer appropriate use.
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!