Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog
Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

AllMCPs on GitHub (opens in a new tab)
Launched onTiny Startupstinystartups.com
Explore
  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Random discovery New
  • Submit a server
  • Pricing & Boost Boost
Learn
  • Guides hub
  • What is MCP?
  • Install guide
  • Build an MCP server
  • Deploy an MCP server
  • Security guide
  • Troubleshooting
  • MCP for SEO & AEO
  • Protocol versioning
  • Transports: stdio vs HTTP
  • State of MCP (stats)
  • Blog & updates
Tools
  • All developer tools
  • Config generator
  • Config validator
  • Config auditor
  • MCP playground
  • Token calculator
  • OpenAPI โ†’ MCP
  • Badge generator
For agents
  • REST API docs
  • Trust & traffic Live
  • Remote MCP server SSE โ†— (opens in a new tab)
  • llms.txt โ†— (opens in a new tab)
  • Catalog JSON โ†— (opens in a new tab)
Company
  • About
  • Advertise Sponsor
  • Contact
  • GitHub โ†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZoneAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZone
ยฉ 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. ๐Ÿ’ป Developer Tools
  3. HAL
HAL logo
Health: ActiveRecent health check succeeded.Last checked 9/22/2026, 1:47:15 PM

HAL

User RatingsBe the first to rate and review this MCP server!
View Repository38 GitHub StarsTotal stargazers on GitHub for the source repository (38 stars).Visit Website
httpopenapiapisecretsdeveloper-tools

MCP server for making controlled HTTP requests, managing secrets, and generating tools from OpenAPI specifications.

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent โ€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
Automated check passedโ€” started and listed 8 tools correctly (1d ago).
Manual Client & Custom JSON ConfigExpand JSON โ–พ

Client Config & Setup

Configure Environment Variables (API Keys, Tokens, Options):
Add required secrets below โ€” values are included directly in the generated snippet so you can copy and paste with confidence.
Quick Add:
Choose your client or environment
Target File:~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "hal": {
      "command": "npx",
      "args": [
        "-y",
        "hal-mcp"
      ],
      "env": {
        "HAL_SWAGGER_FILE": "YOUR_VALUE_HERE",
        "HAL_API_BASE_URL": "YOUR_VALUE_HERE",
        "HAL_WHITELIST_URLS": "YOUR_VALUE_HERE",
        "HAL_BLACKLIST_URLS": "YOUR_VALUE_HERE"
      }
    }
  }
}

๐Ÿ’ก Paste the JSON block into your client's configuration file under mcpServers, then restart the application.

Install Tool Schemas (8) Directory Badge Claim listing Alternatives๐Ÿ’ป More in Developer Tools

Overview

HAL lets MCP-compatible clients call HTTP APIs through GET, POST, PUT, PATCH, DELETE, OPTIONS, and HEAD requests. It supports environment-based secret substitution with automatic redaction, URL restrictions, and optional tool generation from OpenAPI or Swagger files. Use it when an AI agent needs controlled access to web APIs.

Use cases

โ€ขCall REST endpoints from an MCP-compatible client
โ€ขGenerate MCP tools from an OpenAPI or Swagger specification
โ€ขInject API keys and credentials into requests without exposing them to the AI
โ€ขRestrict requests with URL allowlists and blocklists
โ€ขInspect API responses through a self-documenting HTTP interface

Key features

โ€ขHTTP GET, POST, PUT, PATCH, DELETE, OPTIONS, and HEAD requests
โ€ขOpenAPI and Swagger tool generation
โ€ขEnvironment-based secret substitution with {secrets.key} syntax
โ€ขAutomatic redaction of secrets in responses and errors
โ€ขURL allowlists and blocklists
โ€ขBuilt-in API documentation

Capabilities & Tool Schemas (8) ~937 tokensApproximate context cost of this serverโ€™s tool schemas (~4 chars/token), before any tool is called. Actual usage depends on your client and model.Verified live Verified liveCaptured by calling this serverโ€™s live tools/list endpoint.

Inspect callable tools, capabilities, and parameters exposed to AI agents by HAL.

http-get

