MODEL CONTEXT PROTOCOL ]

Defence procurement data inside your AI assistant

The Defense Explorer MCP server gives Claude, ChatGPT, Cursor and other MCP clients the same tender data, match scores, cited briefs and pursuit records your team sees in the workspace, under the same permissions, with writes limited to what a person decided.

UPDATED 15 SEP 2026

In short

One remote endpoint, OAuth or a token, and 24 tools that read defence tender data and your workspace. It answers questions with citations and coverage notes; it does not bid, contact buyers or write proposals.

  1. 01Search and rank notices from TED, NATO/NSPA, EU Funding & Tenders, TenderNed, UK Find a Tender and Contracts Finder, Spain’s PLACSP and France’s BOAMP.
  2. 02Read cited briefs, extracted requirements, document coverage, pursuits, decisions, evidence and amendments: the same implementation the REST API uses.
  3. 03Three scopes, chosen per connection: mcp:read to look, mcp:write for watchlists, decisions and acknowledgements, mcp:ai for grounded questions.
  4. 04Included on the Team plan with the REST API. See pricing.

Connect in five minutes

03 STEPS ]

Pick OAuth where the client supports it. Use a token where it only accepts headers.

  1. STEP 01

    Point your client at the server

    Every client needs the same URL. Clients with MCP OAuth support discover the authorization server from the published metadata, so the URL is all you enter.

    https://api.defenseexplorer.com/mcp
    
    # OAuth discovery
    https://api.defenseexplorer.com/.well-known/oauth-authorization-server
    https://api.defenseexplorer.com/.well-known/oauth-protected-resource/mcp
  2. STEP 02

    Authorize, or create a token

    With OAuth, you sign in to Defense Explorer and approve the connection. The consent page lets you remove scopes before approving; access tokens are short-lived and refresh tokens rotate.

    Without OAuth, create a dx_mcp_ token in Integrations. It is shown once, stored only as a hash, expires, and is scoped to your active company membership.

    {
      "mcpServers": {
        "defense-explorer": {
          "url": "https://api.defenseexplorer.com/mcp",
          "headers": {
            "Authorization": "Bearer dx_mcp_<token>"
          }
        }
      }
    }
  3. STEP 03

    Ask a real question

    Start with “What sources do you cover?” so the assistant calls list_sources, then ask for matches against your company profile. Setup for each client: Claude, ChatGPT, Cursor.

Tools

24 TOOLS / 03 SCOPES ]

Every read calls the same code as /api/v1, so an assistant sees what an integration sees.

ToolScopeWhat it returns
search_opportunitiesmcp:readNormalized, deduplicated notices filtered by query, source, type, country, CPV, value and dates, with official source links and English titles where translated
match_opportunitiesmcp:readNotices ranked against your company profile, each with its 0–100 score, reasons, unknowns and blockers
get_opportunitymcp:readOne full normalized record: eligibility requirements, document links, source identity and whether it is saved
ask_opportunitymcp:aiA grounded answer about one notice, with sources and a document coverage note; facts are kept apart from inferences
get_briefmcp:readThe cited brief: each claim with the document span it cites and the verbatim quote, plus a stale flag
list_requirementsmcp:readExtracted requirements with your workspace’s corrections applied
get_document_coveragemcp:readDocuments registered for a notice, their parse status and an explicit limitations list
list_pursuits / get_pursuitmcp:readThe notices your team is working on, with stage, owner, next action and deadline
list_decisionsmcp:readRecorded bid decisions with author, rationale and the profile and document versions they were taken against
list_evidencemcp:readThe reviewed company evidence library: certificates, references and their validity dates
get_requirement_assessmentsmcp:readThe qualification matrix for a pursuit, naming the rule that blocks any unmet requirement
list_changes / get_changemcp:readMaterial amendments on followed notices, with original and updated clause text side by side
list_market_signals / get_market_signalmcp:readEarly signals: prior information notices, market consultations, stated contract end dates, programme plans
summarize_market_signalsmcp:readCounts of signals by kind, confidence, country, source and horizon in one call
list_sourcesmcp:readEvery indexed source: coverage, freshness, counts, open incidents and known limitations
list_saved_opportunities / list_saved_searchesmcp:readPersonal or company watchlists, and saved searches with their filters and match counts
save_opportunity / remove_saved_opportunitymcp:writeAdds or removes a notice on the personal or company watchlist
record_decisionmcp:writeRecords a pursue, hold or decline decision a person has made, with their rationale, to the audit trail
acknowledge_changemcp:writeRecords that you have seen a detected amendment; it does not clear the requirement re-check

A tool called without its scope returns an error naming the missing scope and writes nothing. List tools take page and limit; search is capped at 50 results per call.

Things to ask

06 PROMPTS ]

