simap MCP Server
Enables AI assistants to search and view public tenders from Switzerland's simap.ch platform.
README
simap MCP Server
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
| Tool | Description |
|---|---|
search_tenders |
Search tenders with filters (text, dates, types, cantons, CPV) |
get_tender_details |
Get full details of a specific tender |
search_cpv_codes |
Search CPV codes (Common Procurement Vocabulary) |
browse_cpv_tree |
Navigate CPV code hierarchy |
list_cantons |
List all Swiss cantons |
list_institutions |
List Swiss public institutions |
get_publication_history |
Get publication history for a project |
search_proc_offices |
Search public procurement offices |
search_bkp_codes |
Search BKP codes (construction) |
browse_bkp_tree |
Navigate BKP code hierarchy |
search_npk_codes |
Search NPK codes (standardized positions) |
browse_npk_tree |
Navigate NPK code hierarchy |
search_oag_codes |
Search OAG codes (object types) |
browse_oag_tree |
Navigate OAG code hierarchy |
Prerequisites
- Node.js ≥ 22 (LTS or newer).
- An MCP-compatible client (Claude Code, Claude Desktop, Cursor, VS Code, Windsurf, Cline, Zed, …).
- No simap account or API key required — the simap API is public and read-only.
Installation & Configuration
The recommended way is npx — no global install needed. Pick your client below and copy the snippet.
Claude Desktop
Edit the Claude Desktop configuration file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"simap": {
"command": "npx",
"args": ["-y", "@digilac/simap-mcp"]
}
}
}
Restart Claude Desktop for the change to take effect.
Other clients
<details> <summary><b>Claude Code (CLI)</b></summary>
Add to ~/.claude/settings.json:
{
"mcpServers": {
"simap": {
"command": "npx",
"args": ["-y", "@digilac/simap-mcp"]
}
}
}
</details>
<details> <summary><b>Cursor</b></summary>
Global config at ~/.cursor/mcp.json (all projects) or project-level .cursor/mcp.json:
{
"mcpServers": {
"simap": {
"command": "npx",
"args": ["-y", "@digilac/simap-mcp"]
}
}
}
Fully quit and reopen Cursor — MCP servers are only loaded at startup.
</details>
<details> <summary><b>VS Code (GitHub Copilot)</b></summary>
Workspace config at .vscode/mcp.json (or open the user-level file via the MCP: Open User Configuration command):
{
"servers": {
"simap": {
"command": "npx",
"args": ["-y", "@digilac/simap-mcp"]
}
}
}
VS Code uses
serversas the top-level key (notmcpServers).
</details>
<details> <summary><b>Windsurf</b></summary>
Edit ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"simap": {
"command": "npx",
"args": ["-y", "@digilac/simap-mcp"]
}
}
}
</details>
<details> <summary><b>Cline (VS Code extension)</b></summary>
Open Cline's MCP Servers panel → Configure tab, then paste:
{
"mcpServers": {
"simap": {
"command": "npx",
"args": ["-y", "@digilac/simap-mcp"],
"disabled": false
}
}
}
</details>
<details> <summary><b>Zed</b></summary>
Edit the user settings.json (~/.config/zed/settings.json on macOS/Linux, %APPDATA%\Zed\settings.json on Windows) or a project-level .zed/settings.json:
{
"context_servers": {
"simap": {
"command": "npx",
"args": ["-y", "@digilac/simap-mcp"]
}
}
}
Zed uses
context_serversas the top-level key.
</details>
<details> <summary><b>Alternative: Global install</b></summary>
npm install -g @digilac/simap-mcp
Then configure your client with the direct command:
{
"mcpServers": {
"simap": {
"command": "simap-mcp"
}
}
}
</details>
<details> <summary><b>Alternative: From source</b></summary>
git clone https://github.com/Digilac/simap-mcp.git
cd simap-mcp
npm install
npm run build
Then configure your client with the absolute path:
{
"mcpServers": {
"simap": {
"command": "node",
"args": ["/absolute/path/to/simap-mcp/dist/index.js"]
}
}
}
</details>
Usage
Once configured, just ask your AI assistant in natural language. Mention "in simap" to make sure the assistant routes the request through the MCP server:
- "Show me new tenders published today in simap"
- "Find construction tenders in canton Vaud in simap"
- "Give me the details of this tender in simap" (after a search)
- "Search CPV codes for IT services in simap"
Listed on
Contributing
Contributions are welcome! See CONTRIBUTING.md for development setup and commands, and ARCHITECTURE.md for architecture, internal patterns, and the full tool parameter reference.
simap API
This server uses the public API from simap.ch.
License
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.