Make an HTTP GET request to a specified URL. Supports secret substitution using {secrets.key} syntax where 'key' corresponds to HAL_SECRET_KEY environment variables.

http-post

Make an HTTP POST request to a specified URL with optional body and headers. Supports secret substitution using {secrets.key} syntax in URL, headers, and body where 'key' corresponds to HAL_SECRET_KEY environment variables.

http-put

Make an HTTP PUT request to a specified URL with optional body and headers. Supports secret substitution using {secrets.key} syntax in URL, headers, and body where 'key' corresponds to HAL_SECRET_KEY environment variables.

http-patch

Make an HTTP PATCH request to a specified URL with optional body and headers. Supports secret substitution using {secrets.key} syntax in URL, headers, and body where 'key' corresponds to HAL_SECRET_KEY environment variables.

http-delete

Make an HTTP DELETE request to a specified URL with optional headers. Supports secret substitution using {secrets.key} syntax in URL and headers where 'key' corresponds to HAL_SECRET_KEY environment variables.

http-head

Make an HTTP HEAD request to a specified URL with optional headers (returns only headers, no body). Supports secret substitution using {secrets.key} syntax in URL and headers where 'key' corresponds to HAL_SECRET_KEY environment variables.

Documentation Overview

MCP Badge

HAL (HTTP API Layer)

HAL is a Model Context Protocol (MCP) server that provides HTTP API capabilities to Large Language Models. It allows LLMs to make HTTP requests and interact with web APIs through a secure, controlled interface. HAL can also automatically generate tools from OpenAPI/Swagger specifications for seamless API integration.

Documentation

Complete Documentation โ†’

Visit our comprehensive documentation site for detailed guides, examples, and API reference.

Features

  • HTTP GET/POST/PUT/PATCH/DELETE/OPTIONS/HEAD Requests: Fetch and send data to any HTTP endpoint
  • Secure Secret Management: Environment-based secrets with {secrets.key} substitution and automatic redaction
  • Swagger/OpenAPI Integration: Automatically generate tools from API specifications
  • Built-in Documentation: Self-documenting API reference
  • Secure: Runs in isolated environment with controlled access
  • Fast: Built with TypeScript and optimized for performance

Usage

HAL is designed to work with MCP-compatible clients. Here are some examples:

Basic Usage (Claude Desktop)

Add HAL to your Claude Desktop configuration (npx will automatically install and run HAL):

config.json
{
  "mcpServers": {
    "hal": {
      "command": "npx",
      "args": ["hal-mcp"]
    }
  }
}

With Swagger/OpenAPI Integration and Secrets

To enable automatic tool generation from an OpenAPI specification and use secrets:

config.json
{
  "mcpServers": {
    "hal": {
      "command": "npx",
      "args": ["hal-mcp"],
      "env": {
        "HAL_SWAGGER_FILE": "/path/to/your/openapi.json",
        "HAL_API_BASE_URL": "https://api.example.com",
        "HAL_SECRET_API_KEY": "your-secret-api-key",
        "HAL_SECRET_USERNAME": "your-username",
        "HAL_SECRET_PASSWORD": "your-password"
      }
    }
  }
}

URL-based Configuration

You can also load OpenAPI specs directly from URLs:

config.json
{
  "mcpServers": {
    "hal": {
      "command": "npx",
      "args": ["hal-mcp"],
      "env": {
        "HAL_SWAGGER_FILE": "/swagger/v1/swagger.json",
        "HAL_API_BASE_URL": "http://localhost:5065",
        "HAL_SECRET_API_KEY": "your-secret-api-key"
      }
    }
  }
}

Direct Usage

bash
# Start the HAL server with default tools
npx hal-mcp

# Or with Swagger/OpenAPI integration
HAL_SWAGGER_FILE=/path/to/api.yaml HAL_API_BASE_URL=https://api.example.com npx hal-mcp

# Or load from URL
HAL_SWAGGER_FILE=/swagger/v1/swagger.json HAL_API_BASE_URL=http://localhost:5065 npx hal-mcp

Configuration

