oorlogsbronnen-mcp

oorlogsbronnen-mcp

AI-powered MCP server for exploring Dutch WWII historical archives via natural language.

11
Stars
3
Forks
11
Watchers
1
Issues
Provides an MCP-compatible server that enables AI models to access and search the Oorlogsbronnen (War Sources) database, focusing on Dutch World War II archives. Offers natural language querying, advanced filtering by content type, and returns AI-friendly JSON outputs. Integrates seamlessly with Claude Desktop and allows users to manage query parameters for tailored archival research. Delivers access to documents, photographs, personal accounts, and other historical resources from 1940-1945 in the Netherlands.

Key Features

Natural language querying of WWII Dutch archives
Filtering results by content type (person, photo, article, etc.)
Customizable result counts for each search
AI-friendly JSON output format
Direct integration with Claude Desktop
Support for English-language and Dutch-focused queries
Error handling for invalid queries and types
Easy installation via NPX or from source
Structured API for consistent responses
Access to rich metadata and direct archive links

Use Cases

Researching specific WWII events in the Netherlands
Exploring personal or family histories using archival data
Locating photographs and visual materials about Dutch WWII experiences
Finding first-hand accounts and stories from the occupation, resistance, or liberation
Academic research on Dutch WWII social, military, or infrastructure history
Museum or exhibition curation using digitized primary sources
Genealogical and ancestry investigations related to WWII
Assisting AI chatbots with in-depth archival context retrieval
Discovering historical sites and places for educational visits
Journalistic or documentary research requiring verified Dutch WWII sources

README

Oorlogsbronnen MCP Server

A Model Context Protocol (MCP) server that provides AI-powered access to the Oorlogsbronnen (War Sources) database. This server enables natural language interactions with historical World War II archives from the Netherlands.

Natural Language Interaction Examples

Ask your AI assistant questions like these to explore Dutch WWII history:

  • "What happened during the bombing of Rotterdam in May 1940?"
  • "Tell me about Anne Frank's life in hiding based on historical records."
  • "Show me photographs of the Dutch Hunger Winter of 1944-1945."
  • "Were any of my ancestors imprisoned in Camp Vught during the war?"
  • "I'm visiting Arnhem next week. What historical sites related to Operation Market Garden should I see?"
  • "Find information about resistance activities in Utrecht during the Nazi occupation."
  • "What was daily life like for Jewish families in Amsterdam before deportations began?"
  • "Show me firsthand accounts from people who witnessed the liberation of the Netherlands in 1945."
  • "What records exist about children who were hidden by Dutch families during the war?"
  • "I'm researching the impact of WWII on Dutch infrastructure. Can you find documents about the reconstruction of bridges and railways?"

Features

  • 🔍 Natural language search across the Oorlogsbronnen database
  • 🏷️ Filter results by content type (person, photo, article, etc.)
  • 📊 Control the number of results returned
  • 🤖 AI-friendly JSON responses for further processing

Installation

You can install this server in two ways:

1. Using Claude Desktop with NPX Package

Update your Claude configuration file (~/Library/Application Support/Claude/claude_desktop_config.json):

json
{
  "mcpServers": {
    "oorlogsbronnen-server": {
      "command": "npx",
      "args": [
        "-y",
        "oorlogsbronnen-mcp"
      ]
    }
  }
}

After updating the configuration, restart Claude Desktop for the changes to take effect.

2. From Source

  1. Clone this repository:
bash
git clone https://github.com/r-huijts/oorlogsbronnen-mcp.git
cd oorlogsbronnen-mcp
  1. Install dependencies:
bash
npm install
  1. Build the project:
bash
npm run build
  1. Configure Claude Desktop by updating your configuration file (located at ~/Library/Application Support/Claude/claude_desktop_config.json):
json
{
  "mcpServers": {
    "oorlogsbronnen-server": {
      "command": "node",
      "args": [
        "/absolute/path/to/oorlogsbronnen-mcp/dist/mcp-server.js"
      ]
    }
  }
}

Replace /absolute/path/to/oorlogsbronnen-mcp with the actual path to your installation.

Usage Examples

