EstimateOne MCP server Let your AI agent chase your EstimateOne tenders.

Search the Tender Noticeboard, track your leads, answer builders and submit quotes from your AI agent. It signs in to EstimateOne as you, so there is no partner API to apply for. Cotlet runs it hosted, around the clock.

  • Free 7-day trial, no card
  • Not affiliated with EstimateOne
EstimateOne logo EstimateOne Cloud Browser

12 tools Read and write

Tenders to quotes

What can your AI agent do in EstimateOne? From new tender to submitted quote.

  • Get a daily digest of new tenders

  • Chase quotes due this week

  • Answer Not Quoting on tenders that do not fit

  • Request and download tender documents

  • Submit a quote from your PDF

  • See which builders viewed your quotes

Partner API, no MCP

Does EstimateOne have an MCP server or an API? A partner API for Speci-finder matches, no MCP server.

EstimateOne has an External API for partner software: read-only, with one endpoint for Speci-finder matches, set up by EstimateOne for each customer (checked 6 Nov 2026). We found no EstimateOne MCP server. Cotlet adds 12 EstimateOne tools for Claude, ChatGPT and scripts: no API key to request, no partner approval, hosted all day, and one account for your other apps too.

  • The API signs in with an OAuth2 credential that EstimateOne issues for one customer user. It has no webhooks, so partners pull results hourly or daily. The builder side (projects, packages, documents) is not open to partners in production.
  • There is no EstimateOne app on Zapier. EstimateOne's own guide connects Zapier through Webhooks by Zapier and the partner credential, and it reads Speci-finder matches only.
  • EstimateOne also emails a Speci-Finder Report and a Watchlist Update, daily or weekly. They go to a person, not to an agent.
The EstimateOne partner API, doing it by hand and Cotlet compared
What you need Partner APIBy handCotlet
Speci-Finder matches Read-only JSON Yes, or by email Yes
Search the Noticeboard with filters No Yes Yes
Answer Intend to Quote or Not Quoting No Yes Yes, after your OK
Request and download documents No Yes Yes, after your OK
Submit and revise quotes No Yes Yes, after your OK
No partner agreement with EstimateOne Set up per customer Yes Yes
Runs with you away Yes, on a schedule No Yes, hosted

Checked 6 Nov 2026. Sources: E1 Developer: Overview · E1 Developer: Use the API from Zapier · E1 Developer: Supplier API · E1 Help: Managing E1 emails

Set up once

How does the EstimateOne MCP server work? Your login, your account, your agent.

  1. 1Sign in to EstimateOne

    Once, in a browser we run for you.

  2. 2Connect your AI agent

    Paste one address.

  3. 3Ask in plain words

    The agent works in your leads.

We never see or store your EstimateOne password, and every call that tells a builder something waits for your OK. Who can see your session

Any MCP client

How to connect EstimateOne to your AI agent

Three steps, then one code block for your client.

  1. 1

    Enable EstimateOne for agents. Sign up, sign in to EstimateOne in its Cloud Browser with your own login, then press Enable for agents.

  2. 2

    Add the Cotlet address. Enter https://cotlet.dev/mcp/v1 as a custom MCP server or connector in your agent.

  3. 3

    Approve the connection. Chat apps open a Cotlet sign-in page. Editors, n8n and scripts use an API key from the console.

One shared address, https://cotlet.dev/mcp/v1, also carries EstimateOne next to your other apps. Turned EstimateOne on after connecting? Refresh the connector so the agent sees the 12 new tools.

Claude
Settings > Connectors > Add custom connector
URL: https://cotlet.dev/mcp/v1/connect

Claude Code:
claude mcp add --transport http cotlet-estimateone \
  https://cotlet.dev/mcp/v1 \
  --header "Authorization: Bearer $COTLET_API_KEY"