HAL supports the following environment variables:

  • HAL_SWAGGER_FILE: Path or URL to OpenAPI/Swagger specification file (JSON or YAML format). Can be:
    • Local file path: /path/to/api.yaml
    • Full URL: https://api.example.com/swagger.json
    • Relative path: /swagger/v1/swagger.json (combined with HAL_API_BASE_URL)
  • HAL_API_BASE_URL: Base URL for API requests (overrides the servers specified in the OpenAPI spec)
  • HAL_SECRET_*: Secret values for secure substitution in requests (e.g., HAL_SECRET_TOKEN=abc123)
  • HAL_ALLOW_*: URL restrictions for namespaced secrets (e.g., HAL_ALLOW_MICROSOFT="https://azure.microsoft.com/*")
  • HAL_WHITELIST_URLS: Comma-separated list of URL patterns that are allowed (if set, only these URLs are permitted)
  • HAL_BLACKLIST_URLS: Comma-separated list of URL patterns that are blocked (if set, these URLs are denied)

Secret Management

HAL provides secure secret management to keep sensitive information like API keys, tokens, and passwords out of the conversation while still allowing the AI to use them in HTTP requests.

How It Works

  1. Environment Variables: Define secrets using the HAL_SECRET_ prefix:

    bash
    HAL_SECRET_API_KEY=your-secret-api-key
    HAL_SECRET_TOKEN=your-auth-token
    HAL_SECRET_USERNAME=your-username
    
  2. Template Substitution: Reference secrets in your requests using {secrets.key} syntax:

    • URLs: https://api.example.com/data?token={secrets.token}
    • Headers: {"Authorization": "Bearer {secrets.api_key}"}
    • Request Bodies: {"username": "{secrets.username}", "password": "{secrets.password}"}
  3. Security: The AI never sees the actual secret values, only the template placeholders. Values are substituted at request time.

Automatic Secret Redaction

HAL automatically redacts secret values from all responses sent back to the AI, providing an additional layer of security against credential exposure.

How It Works

  1. Secret Tracking: HAL maintains a registry of all secret values from environment variables
  2. Response Scanning: All HTTP responses (headers, bodies, error messages) are scanned for secret values
  3. Automatic Replacement: Any occurrence of actual secret values is replaced with [REDACTED] before sending to the AI
  4. Comprehensive Coverage: Redaction applies to:
    • Error messages (including URL parsing errors that might expose credentials)
    • Response headers (in case APIs echo back authentication data)
    • Response bodies (protecting against API responses that might include sensitive data)
    • All other text returned to the AI

Example Protection

Before (vulnerable):

Code
Error: Request cannot be constructed from a URL that includes credentials: 
https://65GQiI8-1JCOWV1KAuYr0g:-VOIfpydl2GWfucCdEJ1BJ2vrsJyjQ@www.reddit.com/api/v1/access_token

After (secure):

Code
Error: Request cannot be constructed from a URL that includes credentials: 
https://[REDACTED]:[REDACTED]@www.reddit.com/api/v1/access_token

This protection is automatic and requires no configuration - HAL will redact any secret values regardless of how they appear in responses, ensuring that even if an API or error message attempts to expose credentials, the AI never sees the actual values.

Namespaces and URL Restrictions

HAL supports organizing secrets into namespaces and restricting them to specific URLs for enhanced security:

Namespace Convention

Use - for namespace separators and _ for word separators within keys:

bash
# Single namespace
HAL_SECRET_MICROSOFT_API_KEY=your-api-key
# Usage: {secrets.microsoft.api_key}

# Multi-level namespaces
HAL_SECRET_AZURE-STORAGE_ACCESS_KEY=your-storage-key
HAL_SECRET_AZURE-COGNITIVE_API_KEY=your-cognitive-key
HAL_SECRET_GOOGLE-CLOUD-STORAGE_SERVICE_ACCOUNT_KEY=your-service-key
# Usage: {secrets.azure.storage.access_key}
# Usage: {secrets.azure.cognitive.api_key}
# Usage: {secrets.google.cloud.storage.service_account_key}

URL Restrictions

Restrict namespaced secrets to specific URLs using HAL_ALLOW_* environment variables:

bash
# Restrict Microsoft secrets to Microsoft domains
HAL_SECRET_MICROSOFT_API_KEY=your-api-key
HAL_ALLOW_MICROSOFT="https://azure.microsoft.com/*,https://*.microsoft.com/*"