Questions bid and capture teams ask, and the tool that answers each.

  • 01match_opportunities

    “Which open NSPA tenders close in the next 30 days that fit our radio product line?”

    Ranks open notices against the product line in your company profile and returns each score with its reasons, unknowns and blockers, so the assistant can say why a notice is on the list.

  • 02get_brief · ask_opportunity

    “Summarise the brief for this notice and tell me what the buyer wants as proof of past delivery.”

    Every claim in the brief carries a page reference and a verbatim quote. Claims marked unknown or conflict come back labelled, not as facts.

  • 03get_requirement_assessments

    “Can we meet every mandatory requirement on the Dutch secure comms pursuit?”

    Returns the qualification matrix. Only approved evidence inside its validity dates satisfies a requirement, and a blocked item names the rule that blocked it.

  • 04list_changes · get_change

    “What changed on the tenders we are following this week, and which requirements need a second look?”

    Material amendments only, with the original and updated clause side by side. Cosmetic edits are excluded by default.

  • 05summarize_market_signals

    “What demand is building for counter-UAS in Germany and France over the next year?”

    Counts prior information notices, market consultations and stated contract end dates by horizon. These are inferred demand, not open calls, and the assistant should say so.

  • 06list_sources

    “Do you cover Spanish Ministry of Defence tenders, and how fresh is that data?”

    States what each source covers and leaves out, when it last succeeded and any open incident. This is the answer to “do you cover this?”, before anyone concludes a notice does not exist.

Safety and permissions

WHAT IT WILL NOT DO ]

An intelligence and workflow surface, not an autonomous procurement agent.

The server reads public procurement records and your workspace’s own data under the same company membership and permissions as the web app. Another workspace’s id returns “not found”, never “forbidden”, so ids cannot be probed. Access stops as soon as a membership ends or a token is revoked or expires.

Writes are deliberately narrow and all need mcp:write: saving or removing a watchlist item, recording a bid decision a person has already made, and acknowledging that an amendment was seen. An assistant cannot move a pursuit through stages on its own, approve evidence, edit a requirement or create an export.

It cannot submit bids, contact buyers, draft proposal text, access classified material, change billing or make arbitrary network requests. Raw source snapshots are never returned directly, because source pages and documents are untrusted input; ask_opportunity is the controlled path for reading indexed tender text.

Guard rails the tools make visible

A claim with status unknown or conflict is not a supported fact. Document coverage limitations matter: “no such clause” and “no such clause in the parts we could read” are different answers. Only an approved evidence item inside its validity dates can satisfy a requirement. Market signals are inferred demand, not open calls, and an estimated window is labelled as an estimate.

Coverage is defence-relevant, not complete national procurement, so list_sources should be checked before an assistant says a notice does not exist.

Other tender tools with MCP

HONEST CONTEXT ]

MCP is becoming standard in this category. What differs is the data and the tools behind it.

Defense Explorer is not the only tender tool with an MCP connection. Tenderlake offers an MCP-based analyst for mainstream assistants, and Stotles added an MCP connector on its paid plans in August 2026. If you are comparing, see Defense Explorer vs Tenderlake and Defense Explorer vs Stotles.

What is specific here: notices classified for defence relevance and clearance evidence with the reason shown; NATO/NSPA and national European sources alongside TED; briefs that cite the page and quote the text; a qualification matrix tied to reviewed company evidence; amendment impact; and write tools limited to recording what a person decided.

How it runs

TRANSPORT ]

The server uses stateless HTTP and returns JSON, so a session is not tied to a single server instance. Grounded answers from ask_opportunity use the same workspace rate limits and AI configuration as the assistant in the web app.

For scheduled jobs, CRM syncs and warehouse loads, use the REST API instead: same data, bearer keys, and an OpenAPI 3.1 reference. Use MCP when a person is asking questions in a conversation.

Questions

06 ANSWERS ]
01

What is an MCP server for procurement data?

The Model Context Protocol is an open standard that lets AI assistants call tools on remote servers. A procurement MCP server exposes tender search, records and analysis as tools, so an assistant can look up real notices and cite them instead of guessing or scraping portals.

02

Which AI clients work with it?

Any client that supports remote MCP servers over HTTP. We document Claude, ChatGPT and Cursor. Clients with MCP OAuth need only the URL; clients that accept custom headers can use a dx_mcp_ token.

03

Can the assistant change anything in our workspace?

Only with mcp:write, and only four things: save or remove a watchlist item, record a decision a person has made with their rationale, and acknowledge an amendment. It cannot move pursuits, approve evidence, edit requirements or submit anything.

04

Which plan includes MCP?

The Team plan, which also includes the REST API. Scout and Analyst cover the web workspace only. See pricing or talk to us about a pilot.

05

Does it return classified or restricted tender documents?

No. It reads public procurement records and documents we could index, plus your own workspace data. Gated portals are labelled, never bypassed, and get_document_coverage says which documents could not be read.

06

How is this different from the REST API?

Same data, same permissions, different caller. REST suits scheduled jobs and integrations with no person in the loop; MCP suits an assistant answering a person’s questions. Many teams use both. See the API page.

Give your assistant real defence tender data.

Start a Team trial, connect the MCP server, and ask your first cited question today.