ChatGPT
Settings > Apps & Connectors > Create
MCP server URL: https://cotlet.dev/mcp/v1/connect
Authentication: OAuth
Cursor
// ~/.cursor/mcp.json
{
  "mcpServers": {
    "cotlet-estimateone": {
      "url": "https://cotlet.dev/mcp/v1",
      "headers": { "Authorization": "Bearer ${env:COTLET_API_KEY}" }
    }
  }
}
Codex
# ~/.codex/config.toml
[mcp_servers.cotlet-estimateone]
url = "https://cotlet.dev/mcp/v1"
bearer_token_env_var = "COTLET_API_KEY"
n8n
MCP Client Tool (inside an AI Agent)
Transport: HTTP Streamable
URL: https://cotlet.dev/mcp/v1
Auth: Bearer, <your key>
Tool: estimateone_read
Make, Zapier
Make: MCP Client > Call a tool
Zapier: MCP Client by Zapier > Run Tool
Server URL: https://cotlet.dev/mcp/v1
Token: <your key>
Tool: estimateone_write
6 read, 6 write

All 12 EstimateOne MCP tools

Find tenders3

Every other tool takes a project_id from these. Searches use the Noticeboard's own filters; contains_keyword limits results to Speci-Finder matches.

  • search_tenders Projects on the Tender Noticeboard, filtered like the board. read

    Returns projects from the Tender Noticeboard that your account can see, with builder, category, location, quotes due date and your interest level. Search by Project Name, Project ID, Address, Brand or Product, and use the same filters as the board. contains_keyword limits results to Speci-Finder matches. A free account sees a limited number of tenders per month.

    MCP callestimateone_read → search_tenders

    REST endpointGET https://cotlet.dev/api/v1/estimateone/tenders/search

    Parameters

    Parameters: search_tenders
    NameTypeDescription
    query string string Project Name, Project ID, Address, Brand or Product.
    trade string string Trade filter, as named on the Noticeboard.
    location string string Location filter, as named on the Noticeboard.
    category string string Category filter, as named on the Noticeboard.
    budget string string Budget filter, as named on the Noticeboard.
    interest_level enum enum Interested, Quoting, Quoted or Not Interested.
    status enum enum Open, Awarded or Closed: the tabs of the board.
    added_within string string Added Within filter, as the board offers it.
    quotes_due_within string string Quotes Due Within filter, as the board offers it.
    contains_keyword boolean boolean Only projects with a Speci-Finder keyword match.

    Example response

    {
      "projects": [
        {
          "project_id": "E1-48213",
          "name": "Harbour Medical Centre fitout",
          "builder": "Northgate Build",
          "category": "Health",
          "location": "Newcastle NSW",
          "quotes_due": "2026-11-18",
          "interest_level": null
        },
        {
          "project_id": "E1-48190",
          "name": "Station Road apartments",
          "builder": "Kestrel Constructions",
          "category": "Residential",
          "location": "Parramatta NSW",
          "quotes_due": "2026-11-20",
          "interest_level": "Interested"
        }
      ]
    }
  • get_tender One project: builder, package, value, due date, trades, keywords and document access. read

    Returns the project details page: builder, package, category, approx project value, quotes due, location, trades involved and the Speci-Finder keywords found in it. It also says how the documents are offered (Request package, or View and Download) and your response and quote status. Reading a project does not tell the builder anything; opening documents does.

    MCP callestimateone_read → get_tender

    REST endpointGET https://cotlet.dev/api/v1/estimateone/projects/{project_id}/tender

    Parameters

    Parameters: get_tender
    NameTypeDescription
    project_id string required string Project ID from search_tenders or list_leads.

    Example input

    {
      "project_id": "project_8c41d2"
    }

    Example response

    {
      "project_id": "E1-48213",
      "name": "Harbour Medical Centre fitout",
      "builder": "Northgate Build",
      "package": "Electrical",
      "category": "Health",
      "approx_project_value": "$4,500,000",
      "quotes_due": "2026-11-18",
      "location": "Newcastle NSW",
      "trades_involved": [
        "Electrical",
        "Plumbing",
        "Joinery"
      ],
      "keywords": [
        "LED panel"
      ],
      "documents": "Request package",
      "your_response": null,
      "your_quote": null
    }
  • list_speci_finder_matches Projects whose documents mention your Speci-Finder keywords. read

    Returns projects that match the keywords set up in Speci-Finder, the same ones the Contains a keyword filter and the Speci-Finder Report email use. Each match names the keywords found. What Speci-Finder offers (keyword count, conditional criteria) depends on your subscription.

    MCP callestimateone_read → list_speci_finder_matches

    REST endpointGET https://cotlet.dev/api/v1/estimateone/speci-finder-matches

    Parameters

    Parameters: list_speci_finder_matches
    NameTypeDescription
    keyword string string Only matches for this keyword.

    Example response

    {
      "matches": [
        {
          "project_id": "E1-48213",
          "name": "Harbour Medical Centre fitout",
          "builder": "Northgate Build",
          "keywords": [
            "LED panel"
          ],
          "quotes_due": "2026-11-18"
        }
      ]
    }