The MCP server understands natural language queries and can help you explore World War II archives. Here are some example queries you can use with Claude:

Basic Searches

  • "Use search_ww2_nl_archives to find documents about the resistance movement in Amsterdam"
  • "Search the Dutch WW2 archives for information about Jewish refugees in 1942"
  • "Look through the Netherlands war archives for records of Allied bombing raids"

Filtering by Type

  • "Use search_ww2_nl_archives to show me photographs of the liberation of Rotterdam"
  • "Find personal accounts in the Dutch WW2 archives about life in concentration camps"
  • "Search the Netherlands war archives for newspaper articles about food shortages"

Specific Queries

  • "Search the Dutch WW2 archives for documents about Anne Frank's time in Amsterdam"
  • "Use search_ww2_nl_archives to find records of the February Strike of 1941"
  • "Look through the Netherlands war archives for information about Operation Market Garden"

Research Examples

  1. Personal History Research:

    Use search_ww2_nl_archives to find any records or documents about the Rosenberg family in Amsterdam between 1940-1945
    
  2. Local History:

    Search the Dutch WW2 archives for photographs and documents about daily life in Utrecht during the occupation
    
  3. Military Operations:

    Use search_ww2_nl_archives to find firsthand accounts and official reports about the Battle of the Scheldt
    

Advanced Usage

You can combine different search criteria:

Search the Netherlands WW2 archives for photographs and personal accounts of the Dutch famine in 1944-1945, limit to 20 results

API Reference

The server exposes the following MCP tool:

search_ww2_nl_archives

A powerful search tool designed to query the Oorlogsbronnen (War Sources) database for World War II related content in the Netherlands. This tool can be used to find historical documents, photographs, personal accounts, and other archival materials from 1940-1945.

When to use this tool:

  • Searching for specific historical events during WWII in the Netherlands
  • Finding information about people, places, or organizations during the war
  • Locating photographs or documents from specific time periods or locations
  • Researching personal or family history related to WWII
  • Finding primary sources about the Dutch resistance, occupation, or liberation
  • Discovering materials about Jewish life and persecution during the war
  • Researching military operations that took place in the Netherlands

Parameters:

  • query (required):

    • Type: string
    • Description: The main search term or phrase to look for in the archives
    • Can include: names, places, dates, events, or descriptive terms
    • Examples:
      • "Anne Frank"
      • "Rotterdam bombing 1940"
      • "Dutch resistance Amsterdam"
      • "Jewish deportation Westerbork"
      • "Operation Market Garden"
  • type (optional):

    • Type: string
    • Description: Filter results by specific content type
    • Available types:
      • "person": Individual biographical records
      • "photo": Historical photographs
      • "article": News articles and written documents
      • "video": Video footage
      • "object": Physical artifacts and objects
      • "location": Places and geographical records
      • "book": Published books, memoirs, and monographs
    • Use when: You need to focus on specific types of historical materials
    • Default: All types included
  • count (optional):

    • Type: number
    • Description: Number of results to return in the response
    • Minimum: 1
    • Maximum: 100
    • Default: 10
    • Use when: You need to control the volume of returned results
    • Note: Larger numbers will provide more comprehensive results but may take longer to process

Response Format:

json
{
  "results": [
    {
      "id": string,          // Unique identifier for the record
      "title": string,       // Title or name of the item
      "type": string,        // Content type (person, photo, article, etc.)
      "description": string, // Detailed description (if available)
      "url": string         // Direct link to view the item on Oorlogsbronnen
    }
  ]
}

Example Queries and Their Tool Calls:

  1. Basic Historical Search:
typescript
{
  query: "February Strike 1941",
  type: "article",
  count: 5
}
  1. Person Research:
typescript
{
  query: "Rosenberg family Amsterdam Jewish",
  type: "person",
  count: 20
}
  1. Photo Collection Search:
typescript
{
  query: "liberation celebrations Amsterdam Dam Square 1945",
  type: "photo",
  count: 15
}

Error Handling:

  • The tool will return an error message if:
    • The query is empty or contains invalid characters
    • The specified type is not supported
    • The count is outside the valid range (1-100)
    • The API is temporarily unavailable
    • Rate limits are exceeded