# Restrict Azure Storage secrets to Azure storage endpoints
HAL_SECRET_AZURE-STORAGE_ACCESS_KEY=your-storage-key
HAL_ALLOW_AZURE-STORAGE="https://*.blob.core.windows.net/*,https://*.queue.core.windows.net/*"

# Multiple URLs are comma-separated
HAL_SECRET_GOOGLE-CLOUD_API_KEY=your-google-key
HAL_ALLOW_GOOGLE-CLOUD="https://*.googleapis.com/*,https://*.googlecloud.com/*"

How Parsing Works

Understanding how environment variable names become template keys:

Code
HAL_SECRET_AZURE-STORAGE_ACCESS_KEY
โ”‚         โ”‚              โ”‚
โ”‚         โ”‚              โ””โ”€ Key: "ACCESS_KEY" โ†’ "access_key" 
โ”‚         โ””โ”€ Namespace: "AZURE-STORAGE" โ†’ "azure.storage"
โ””โ”€ Prefix

Final template: {secrets.azure.storage.access_key}

Step-by-step breakdown:

  1. Remove HAL_SECRET_ prefix โ†’ AZURE-STORAGE_ACCESS_KEY
  2. Split on first _ โ†’ Namespace: AZURE-STORAGE, Key: ACCESS_KEY
  3. Transform namespace: AZURE-STORAGE โ†’ azure.storage (dashes become dots, lowercase)
  4. Transform key: ACCESS_KEY โ†’ access_key (underscores stay, lowercase)
  5. Combine: {secrets.azure.storage.access_key}

More Examples

bash
# Simple namespace
HAL_SECRET_GITHUB_TOKEN=your_token
โ†’ {secrets.github.token}

# Two-level namespace  
HAL_SECRET_AZURE-COGNITIVE_API_KEY=your_key
โ†’ {secrets.azure.cognitive.api_key}

# Three-level namespace
HAL_SECRET_GOOGLE-CLOUD-STORAGE_SERVICE_ACCOUNT=your_account
โ†’ {secrets.google.cloud.storage.service_account}

# Complex key with underscores
HAL_SECRET_AWS-S3_BUCKET_ACCESS_KEY_ID=your_id
โ†’ {secrets.aws.s3.bucket_access_key_id}

# No namespace (legacy style)
HAL_SECRET_API_KEY=your_key
โ†’ {secrets.api_key}

Visual Guide: Complete Flow

Code
Environment Variable          Template Usage                   URL Restriction
โ”œโ”€ HAL_SECRET_MICROSOFT_API_KEY    โ”œโ”€ {secrets.microsoft.api_key}    โ”œโ”€ HAL_ALLOW_MICROSOFT
โ”œโ”€ HAL_SECRET_AZURE-STORAGE_KEY    โ”œโ”€ {secrets.azure.storage.key}    โ”œโ”€ HAL_ALLOW_AZURE-STORAGE  
โ”œโ”€ HAL_SECRET_AWS-S3_ACCESS_KEY    โ”œโ”€ {secrets.aws.s3.access_key}    โ”œโ”€ HAL_ALLOW_AWS-S3
โ””โ”€ HAL_SECRET_UNRESTRICTED_TOKEN   โ””โ”€ {secrets.unrestricted.token}   โ””โ”€ (no restriction)

Security Benefits

  • Principle of Least Privilege: Secrets only work with their intended services
  • Prevents Cross-Service Leakage: Azure secrets can't be sent to AWS APIs
  • Defense in Depth: Even with AI errors or prompt injection, secrets are constrained
  • Clear Organization: Namespace structure makes secret management more intuitive

Real-World Usage Scenarios

Scenario 1: Multi-Cloud Application

bash
# Azure services
HAL_SECRET_AZURE-STORAGE_CONNECTION_STRING=DefaultEndpointsProtocol=https;...
HAL_SECRET_AZURE-COGNITIVE_SPEECH_KEY=abcd1234...
HAL_ALLOW_AZURE-STORAGE="https://*.blob.core.windows.net/*,https://*.queue.core.windows.net/*"
HAL_ALLOW_AZURE-COGNITIVE="https://*.cognitiveservices.azure.com/*"

