Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog
Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

Follow AllMCPs on X (opens in a new tab)AllMCPs on GitHub (opens in a new tab)
Launched onTiny Startupstinystartups.com
Explore
  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Random discovery New
  • Submit a server
  • Pricing & Boost Boost
Learn
  • Guides hub
  • What is MCP?
  • Install guide
  • Build an MCP server
  • Deploy an MCP server
  • Security guide
  • Troubleshooting
  • MCP for SEO & AEO
  • Protocol versioning
  • Blog & updates
Tools
  • All developer tools
  • Config generator
  • Config validator
  • Config auditor
  • MCP playground
  • Token calculator
  • OpenAPI β†’ MCP
  • Badge generator
For agents
  • REST API docs
  • Trust & traffic Live
  • Remote MCP server SSE β†— (opens in a new tab)
  • llms.txt β†— (opens in a new tab)
  • Catalog JSON β†— (opens in a new tab)
Company
  • About
  • Advertise Sponsor
  • Contact
  • X (@AllMCPs) β†— (opens in a new tab)
  • GitHub β†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZoneAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZone
Β© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. πŸ’» Developer Tools
  3. Ihalent
I
Health: Not checked yetWe have not completed a health check for this listing yet.No health check has run yet.

Ihalent

User RatingsBe the first to rate and review this MCP server! Enrichment pendingWe haven’t run our AI enrichment pass on this listing yet, so the overview, use cases, and FAQ below may be sparse or missing. We work through the catalog over time β€” check back soon.
View Repository

Turkish public-tender (EKAP) award intelligence: firm histories, discounts, competition, red flags

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
Manual Client & Custom JSON ConfigExpand JSON β–Ύ

Client Config & Setup

Choose your client or environment
Target File:~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "ihalent": {
      "command": "npx",
      "args": [
        "-y",
        "ihalent"
      ]
    }
  }
}

πŸ’‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.

Install Directory Badge Claim listing AlternativesπŸ’» More in Developer Tools

Documentation Overview

ihalent

Turkish public-tender award intelligence: who won, for how much, at what discount, against how many bidders.

CI PyPI Python License: MIT

Built on top of saidsurucu/ihale-mcp β€” ihale-mcp reaches EKAP; ihalent structures and analyzes what it returns.

Every public tender in Turkey ends with a SonuΓ§ Δ°lanΔ± β€” a result notice that states the estimate, the contract price, the winner, and how many firms bid. The notices are public. They are also one at a time, unstructured, and impossible to reason across: you cannot ask EKAP "what has this company won in the last two years" or "how far below estimate does this authority actually award." ihalent turns those notices into structured records and answers exactly those questions β€” firm histories, discount (kΔ±rΔ±m) distributions, and competition metrics β€” with every number traceable back to the notice it came from.

ihalent overview, winner concentration and procurement red flags over nine real awards from the December-2025 / January-2026 window

That is real output over nine real construction awards from the December-2025 / January-2026 window (in examples/). The -2.96% at the bottom of the range is not a bug: Istanbul University awarded a 615-million-lira campus job at 2.96% above its own estimate, through an emergency "pazarlΔ±k" procedure β€” a contract signed over the public estimate, which is precisely the kind of thing that should be easy to see and currently is not.

Why this exists

I'm an industrial engineer and I work in construction. When our firm weighs a public tender, the questions that decide the bid are all about other people's history: how far below estimate does this authority award, how many firms usually show up, what has a given competitor been winning and at what price. All of that is public β€” it is sitting in tens of thousands of result notices on EKAP β€” and none of it is queryable. So everyone rebuilds a private, partial version of it by hand, in spreadsheets, badly.

There is already an excellent tool for reaching this data: saidsurucu/ihale-mcp solved authenticated EKAP access and hands you the notices. ihalent is the layer above it β€” the one that turns a pile of notices into an answer. It does not re-scrape EKAP; it structures what you have collected and does the analytics that don't exist yet.

What it answers

A firm's history β€” every award across the dataset, folded across spelling variants:

Code
$ ihalent firm examples/sample-awards.jsonl "Γ–ZDEN YEL"
Γ–ZDEN YEL
  wins: 1   joint ventures: 1   total contract value: 19.709.997,40 TL
Discount (kΔ±rΔ±m) β€” Γ–ZDEN YEL         
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ mean   β”‚ median β”‚ min    β”‚ max    β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ 33.87% β”‚ 33.87% β”‚ 33.87% β”‚ 33.87% β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”˜
based on all 1 awards.
  top awarding authorities:
      1x  DSİ 14. Bâlge Müdürlüğü

