Public APIs

Public APIs

zazencodes

Searches a catalog of free public APIs using natural language queries and provides detailed metadata including authentication and CORS requirements.

Provides semantic search across a curated catalog of free public APIs using embedding-based natural language queries to help developers discover APIs by use case, retrieve detailed metadata including authentication and CORS requirements, and match requirements to available capabilities.

6262 views4Local (stdio)

What it does

  • Search public APIs using semantic queries
  • Get detailed API metadata by ID
  • Browse authentication requirements
  • Check CORS support status
  • Discover APIs by use case

Best for

Developers looking for APIs to integrateFinding alternatives to paid API servicesAPI discovery for prototyping projects
Semantic search with embeddingsCovers extensive public APIs catalogNo API key required

About Public APIs

Public APIs is a community-built MCP server published by zazencodes that provides AI assistants with tools and capabilities via the Model Context Protocol. Discover free APIs with semantic search across a curated catalog. Find APIs by use case, retrieve metadata, and explore It is categorized under search web. This server exposes 2 tools that AI clients can invoke during conversations and coding sessions.

How to install

You can install Public APIs in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

License

Public APIs is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

Tools (2)

search_public_apis

Search for free public APIs that match the input query string.

get_public_api_details

Get detailed information about a specific API by its unique public-apis-mcp server ID

Public APIs MCP

Catalog of free public APIs with semantic search.

The catalog includes an extensive list of APIs from the public-apis GitHub repo.
Thank you to all the maintainers, contributors and API creators! ๐Ÿ’ฏ

๐ŸŽฏ Features

  • search_public_apis: embedding-based search over API names and descriptions
  • get_public_api_details: retrieve full details by id
  • Resources: public-apis://apis, public-apis://api/{id}

๐Ÿ”ง Setup (uv)

Add to MCP clients (e.g., Claude Desktop) using uv.

Claude Desktop

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "public-apis": {
      "command": "uvx",
      "args": ["public-apis-mcp"]
    }
  }
}

๐Ÿš€ Usage

  • Build embeddings index (optional; auto-build on first search):
uvx public-apis-mcp build-index
  • Run the MCP server over STDIO:
uvx public-apis-mcp run

๐Ÿ“‹ Tool Reference

search_public_apis

  • Purpose: Semantic search over the catalog
  • Parameters: query (str), limit (int, default 5)
  • Returns: list of { id, name, score, snippet }

Example call payload:

{ "name": "search_public_apis", "arguments": { "query": "weather", "limit": 5 } }

get_public_api_details

  • Purpose: Fetch full details by id
  • Parameters: id (str)
  • Returns: ApiItem

Example call payload:

{ "name": "get_public_api_details", "arguments": { "id": "a6b3a6b3-a6b3-a6b3-a6b3-a6b3a6b3a6b3" } }

๐Ÿ› ๏ธ Development

Prerequisites:

  • Python 3.10+
  • uv (https://docs.astral.sh/uv/)

Setup:

uv sync --dev

Run tests:

FREE_APIS_MCP_TEST_MODE=1 uv run pytest -q

Lint and format:

uv run ruff check --fix
uv run ruff format

Type checking:

uv run mypy src/

MCP Client Dev Config

{
  "mcpServers": {
    "public-apis-dev": {
      "command": "uv",
      "args": [
        "--directory",
        "<abs_path>/public-apis-mcp",
        "run",
        "public-apis-mcp"
      ]
    }
  }
}

Build and Try

uv build
uv run --with dist/*.whl public-apis-mcp --help

๐Ÿ“ฆ Data & Index

  • Data: src/public_apis_mcp/datastore/free_apis.json
  • Embedding index: src/public_apis_mcp/datastore/index.npz (auto-built)

Testing with MCP Inspector

For exploring and/or developing this server, use the MCP Inspector npm utility:

# Install MCP Inspector
npm install -g @modelcontextprotocol/inspector

# Run local development server with the inspector
npx @modelcontextprotocol/inspector uv run public-apis-mcp

# Run PyPI production server with the inspector
npx @modelcontextprotocol/inspector uvx public-apis-mcp

๐Ÿ“ License

MIT License - see LICENSE file for details.

๐Ÿค Contributing

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

Alternatives

Related Skills

Browse all skills