Read the full README โ†’View source on GitHub โ†’

Related MCP Servers

View all in Developer Tools View all alternatives
  • Openapi MCP Server logoOpenapi MCP Server

    Connect any HTTP/REST API server using an Open API spec (v3)

    ๐Ÿ’ป Developer Tools3 views
    Compare vs Openapi MCP Server โ†’
  • MCP Graphql logoMCP Graphql

    Model Context Protocol server for GraphQL

    ๐Ÿ’ป Developer Tools3 views
    Compare vs MCP Graphql โ†’
  • Next Devtools MCP logoNext Devtools MCP
    Verified

    Official Next.js MCP server for coding agents. Provides runtime diagnostics, route inspection, dev server logs, docs search, and upgrade guides. Requires Next.js 16+ dev server for full runtime features.

    ๐Ÿ’ป Developer Tools5 views
    Compare vs Next Devtools MCP โ†’
  • MCP Server Docker logoMCP Server Docker

    Integrate with Docker to manage containers, images, volumes, and networks.

    ๐Ÿ’ป Developer Tools3 views
    Compare vs MCP Server Docker โ†’

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks โ€” not a rating.

GitHub stars
38
Stargazers on the source repository.
npm downloads
297
Package downloads in the last 30 days.
Last commit
11mo ago
Most recent push to the default branch.
Availability
100%
Our rolling endpoint + install checks that succeeded.
Install check
Passed
Our sandbox started it and listed its tools.
Tools exposed
8
Callable tools this server registers over MCP.
Directory activity
2 views
Config copies, upvotes, and views on AllMCPs.

Reviews

No reviews yet โ€” be the first to share how this listing worked for you.

Frequently Asked Questions about HAL

HAL supports GET, POST, PUT, PATCH, DELETE, OPTIONS, and HEAD requests.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewHAL AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/hal?style=directory)](https://allmcps.com/mcp/hal)
HTML Embed
<a href="https://allmcps.com/mcp/hal"><img src="https://allmcps.com/api/badge/hal?style=directory" alt="HAL on AllMCPs" /></a>

Technical Specs & Signals

Category๐Ÿ’ปDeveloper Tools
PricingFree
More technical detailsExpand โ–พ
TransportSTDIO
RuntimeNode.js
AuthNo auth required
ClientsClaude Desktop
Last updatedAug 12, 2026
4/4 checks healthy over the last 45d
Views2
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
GitHub stars38
GitHub Star CountTotal stargazers on GitHub representing community popularity (38 stars).
Last commit11mo ago
Last Repository CommitThe most recent commit or push recorded for this server's GitHub repository.Last commit on Oct 22, 2025
npm downloads297/mo
Monthly npm DownloadsAverage monthly package installs recorded from npm registry statistics.
71Quality signal: Great ยท 71/100How this signal is calculated โ–พ
Server availability25/25
Verified ownership10/20
Documentation & tools30/30
Adoption & activity6/15
Community engagement0/10

A guidance signal from public completeness & health data โ€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 2d ago via OSV.dev ยท hal-mcp (npm)

โ˜… FeaturedAllMCPs Server logo

AllMCPs Server

The official MCP server for AllMCPs.com - submit and manage tools directly from your AI. The open directory for MCP servers. Connect Claude, Cursor, Windsurf, and AI agents to databases, tools, files, and APIs. Explore 10,000+ servers. AllMCPs is the premier, open directory for discovering, evaluating, and installing Model Context Protocol (MCP) servers to equip AI agents and LLMs with real-world superpowers.

Explore Server โ†’

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to unlock edit access and the Official badge โ€” proof is checked automatically, then reviewed by our team.

Free dofollow backlink: add your website and place the AllMCPs badge on it โ€” no claim needed. We detect it automatically and keep it verified as long as the badge stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in ๐Ÿ’ป Developer Tools โ†’Best MCP servers for Developers โ†’Alternatives to HAL โ†’Install in Claude DesktopInstall in CursorInstall in VS CodeSetup guides for all 13 MCP clients