Leads and Watchlist4

list_leads follows the Leads screen: its tabs, and only your own invitations unless you pass team_member. A Watchlist change reaches only your team.

  • list_leads Your leads: invitations and projects you opened, with due date, document status and quote response. read

    Lists the Leads screen by tab: Active (quotes due date not passed), Submitted (quoted on E1 or marked Quote Emailed) or Archived. Each lead shows builder, source (Noticeboard or Invitation), package, team member, quotes due and quote response, and the document status (Not Accessed, Out of Date or Current). By default only invitations assigned to you are listed; team_member shows colleagues.

    MCP callestimateone_read → list_leads

    REST endpointGET https://cotlet.dev/api/v1/estimateone/leads

    Parameters

    Parameters: list_leads
    NameTypeDescription
    tab enum enum Active, Submitted or Archived.
    search string string Project name, project ID, builder or package.
    quote_response enum enum Quoting, Quote Emailed, Not Quoting, Quoted or No Response.
    quotes_due_status string string Quotes Due status filter, as the Leads screen names it.
    team_member string string Show the leads of this team member.

    Example response

    {
      "leads": [
        {
          "project_id": "E1-48213",
          "project": "Harbour Medical Centre fitout",
          "builder": "Northgate Build",
          "source": "Invitation",
          "package": "Electrical",
          "team_member": "Tom Reed",
          "quotes_due": "2026-11-18",
          "quote_response": "Quoting",
          "documents": "Current"
        },
        {
          "project_id": "E1-47980",
          "project": "Riverside school hall",
          "builder": "Kestrel Constructions",
          "source": "Noticeboard",
          "package": "Electrical",
          "team_member": "Tom Reed",
          "quotes_due": "2026-11-09",
          "quote_response": "No Response",
          "documents": "Not Accessed"
        }
      ]
    }
  • list_watchlist Projects your team tracks, with interest level and who watches them. read

    Returns the Watchlist tab: every tracked project your team sees, with its Interest Level (Interested, Quoting, Quoted or Not Interested) and the team member it is assigned to. Use interest_level to narrow the list. Tender dates, awards and addendums show on each project.

    MCP callestimateone_read → list_watchlist

    REST endpointGET https://cotlet.dev/api/v1/estimateone/watchlists

    Parameters

    Parameters: list_watchlist
    NameTypeDescription
    interest_level enum enum Interested, Quoting, Quoted or Not Interested.
    assigned_to string string Only projects assigned to this team member.

    Example response

    {
      "projects": [
        {
          "project_id": "E1-48213",
          "name": "Harbour Medical Centre fitout",
          "interest_level": "Quoting",
          "assigned_to": "Tom Reed",
          "quotes_due": "2026-11-18"
        },
        {
          "project_id": "E1-48190",
          "name": "Station Road apartments",
          "interest_level": "Interested",
          "assigned_to": null,
          "quotes_due": "2026-11-20"
        }
      ]
    }
  • update_watchlist Add a project to the Watchlist, set its interest level or assign it to a teammate. write

    Adds a project to your Watchlist, sets its Interest Level (Interested, Quoting, Quoted or Not Interested) or assigns it to a team member. It reaches only your own team and is undone with one call, so it does not wait for your OK.

    MCP callestimateone_write → update_watchlist

    REST endpointPATCH https://cotlet.dev/api/v1/estimateone/projects/{project_id}/watchlist

    Parameters

    Parameters: update_watchlist
    NameTypeDescription
    project_id string required string Project ID.
    interest_level enum enum Interested, Quoting, Quoted or Not Interested.
    assigned_to string string Team member to assign the project to.

    Example input

    {
      "project_id": "project_8c41d2"
    }

    Example response

    {
      "project_id": "E1-48190",
      "on_watchlist": true,
      "interest_level": "Interested",
      "assigned_to": "Tom Reed"
    }
  • set_response Tell a builder you intend to quote, or that you are not quoting. writeasks first

    Sets Your Response on a project: Intend to Quote, or Not Quoting with a reason. The builder is told either way ("Northgate Build knows you're quoting"). You can change the response later with another call. By default you confirm each call; you can switch that off for this tool.

    MCP callestimateone_write → set_response

    REST endpointPUT https://cotlet.dev/api/v1/estimateone/projects/{project_id}/response

    Parameters

    Parameters: set_response
    NameTypeDescription
    project_id string required string Project ID.
    response enum required enum intend_to_quote or not_quoting.
    reason enum enum For not_quoting: Trade or product not suitable, No capacity, Not in service area, Project too small, Project too large, Docs lack detail, or Don't send a reason.

    Example input

    {
      "project_id": "project_8c41d2",
      "response": "intend_to_quote"
    }

    Example response

    {
      "project_id": "E1-47980",
      "response": "Not Quoting",
      "reason": "Project too large",
      "builder_notified": "Kestrel Constructions"
    }

