Get the FREE Ultimate OpenClaw Setup Guide →

hr

Microsoft HR MCP Server sample with Azure Container Apps deployment

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio fabianwilliams-hr-mcp-server npx -y mcp-remote https://hr-mcp-server.jollyflower-9d7ab707.eastus2.azurecontainerapps.io

How to use

The HR MCP Server provides a persistent, Azure-backed Model Context Protocol service for managing HR candidates. It exposes a set of MCP endpoints over HTTP that allow clients to list, search, add, update, and remove candidate records, with all data stored in Azure Table Storage for durability across container restarts and deployments. This server is designed to work with MCP clients such as Claude Desktop, MCP Inspector, and Copilot Studio, enabling real-time collaboration and cross-platform access to the same persistent dataset. You can connect to the server using the provided endpoint and interact with the available tools through MCP-compatible clients. The built-in persistence ensures that candidate information remains intact across sessions and deployments, making it suitable for production workloads that require concurrent access from multiple clients.

How to install

Prerequisites:

  • .NET 8 SDK installed on your machine
  • Access to Azure Table Storage or a local development substitute
  • Git installed

Local development setup:

  1. Clone the repository git clone https://github.com/fabianwilliams/hr-mcp-server.git cd hr-mcp-server

  2. Restore and build dotnet restore dotnet build

  3. Configure environment for local run

    • Ensure TABLE_STORAGE_CONN_STRING is set to your Azure Storage connection string. Example: export TABLE_STORAGE_CONN_STRING="DefaultEndpointsProtocol=https;AccountName=...;AccountKey=...;EndpointSuffix=core.windows.net"
  4. Run the server locally dotnet run

    The server will be available at http://localhost:5000

Optional: If you want to run via a container or remote deployment, follow your preferred deployment method and ensure the TABLE_STORAGE_CONN_STRING variable is provided in that environment.

Additional notes

Notes and tips:

  • Environment variable TABLE_STORAGE_CONN_STRING is required for Azure Table Storage persistence. Ensure it is accessible by the runtime environment.
  • The server exposes these MCP tools: list_candidates, search_candidates, add_candidate, update_candidate, remove_candidate. Client implementations may expose equivalents via MCP streams.
  • If you encounter connectivity issues from Copilot Studio or Claude Desktop, verify that the host URL is reachable and that any firewall or NAT settings allow MCP streaming traffic.
  • For local testing, you can seed initial data in Azure Table Storage or rely on automatic data seeding on first run, depending on your deployment configuration.
  • When deploying to Azure Container Apps or similar, ensure the TABLE_STORAGE_CONN_STRING is supplied as an environment variable in the container configuration.

Related MCP Servers

Sponsor this space

Reach thousands of developers