Sponsored by Deepsite.site

Simap Mcp Server

Created By
Digilac24 days ago
An MCP (Model Context Protocol) server for interacting with SIMAP.ch, Switzerland's public procurement platform.
Overview

SIMAP MCP Server

GitHub License NPM Version GitHub Actions Workflow Status NPM Downloads MCP Badge Ask DeepWiki

An MCP (Model Context Protocol) server for interacting with SIMAP.ch, Switzerland's public procurement platform.

Enables Claude and other AI assistants to search and view public tenders in Switzerland.

Developed by Digilac.

Features

ToolDescription
search_tendersSearch tenders with filters (text, dates, types, cantons, CPV)
get_tender_detailsGet full details of a specific tender
search_cpv_codesSearch CPV codes (Common Procurement Vocabulary)
browse_cpv_treeNavigate CPV code hierarchy
list_cantonsList all Swiss cantons
list_institutionsList Swiss public institutions
get_publication_historyGet publication history for a project
search_proc_officesSearch public procurement offices
search_bkp_codesSearch BKP codes (construction)
browse_bkp_treeNavigate BKP code hierarchy
search_npk_codesSearch NPK codes (standardized positions)
browse_npk_treeNavigate NPK code hierarchy
search_oag_codesSearch OAG codes (object types)
browse_oag_treeNavigate OAG code hierarchy

Installation

No installation needed — just configure your MCP client to use npx:

Claude Code (CLI)

Add to ~/.claude/settings.json:

{
  "mcpServers": {
    "simap": {
      "command": "npx",
      "args": ["-y", "@digilac/simap-mcp"]
    }
  }
}

Claude Desktop

Add to your Claude Desktop configuration file:

{
  "mcpServers": {
    "simap": {
      "command": "npx",
      "args": ["-y", "@digilac/simap-mcp"]
    }
  }
}

Global install

npm install -g @digilac/simap-mcp

Then configure with the direct command:

{
  "mcpServers": {
    "simap": {
      "command": "simap-mcp"
    }
  }
}

From source

git clone https://github.com/Digilac/simap-mcp.git
cd simap-mcp
npm install
npm run build
{
  "mcpServers": {
    "simap": {
      "command": "node",
      "args": ["/absolute/path/to/simap-mcp/dist/index.js"]
    }
  }
}

Usage

Once configured, simply ask Claude:

Search today's tenders:

"Show me new tenders published today"

Filter by type and canton:

"Find construction tenders in canton Vaud"

Get details:

"Give me the details of this tender" (after a search)

Keyword search:

"Find public contracts related to IT in Geneva"

Find CPV codes:

"Search CPV codes for IT services"

Browse code hierarchies:

"Show root CPV categories" "Show subcategories of CPV code 72000000"

Search construction codes:

"Search BKP codes for masonry"

View project history:

"Show me the publication history of this project"

Search procurement offices:

"Find procurement offices in the city of Zurich"

Reference

search_tenders

Search public tenders.

ParameterTypeDescription
searchstringSearch text (min 3 characters)
publicationFromdateStart date (YYYY-MM-DD)
publicationUntildateEnd date (YYYY-MM-DD)
projectSubTypesarrayProject types (see below)
cantonsarrayCanton codes (BE, VD, GE, ZH, etc.)
processTypesarrayProcess types (see below)
pubTypesarrayPublication types (see below)
cpvCodesarrayCPV codes (8 digits, e.g., 72000000)
bkpCodesarrayBKP construction codes (e.g., 211)
issuedByOrganizationsarrayUUIDs of issuing organizations
lastItemstringPagination token for next page
langstringLanguage: de, fr, it, en (default: en)

get_tender_details

Get tender details.

ParameterTypeDescription
projectIduuidProject ID
publicationIduuidPublication ID
langstringPreferred language

search_cpv_codes / search_bkp_codes / search_npk_codes / search_oag_codes

Search nomenclature codes by keyword or number.

ParameterTypeDescription
querystringSearch term (keyword or code prefix)
langstringLanguage: de, fr, it, en (default: en)

browse_cpv_tree / browse_bkp_tree / browse_npk_tree / browse_oag_tree

Navigate code hierarchies.

ParameterTypeDescription
parentCodestringParent code (optional, omit for root categories)
langstringLanguage: de, fr, it, en (default: en)

list_cantons

List all Swiss cantons with their codes. No parameters required.

list_institutions

List Swiss public institutions that publish tenders.

ParameterTypeDescription
searchstringFilter by name (min 3 characters, optional)
langstringLanguage: de, fr, it, en (default: en)

get_publication_history

Get the publication history for a project.

ParameterTypeDescription
publicationIduuidCurrent publication ID
lotIduuidLot ID (optional, to filter by lot)

search_proc_offices

Search public procurement offices.

