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.

6267 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
jina-ai

Use Jina AI APIs for converting URLs to LLM-friendly Markdown (Reader) and searching the web (Search).

10
sponge-wallet

Manages crypto wallets, transfers tokens, swaps on DEXes, checks balances, and accesses paid APIs (search, image gen, prediction markets, web scraping, document parsing, sales prospecting) via x402 micropayments. Use when the user asks about wallet balances, token transfers, swaps, blockchain payments, or paid API services.

2
appdeploy

Deploy web apps with backend APIs, database, and file storage. Use when the user asks to deploy or publish a website or web app and wants a public URL. Uses HTTP API via curl.

1
research-external

External research workflow for docs, web, APIs - NOT codebase exploration

1
people-research

People research using Exa search. Finds LinkedIn profiles, professional backgrounds, experts, team members, and public bios across the web. Use when searching for people, finding experts, or looking up professional profiles.

1
openclaw-feeds

RSS news aggregator. Fetches headlines from curated feeds across three categories: news, games, and finance. Use when the user asks about current news, headlines, what's happening, what's going on, or says "what's up in news", "what's up in finance", "what's up in games", or the German equivalents "was geht mit nachrichten", "was geht mit money", "was geht mit gaming". Also activates for requests like "give me a news rundown", "latest headlines", "market news", "gaming news", "tech news", "finance roundup", or "briefing". Returns structured JSON from public RSS feeds β€” no API keys, no web search needed.

0