Documents2

Request package waits for the builder; where the board shows View and Download, download_package works at once. Opening documents tells the builder.

  • request_package Ask the builder for access to a package of documents. writeasks first

    Selects your nominated package and clicks Request package. The builder approves, and E1 emails you when they accept or reject, so access is not immediate. Only for projects that show Request package; where the board shows View and Download, call download_package. By default you confirm each call; you can switch that off for this tool.

    MCP callestimateone_write → request_package

    REST endpointPOST https://cotlet.dev/api/v1/estimateone/projects/{project_id}/package/request

    Parameters

    Parameters: request_package
    NameTypeDescription
    project_id string required string Project ID.
    package string required string The package you want, as the project lists it.

    Example input

    {
      "project_id": "project_8c41d2",
      "package": "package"
    }

    Example response

    {
      "project_id": "E1-48213",
      "package": "Electrical",
      "status": "Requested",
      "builder": "Northgate Build"
    }
  • download_package Download the documents of a package, or only what changed. writeasks first

    Downloads a package in your Cloud Browser and returns the file list. It starts a transmittal and lets the builder know you are viewing the documents. changes_only uses Download changes, which fetches only new or updated files after a Documents changed banner. By default you confirm each call; you can switch that off for this tool.

    MCP callestimateone_write → download_package

    REST endpointPOST https://cotlet.dev/api/v1/estimateone/projects/{project_id}/package/download

    Parameters

    Parameters: download_package
    NameTypeDescription
    project_id string required string Project ID.
    package string string Package to download. Without it, the full set.
    changes_only boolean boolean Only new or updated files since your last download.

    Example input

    {
      "project_id": "project_8c41d2"
    }

    Example response

    {
      "project_id": "E1-48213",
      "package": "Electrical",
      "documents": "Current",
      "files": [
        "E-100 Power plan.pdf",
        "E-200 Lighting schedule.pdf",
        "Spec section 16.pdf"
      ],
      "transmittal_sent_to": "Northgate Build"
    }

Quotes3