ParameterTypeDescription
searchstringName to search (min 3 characters)
institutionIduuidFilter by parent institution (optional)

Enums

Project Types (projectSubTypes)
CodeDescription
constructionConstruction works
serviceServices
supplySupplies
project_competitionProject competitions
idea_competitionIdea competitions
overall_performance_competitionOverall performance competitions
project_studyProject studies
idea_studyIdea studies
overall_performance_studyOverall performance studies
request_for_informationRequests for information
Process Types (processTypes)
CodeDescription
openOpen procedure
selectiveSelective procedure
invitationInvitation procedure
directDirect award
no_processNo procedure (e.g., RFI)
Publication Types (pubTypes)
CodeDescription
advance_noticeAdvance notice
request_for_informationRequest for information
tenderTender
competitionCompetition
study_contractStudy contract
award_tenderAward (tender)
award_study_contractAward (study)
award_competitionAward (competition)
direct_awardDirect award
participant_selectionParticipant selection
selective_offering_phaseSelective offering phase
correctionCorrection
revocationRevocation
abandonmentAbandonment
Swiss Cantons
AG, AI, AR, BE, BL, BS, FR, GE, GL, GR, JU, LU, NE, NW, OW, SG, SH, SO, SZ, TG, TI, UR, VD, VS, ZG, ZH

Development

npm run build          # Compile TypeScript
npm start              # Run the server
npm run dev            # Build + run
npm test               # Run tests
npm run lint           # Lint code
npm run format         # Format code

Project Structure

simap-mcp/
├── src/
│   ├── index.ts                  # Entry point
│   ├── server.ts                 # MCP server configuration
│   ├── api/
│   │   ├── client.ts             # SIMAP HTTP client
│   │   └── endpoints.ts          # Endpoint constants
│   ├── tools/
│   │   ├── search-tenders.ts
│   │   ├── get-tender-details.ts
│   │   ├── codes/                # Nomenclature tools (CPV, BKP, NPK, OAG)
│   │   └── organizations/        # Institution & procurement office tools
│   ├── types/                    # TypeScript interfaces
│   └── utils/                    # Translation & formatting helpers
├── tests/
├── dist/                         # Compiled output
└── package.json

Listed on

Contributing

Contributions are welcome! See CONTRIBUTING.md to get started.

SIMAP API

This server uses the public API from SIMAP.ch.

License

MIT

Server Config

{
  "mcpServers": {
    "simap": {
      "command": "npx",
      "args": [
        "-y",
        "@digilac/simap-mcp"
      ]
    }
  }
}
Recommend Servers
TraeBuild with Free GPT-4.1 & Claude 3.7. Fully MCP-Ready.
CursorThe AI Code Editor
EdgeOne Pages MCPAn MCP service designed for deploying HTML content to EdgeOne Pages and obtaining an accessible public URL.
AiimagemultistyleA Model Context Protocol (MCP) server for image generation and manipulation using fal.ai's Stable Diffusion model.
WindsurfThe new purpose-built IDE to harness magic
Y GuiA web-based graphical interface for AI chat interactions with support for multiple AI models and MCP (Model Context Protocol) servers.
Zhipu Web SearchZhipu Web Search MCP Server is a search engine specifically designed for large models. It integrates four search engines, allowing users to flexibly compare and switch between them. Building upon the web crawling and ranking capabilities of traditional search engines, it enhances intent recognition capabilities, returning results more suitable for large model processing (such as webpage titles, URLs, summaries, site names, site icons, etc.). This helps AI applications achieve "dynamic knowledge acquisition" and "precise scenario adaptation" capabilities.
Tavily Mcp
MiniMax MCPOfficial MiniMax Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech, image generation and video generation APIs.
Serper MCP ServerA Serper MCP Server
MCP AdvisorMCP Advisor & Installation - Use the right MCP server for your needs
Howtocook Mcp基于Anduin2017 / HowToCook (程序员在家做饭指南)的mcp server,帮你推荐菜谱、规划膳食,解决“今天吃什么“的世纪难题; Based on Anduin2017/HowToCook (Programmer's Guide to Cooking at Home), MCP Server helps you recommend recipes, plan meals, and solve the century old problem of "what to eat today"
Playwright McpPlaywright MCP server
RedisA Model Context Protocol server that provides access to Redis databases. This server enables LLMs to interact with Redis key-value stores through a set of standardized tools.
BlenderBlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation.
Amap Maps高德地图官方 MCP Server
Visual Studio Code - Open Source ("Code - OSS")Visual Studio Code
ChatWiseThe second fastest AI chatbot™
Baidu Map百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Jina AI MCP ToolsA Model Context Protocol (MCP) server that integrates with Jina AI Search Foundation APIs.
DeepChatYour AI Partner on Desktop