Where the discounts are β€” grouped and sorted, highest first:

Code
$ ihalent discounts examples/sample-awards.jsonl --by authority
Mean discount by authority                                     
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ authority                        β”‚   mean β”‚ median β”‚ awards β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ DSΔ° 14. BΓΆlge MΓΌdΓΌrlüğü          β”‚ 33.87% β”‚ 33.87% β”‚    1/1 β”‚
β”‚ Ziraat BankasΔ± Genel MΓΌdΓΌrlüğü   β”‚ 31.41% β”‚ 31.41% β”‚    1/1 β”‚
β”‚ Δ°stanbul YΔ°KOB                   β”‚ 26.98% β”‚ 26.98% β”‚    1/1 β”‚
β”‚ Δ°SKΔ° Genel MΓΌdΓΌrlüğü             β”‚ 26.66% β”‚ 26.66% β”‚    1/1 β”‚
β”‚ Δ°TÜ RektΓΆrlüğü                   β”‚ 22.68% β”‚ 22.68% β”‚    1/1 β”‚
β”‚ Esenler Belediyesi               β”‚ 21.99% β”‚ 21.99% β”‚    1/1 β”‚
β”‚ AğrΔ± Δ°l Γ–zel Δ°daresi             β”‚ 19.99% β”‚ 19.99% β”‚    1/1 β”‚
β”‚ Kağıthane Belediyesi             β”‚ 17.41% β”‚ 17.41% β”‚    1/1 β”‚
β”‚ Δ°stanbul Üniversitesi-Cerrahpaşa β”‚ -2.96% β”‚ -2.96% β”‚    1/1 β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”˜
awards column: used / considered (excluded lack an estimate).

Competition β€” how many valid bids show up, and how often exactly one does (a single-bid award is a flag procurement watchdogs care about). It's in the overview above.

The one rule

A number is never shown without the ground it stands on. A mean discount always comes with "over how many awards, and how many were dropped for a missing estimate." A firm's total contract value says so when some of its wins had no published price, so you read it as a floor, not the full figure. A discount is None, never 0, when the estimate wasn't published β€” ihalent does not invent the numbers the government didn't print. Half the value of a tool like this is refusing to guess.

Install

Terminal
pip install ihalent           # add [mcp] for the MCP server: pip install "ihalent[mcp]"

Or from source: pip install git+https://github.com/gulmezeren2-byte/ihalent.

The workflow

ihalent reads a JSONL file of awards. You produce it by collecting result notices β€” the easy path is ihale-mcp β€” and letting ihalent structure them:

Code
# 1. collect: with ihale-mcp connected to your agent, save what its
#    get_tender_announcements returns (one or many tenders) to bundle.json

# 2. structure:
ihalent ingest bundle.json -o awards.jsonl

# 3. ask:
ihalent overview  awards.jsonl
ihalent firm      awards.jsonl "ACME İNŞAAT"
ihalent discounts awards.jsonl --by province --min 5

Every command takes --json for pipelines and agents. Or skip collection and try the bundled example directly:

Code
git clone https://github.com/gulmezeren2-byte/ihalent && cd ihalent
python examples/build_sample.py       # parses the real notices in examples/notices/
ihalent overview examples/sample-awards.jsonl

Commands

commandwhat it does
ihalent overview AWARDSvalue, discount, competition and the data gaps of a dataset
ihalent firm AWARDS "NAME"one company's wins, total value, discount, and where it wins
ihalent discounts AWARDS --by Xmean/median discount grouped by authority, province or tender_type
ihalent single-bid AWARDSawards with a single valid bid β€” no real competition (a watchdog flag)
ihalent concentration AWARDS [--authority X]winner concentration (HHI) β€” do the same few firms win everything?
ihalent flags AWARDSper-award red flags: single bid, near-estimate price, no estimate, high drop-off
ihalent parse NOTICE.mdone result notice β†’ structured JSON
ihalent ingest BUNDLE.jsoncollected ihale-mcp/EKAP output β†’ awards JSONL

Using it with AI agents

The result notice is unstructured text; the interesting questions are aggregate. That is an awkward fit for an agent working notice-by-notice, and a natural fit for a tool: --json output with stable fields, an exit code that means something, and a firm-name match that folds spelling variants so an agent doesn't have to.

There is a native MCP server (pip install 'ihalent[mcp]') that exposes the analytics as tools β€” overview, firm, discounts, concentration, flags, parse_notice, ingest_bundle β€” over a dataset you point it at:

Code
IHALENT_AWARDS=awards.jsonl ihalent-mcp

No local Python? The Dockerfile builds the same server: docker build -t ihalent . && docker run --rm -i -e IHALENT_AWARDS=/data/awards.jsonl -v "$PWD:/data:ro" ihalent.

Pair it with ihale-mcp and an agent can collect notices and reason across them in one session: ihale-mcp fetches, ihalent structures and aggregates. The Python API (ihalent.ingest_bundle, ihalent.analytics.firm_profile) is three calls deep if you'd rather script it.

Scope, honestly

  • This is analytics, not a scraper. Collection is ihale-mcp's job (it does it well); ihalent deliberately owns the layer above and stays a pure function of the data you give it β€” no network, no signing keys, nothing that breaks when EKAP rotates a header.
  • Company-name folding is conservative on purpose. It merges legal-form suffixes and Turkish spelling variants, and it would rather show two rows for one firm than one row for two β€” so firm reports how many distinct spellings a query matched, and warns you if that is more than one.
  • The parser tracks one document: the result notice. Bid-level detail (who else bid, at what price) is not in the notice and so is not here. Discount is the estimate-to-contract gap, which the notice does carry.
  • Award values are nominal lira, as printed. Comparing 2023 and 2026 contracts is your analysis to make with the dates in hand; ihalent does not silently inflation-adjust.

What ihalent is not

It is not a replacement for ihale-mcp β€” it sits on top of it. It is not a live dashboard or a paid tender-alert service; it is a library and a CLI you point at data you control. And it does not redistribute a dataset: it ships the handful of real notices in examples/ and the code to structure your own.

A note on the data

Public-tender results are public information, published by the state for public scrutiny. ihalent structures what EKAP already discloses. Company names that appear are legal entities in their public commercial capacity, not private individuals.

How this project is built

Read the full README β†’View source on GitHub β†’

Related MCP Servers

View all in Developer Tools View all alternatives
  • PraisonAI logoPraisonAI

    AI Agents Framework with Self Reflection and MCP support

    πŸ’» Developer Tools1 views
    Compare vs PraisonAI β†’
  • TokenSave logoTokenSave

    Code intelligence for 15+ languages: semantic graph queries instead of file reads. 37 MCP tools.

    πŸ’» Developer Tools0 views
    Compare vs TokenSave β†’
  • Labelhead Artist Momentum logoLabelhead Artist Momentum

    Trending hip-hop artist momentum scores across four cultural dimensions.

    πŸ’» Developer Tools0 views
    Compare vs Labelhead Artist Momentum β†’
  • Arbor logoArbor

    The Graph-Native Intelligence Layer for Code.

    πŸ’» Developer Tools1 views
    Compare vs Arbor β†’

Reviews

No reviews yet β€” be the first to share how this listing worked for you.

Frequently Asked Questions about Ihalent

Add the following block to your claude_desktop_config.json under mcpServers: "mcpServers": { "ihalent": { "command": "npx", "args": ["-y", "ihalent"] } }

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewIhalent AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/ihalent?style=directory)](https://allmcps.com/mcp/ihalent)
HTML Embed
<a href="https://allmcps.com/mcp/ihalent"><img src="https://allmcps.com/api/badge/ihalent?style=directory" alt="Ihalent on AllMCPs" /></a>

Technical Specs & Signals

CategoryπŸ’»Developer Tools
More technical detailsExpand β–Ύ
TransportSTDIO
RuntimeNode.js
Last updatedSep 7, 2026
Views0
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
27Quality signal: Emerging Β· 27/100How this signal is calculated β–Ύ
Server availabilityNot measured

Not scored for repo-hosted servers β€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership8/20
Documentation & tools11/30
Adoption & activity1/15
Community engagement0/10

A guidance signal from public completeness & health data β€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

β˜… FeaturedMoxie Docs MCP logo

Moxie Docs MCP

MCP & Agent Skills for Automated Documentation, and codebase conventions + context

Explore Server β†’

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to unlock edit access and the Official badge and attach your website β€” proof is checked automatically, then reviewed by our team.

Free dofollow backlink: add your website and place the AllMCPs badge on it β€” no claim needed. We detect it automatically and keep it verified as long as the badge stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in πŸ’» Developer Tools β†’Best MCP servers for Developers β†’Alternatives to Ihalent β†’Install in Claude DesktopInstall in CursorInstall in VS Code