A quote needs a total excluding GST and a quote file. Revising keeps the original, so builders see both versions.

  • list_quotes Quotes you submitted on a project, with versions and when builders viewed them. read

    Returns the Quotes tab under Activity for one project: each version you submitted, the amount excluding GST and the Viewed By Builders column with its date stamp. viewed_at is empty until the builder opens the quote. Each builder sees only their own quote.

    MCP callestimateone_read → list_quotes

    REST endpointGET https://cotlet.dev/api/v1/estimateone/projects/{project_id}/quotes

    Parameters

    Parameters: list_quotes
    NameTypeDescription
    project_id string required string Project ID.

    Example input

    {
      "project_id": "project_8c41d2"
    }

    Example response

    {
      "quotes": [
        {
          "version": "v1",
          "builder": "Northgate Build",
          "package": "Electrical",
          "total_ex_gst": "118400.00",
          "submitted_at": "2026-11-10T09:12:00+11:00",
          "viewed_at": "2026-11-10T14:40:00+11:00"
        },
        {
          "version": "v2",
          "builder": "Northgate Build",
          "package": "Electrical",
          "total_ex_gst": "116900.00",
          "submitted_at": "2026-11-12T08:30:00+11:00",
          "viewed_at": null
        }
      ]
    }
  • submit_quote Send a quote to one or more builders on a project. writeasks first

    Fills the Quote form: builder or builders, package, total amount excluding GST (required), the Quote file (required) and an optional message that every selected builder sees. E1 emails the quote to the builder and adds it to their portal, and your lead turns to Quoted. For different messages per builder, call once per builder. By default you confirm each call; you can switch that off for this tool.

    MCP callestimateone_write → submit_quote

    REST endpointPOST https://cotlet.dev/api/v1/estimateone/projects/{project_id}/quote/submit

    Parameters

    Parameters: submit_quote
    NameTypeDescription
    project_id string required string Project ID.
    builders array required array Builder names from the project.
    package string required string Package, as the form lists it.
    total_amount string required string Total excluding GST.
    quote_file string required string The quote document to upload.
    message string string Quote message, seen by every selected builder.

    Example input

    {
      "project_id": "E1-48213",
      "builders": [
        "Northgate Build"
      ],
      "package": "Electrical",
      "total_amount": "118400.00",
      "quote_file": "electrical-quote.pdf",
      "message": "Includes LED panels per E-200. Valid for 30 days."
    }

    Example response

    {
      "project_id": "E1-48213",
      "version": "v1",
      "builders": [
        "Northgate Build"
      ],
      "package": "Electrical",
      "total_ex_gst": "118400.00",
      "lead_status": "Quoted"
    }
  • revise_quote Send a new version of a quote you already submitted. writeasks first

    Opens the quote in the Quotes tab and uses Revise Quote with a new amount, file and message. Builders keep the original and the new version, so the message should say what changed. Quote summary lists every version. By default you confirm each call; you can switch that off for this tool.

    MCP callestimateone_write → revise_quote

    REST endpointPOST https://cotlet.dev/api/v1/estimateone/projects/{project_id}/quote/revise

    Parameters

    Parameters: revise_quote
    NameTypeDescription
    project_id string required string Project ID.
    builder string required string Builder the quote went to.
    total_amount string required string New total excluding GST.
    quote_file string required string The revised quote document.
    message string string What changed.

    Example input

    {
      "project_id": "project_8c41d2",
      "builder": "builder",
      "total_amount": "total amount",
      "quote_file": "quote file"
    }

    Example response

    {
      "project_id": "E1-48213",
      "builder": "Northgate Build",
      "version": "v2",
      "total_ex_gst": "116900.00",
      "previous_version": "v1"
    }
Encrypted, revocable

Who can see my EstimateOne session, and how do I revoke it?

  • What we store

    Your signed-in EstimateOne browser profile, encrypted with AES-256-GCM, in Finland. Not the password.

  • What your agent gets

    The 12 EstimateOne tools. Never the cookie or the login.

  • What the session sees

    What your account sees: tenders, leads, Watchlist, documents and your quotes.

  • What no tool touches

    Plans, billing, licences, team members, password and two-factor.

  • If EstimateOne asks for a code

    You sign in yourself and type any code. We never do.

  • How to cut access

    Disable for agents, reset the browser or delete the API key. The next call fails.

cotlet.dev gets A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory (live results). There is no SOC 2 report or third-party pentest yet.

Follows your account

What does my agent see in EstimateOne? Exactly what you see.

What EstimateOne decides for each tool
ToolWhat EstimateOne decides
search_tendersA free account sees a limited number of tenders per month.
list_speci_finder_matchesSpeci-Finder features follow your subscription. Conditional criteria are on the Professional tiers.
list_leadsShows your own invitations. Colleagues' leads need the team_member filter.
request_packageThe builder approves, and EstimateOne emails you their answer.
submit_quoteThe total amount excluding GST and the quote file are required.
list_quotesViewed By Builders shows a date once the builder opens the quote.

What that means for you

  • The agent sees only what your account shows
  • A call your account cannot make fails and costs nothing
  • You need no partner agreement or developer approval
  • Your team keeps its own Watchlist and leads