Best Practices:

  1. Start with broader searches and narrow down with specific terms
  2. Use location names to focus on specific areas
  3. Include dates when searching for specific events
  4. Combine person names with locations for family research
  5. Use type filtering to focus on specific kinds of historical materials

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • Oorlogsbronnen for providing access to their valuable historical archives
  • The Model Context Protocol (MCP) community for enabling AI-powered interactions

Star History

Star History Chart

Repository Owner

r-huijts
r-huijts

User

Repository Details

Language TypeScript
Default Branch main
Size 169 KB
Contributors 1
License MIT License
MCP Verified Sep 2, 2025

Programming Languages

TypeScript
90.75%
JavaScript
9.25%

Tags

Join Our Newsletter

Stay updated with the latest AI tools, news, and offers by subscribing to our weekly newsletter.

We respect your privacy. Unsubscribe at any time.

Related MCPs

Discover similar Model Context Protocol servers

  • cloudflare/mcp-server-cloudflare

    cloudflare/mcp-server-cloudflare

    Connect Cloudflare services to Model Context Protocol (MCP) clients for AI-powered management.

    Cloudflare MCP Server enables integration between Cloudflare's suite of services and clients using the Model Context Protocol (MCP). It provides multiple specialized servers that allow AI models to access, analyze, and manage configurations, logs, analytics, and other features across Cloudflare's platform. Users can leverage natural language interfaces in compatible MCP clients to read data, gain insights, and perform automated actions on their Cloudflare accounts. This project aims to streamline the orchestration of security, development, monitoring, and infrastructure tasks through standardized MCP connections.

    • 2,919
    • MCP
    • cloudflare/mcp-server-cloudflare
  • quran-mcp-server

    quran-mcp-server

    MCP server to access Quran.com API with AI tool compatibility.

    quran-mcp-server exposes the Quran.com corpus and associated data through a Model Context Protocol (MCP) server generated from an OpenAPI specification. It provides tool endpoints for chapters, verses, translations, tafsirs, audio, languages, and more. The server is designed for seamless integration with large language models (LLMs) and AI tools, supporting both Docker and Node.js environments. Advanced logging features and flexible deployment options are included for debugging and development.

    • 49
    • MCP
    • djalal/quran-mcp-server
  • mcp-open-library

    mcp-open-library

    Model Context Protocol server for accessing Open Library book and author data.

    Provides an implementation of a Model Context Protocol (MCP) server to enable AI assistants and clients to search and retrieve book and author information from the Open Library API. Supports searching by title, author name, and various identifiers, as well as fetching author photos and book covers. Returns structured, machine-readable data suitable for AI model context integration. Offers installation via Smithery, manual setup, and Docker deployment.

    • 34
    • MCP
    • 8enSmith/mcp-open-library
  • mcpmcp-server

    mcpmcp-server

    Seamlessly discover, set up, and integrate MCP servers with AI clients.

    mcpmcp-server enables users to discover, configure, and connect MCP servers with preferred clients, optimizing AI integration into daily workflows. It supports streamlined setup via JSON configuration, ensuring compatibility with various platforms such as Claude Desktop on macOS. The project simplifies the connection process between AI clients and remote Model Context Protocol servers. Users are directed to an associated homepage for further platform-specific guidance.

    • 17
    • MCP
    • glenngillen/mcpmcp-server
  • mcp

    mcp

    Universal remote MCP server connecting AI clients to productivity tools.

    WayStation MCP acts as a remote Model Context Protocol (MCP) server, enabling seamless integration between AI clients like Claude or Cursor and a wide range of productivity applications, such as Notion, Monday, Airtable, Jira, and more. It supports multiple secure connection transports and offers both general and user-specific preauthenticated endpoints. The platform emphasizes ease of integration, OAuth2-based authentication, and broad app compatibility. Users can manage their integrations through a user dashboard, simplifying complex workflow automations for AI-powered productivity.

    • 27
    • MCP
    • waystation-ai/mcp
  • Didn't find tool you were looking for?

    Be as detailed as possible for better results