Install
pipx install awesome-okfWho it is for
- Developers or agent users who want an AI agent to query the OKF (Open Knowledge Format) resource catalog directly: the catalog includes OKF-related tools, plugins, skills, proposals, and documents.
- People already using an MCP-capable client who want programmatic search with tools such as
search_catalogandget_catalog_entry. - People who want to turn their own content into an OKF catalog (Markdown files + YAML frontmatter) and check it with
myokf validate.
When it is not a fit:
- Situations where you do not need OKF resource discovery or conversion and only want to query data in other domains.
- Direct editors of the README — official docs state that README*.md files are generated, must not be hand-edited, and you must change
data/catalog.yamlthen regenerate. - Points the official docs do not cover (such as the supported client list, the input-language range for conversion, or concrete system requirements) are not guessed here; they are marked unconfirmed.
First try in 3 minutes
Prerequisite: a local Python environment with pipx installed (the official install method). This is a Python-implemented CLI + MCP meta-server.
-
Install: run this in a terminal
pipx install awesome-okf -
Connect the agent: register the MCP server with your MCP client using the command
awesome-okf-server(the official note is "Connect it to your MCP client"; exact registration paths per client are not in the evidence, so follow your client documentation). -
Start a low-risk read-only task: tell the agent "use search_catalog to search the catalog for OKF tools and return the first few entries". The tool accepts query/kind/limit parameters, performs a catalog query, and does not write.
Success signal: the agent returns catalog entries (based on get_catalog_entry / list_catalog data) or catalog_stats totals — showing the meta-server is connected.
Note: the first try should only query. convert_to_okf and scripts/convert-to-okf.py create OKF catalog files and write to disk. Run them only after you confirm the target path and know they will produce Markdown + YAML frontmatter files.
Use cases
Case 1: Ask the agent to find OKF resources. Scenario: you want to see which tools or skills exist in the OKF ecosystem. Ask the connected agent: "use search_catalog, put your keywords in query, optionally filter by kind, and use limit for how many entries". The agent calls the meta-server search tool and returns matching tools/plugins/skills/proposals/documents; use catalog_stats for totals. This is query-only; the result is the catalog entries themselves.
Case 2: Turn existing content into an OKF catalog. Scenario: you have structured text (such as lists, JSON, key-value pairs, or URL lists) and want an agent-friendly knowledge format. Use scripts/convert-to-okf.py; its --format anything mode tries the parse chain (list → JSON → key-value → URLs → line-per-row) until one parser succeeds. What you can confirm: it produces a catalog of Markdown files with YAML frontmatter, which you can then check with myokf validate. Side effect: this step writes files to disk; conversion runs on a local engine. Confirm the output directory first. Not covered by evidence: whether calling the convert_to_okf MCP tool does the same conversion, and the exact error behavior when conversion fails.
Limits
- Do not edit README*.md directly: they are generated. To change entries, edit
data/catalog.yamland regenerate; official guidance requires entries to passawesome-okf validateand pytest before you send them. - Network/file access: conversion uses a local engine (extraction done by local engines only) and does not fetch from outside. Official docs do not describe the meta-server's own network behavior; mark that as unknown.
- Confirm first: any action that writes files (conversion, generation) should confirm the target path first. Query tools (search_catalog, list_catalog, get_catalog_entry, catalog_stats) read the catalog, but evidence is not strong enough for an absolute safety claim of "does not write files or run commands", so this page does not assert that.
- Runtime: a Python-implemented CLI and MCP meta-server installed via pipx; you need an MCP-capable client. Official docs do not name which MCP clients are supported.
- Unconfirmed: the supported natural-language range, per-client registration details, and system dependency versions are not in the official text. Read the latest repository docs before use.