EstimateOne accepts quotes after the due date, but builders may have stopped looking. Ask your agent to flag Overdue leads and confirm with the builder first.

Tested every 12 h

What happens when EstimateOne changes? We repair the tool; your prompts stay the same.

between tests of the EstimateOne tools
12 h
for a call to an EstimateOne tool paused for repair
$0

EstimateOne shows different things to free and paid accounts, so the tools read each screen as your account shows it. When EstimateOne moves a button or renames a filter, the fix is on our side. status.cotlet.dev checks the site, console and API every 3 minutes.

5 tools ask first

Approvals, undo and mistakes No builder hears from you until you say so.

  1. 01 Reads the tender get_tender shows the builder, package and due date before anything is sent.
  2. 02 Checks your quote The package, the total excluding GST and the file are all there.
  3. 03 Waits for your OK The quote shows up in your Cotlet console first.
  4. 04 Reports back Version, builder, amount and the lead's new status.
Which EstimateOne actions can be undone
ActionUndo
Update the WatchlistChange it again; only your team sees it
Request a packageThe builder decides and EstimateOne emails you the answer
Download a packageNo, the builder is told you opened the documents
Set Intend to Quote or Not QuotingChange it with another call; the builder was already told
Submit a quoteDelete it in EstimateOne; the builder may have kept a copy, so tell them
Revise a quoteNo, builders keep both versions; the message says what changed

5 of 12 tools ask first: request_package, download_package, set_response, submit_quote and revise_quote. The 6 reads and the Watchlist change run at once. Turn the wait off per tool for a scheduled run.

A quote sent by email, outside EstimateOne, cannot be deleted inside it.

MCP call
{
  "name": "submit_quote",
  "arguments": {
    "project_id": "E1-48213",
    "builders": [
      "Northgate Build"
    ],
    "package": "Electrical",
    "total_amount": "118400.00",
    "quote_file": "electrical-quote.pdf",
    "message": "Includes LED panels per E-200. Valid for 30 days."
  }
}
REST
curl -X POST https://cotlet.dev/api/v1/estimateone/projects/E1-48213/quote/submit \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"builders":["Northgate Build"],"package":"Electrical","total_amount":"118400.00","quote_file":"electrical-quote.pdf","message":"Includes LED panels per E-200. Valid for 30 days."}'
Tool output
{
  "project_id": "E1-48213",
  "version": "v1",
  "builders": [
    "Northgate Build"
  ],
  "package": "Electrical",
  "total_ex_gst": "118400.00",
  "lead_status": "Quoted"
}

Scripts and cron jobs reach the same tools over REST at /api/v1/estimateone, with the same key and price. A write answers 202 while it waits for your OK. Each row in the tools table shows its REST path.

Pay per call

How much does the EstimateOne MCP server cost?

About $20 a monthfor a subcontractor's estimator, 3,520 credits. Your EstimateOne plan is billed by EstimateOne as before.

A month of EstimateOne jobs for one estimator, in credits
JobCallsCredits
Daily digest: matches and new tenders6 × 221,320
Quotes due this week, weekly4 × 4160
Answer a tender: details, then your response2 × 10200
Request or download a package2 × 8160
Submit a quote, then check it3 × 6180
Cloud Browser, 30 days1,500
Total3,520
  • Free 7-day trial, no card
  • 10 credits per successful call, MCP or REST
  • 50 credits a day for the Cloud Browser
  • One-time packs, valid 12 months, no subscription

The month is our example: a digest on each of 22 working days, about 10 tenders answered, 8 packages and 6 quotes. EstimateOne publishes no figure for tenders a subcontractor quotes a month. It also lists no price for its subcontractor and supplier plans; sign-up is free with a limited number of tenders a month. Dollars at the $29 pack rate.

Cotlet credit packs: price, credits and calls at 10 credits each
Credits Price, one time Calls at 10 credits Per 1,000 credits
5,000 $29 500 $5.80
15,000 $79 1,500 $5.27
32,000 $149 3,200 $4.66
60,000 $249 6,000 $4.15

Only successful calls use credits; failed calls and timeouts cost nothing. At a balance of 0 calls pause, never a surprise charge. Authenticate with the Authorization: Bearer header.

Other options

EstimateOne MCP server: partner API, Zapier, email or hosted Wait for partner access, or sign in as yourself.

EstimateOne options, checked 6 Nov 2026
OptionWhat it doesWhere it stops
EstimateOne partner APIOfficial: Speci-finder matches as JSON with cursor paging, one OAuth2 credential per customer user.EstimateOne sets up each partner and customer. Read-only, no tender search, documents or quotes, no webhooks.
Webhooks by ZapierEstimateOne's guide: request a token, read matches, loop them into a CRM or sheet. Hourly or daily is its advice.The same partner credential. There is no EstimateOne app on Zapier.
EstimateOne emailsA Speci-Finder Report on new projects with your keywords and a daily or weekly Watchlist Update on dates, awards and addendums.Mail for a person. Nothing answers a builder or sends a quote.

We found no EstimateOne MCP server on GitHub or from EstimateOne (searched 6 Nov 2026). If you build software for many EstimateOne customers and want matches pushed into your own system, ask EstimateOne for partner access. Cotlet is for the estimator or owner who wants an agent in Claude or ChatGPT working in their own account, with nothing to apply for.

EU company, since 2019

Who runs Cotlet A company you can look up.

Take Group sp. z o.o. runs Cotlet. It is a software company registered in Poland, EU (VAT PL6342984273), working since 2019, founded by Bart Krawczyk (Co-founder, CTO) and Jake Slugocki (Co-founder, SEO, sales and marketing). Write to contact@cotlet.dev with questions about the EstimateOne tools.

EstimateOne MCP server: questions

How do I connect EstimateOne to ChatGPT or Claude?

Sign up at cotlet.dev, log in to EstimateOne once in its Cloud Browser and add Cotlet to ChatGPT or Claude, following the steps in your console. No API key is needed. ChatGPT and Claude then work in your EstimateOne account through Cotlet, in their phone apps too.

What can ChatGPT do in EstimateOne?

With Cotlet, ChatGPT, Claude and other AI agents handle jobs like these in EstimateOne: a daily tender digest; chase quotes due this week; decline tenders that do not fit. You ask in plain words, and anything that reaches a builder waits for your OK first.

Is there an EstimateOne connector for ChatGPT or Claude?

EstimateOne has no connector of its own for ChatGPT or Claude (checked 6 Nov 2026). Cotlet adds one to both: you add Cotlet once and ChatGPT or Claude works in your own EstimateOne account, finding and sorting tenders for you.

How do I get access?

Create a free account at https://cotlet.dev, open EstimateOne under Integrations in the console and sign in to EstimateOne in its Cloud Browser. The trial starts with your first app, no card asked.

Does EstimateOne have an MCP server?

We found none from EstimateOne (checked 6 Nov 2026). Its External API is partner-only and read-only, and it returns Speci-finder matches. Cotlet gives Claude, ChatGPT and scripts the EstimateOne tools above, hosted.

Do I need a paid EstimateOne plan?

No plan is needed to connect. E1 says sign-up is free, and a free account sees a limited number of tenders per month, so search_tenders shows what your account shows. Speci-Finder features depend on your subscription tier, so list_speci_finder_matches returns what your tier offers.

Which leads does my agent see?

The Leads screen shows only invitations assigned to you by default, and list_leads follows it. Pass team_member to see a colleague's leads. Your agent works in your own account, so it sees what you see.

Do I need partner access from EstimateOne?

No. Cotlet works in your own account, so EstimateOne issues no credential and registers no application. You sign in with your own login, and your account sets what the agent sees.

Does EstimateOne send events to my agent?

Not through Cotlet. The partner API has no webhooks either. Cotlet reads and writes when your agent asks, so for a morning check of new tenders, run your agent on a schedule.

Is the MCP server different from the REST API?

Only the door is different. Both expose the same 12 tools, inputs and answers, with one API key and one price. Agents use MCP; scripts and cron jobs use REST.

Is Cotlet affiliated with EstimateOne?

No. Cotlet is independent and not affiliated with EstimateOne Pty Ltd.

Give your agent access to EstimateOne.

Free 7-day trial with 2,000 credits, no card needed.