Skip to main content

Standalone Hack Forums MCP launch surface

Project description

hf-mcp

hf-mcp is a standalone MCP server package for the Hack Forums API v2.

Product target

The product target is full documented Hack Forums API coverage, tracked in docs/coverage_matrix.md. Operator-facing truth today is split into two groups:

  • concrete shipped helpers: me.read, users.read, forums.read, threads.read, posts.read, bytes.read, contracts.read, disputes.read, bratings.read, sigmarket.market.read, sigmarket.order.read, admin.high_risk.read, threads.create, posts.reply, bytes.transfer, bytes.deposit, bytes.withdraw, bytes.bump
  • registry-shipped placeholder rows (documented coverage tracking, not live-write promises): contracts.write, sigmarket.write, admin.high_risk.write

Anchored browse contract after HFMCP-INT-03:

  • threads.read is forum-anchored (fid required, optional tid narrowing)
  • posts.read is thread-anchored (tid required, optional pid narrowing)

MCP tool outputs are JSON-first (dict payloads) today. Any future readable output must be additive and must not break existing JSON consumers.

Live testing boundary: no automated live writes. Manual live checks only on TID 6083735 or FID 375, ideally using one testing thread total.

Exposure model

Profiles and overlays are an exposure control layer for a specific user or deployment. They do not redefine product scope. If a deployment disables a row, that row still remains in the documented product coverage matrix.

Launch surface

  • console entrypoint: hf-mcp
  • module entrypoint: python -m hf_mcp
  • hf-mcp aliases hf-mcp serve (stdio runtime launch)
  • hf-mcp setup init creates first-run local config and prints the next commands
  • hf-mcp doctor validates local config/secrets/token readiness without network I/O
  • hf-mcp ships the mcp runtime dependency required for the stdio launch path
  • hf-mcp serve runs one stdio server instance and exits when the stdio client disconnects
  • hf-mcp serve fails closed on invalid bootstrap state (config/secrets/token/runtime dependency)

Config locations

Default local paths:

  • config file: ~/.config/hf_mcp/config.yaml
  • token store: ~/.config/hf_mcp/token.json

Environment loading behavior:

  • default .env discovery is adjacent to the selected config file path
  • set HF_MCP_ENV_FILE to use an explicit .env file path instead

Overrides:

  • HF_MCP_CONFIG overrides the config file location
  • HF_MCP_ENV_FILE overrides .env discovery path
  • HF_MCP_TOKEN_PATH overrides token path unless YAML token_path is set

See docs/configuration.md for authoritative resolution details. See docs/tool_overview.md for the grouped shipped tool surface.

First run

pip install hf-mcp
hf-mcp setup init

Set secrets in your local environment (.env or shell):

export HF_MCP_CLIENT_ID=your_client_id
export HF_MCP_CLIENT_SECRET=your_client_secret

Configure OAuth redirect handling in your local environment (.env or shell):

# Hosted mode (recommended): register your hosted callback page URL in HF app settings.
# Host the static artifact at docs/oauth_callback.html (for example via GitHub Pages).
export HF_MCP_EXTERNAL_REDIRECT_URI=https://cortalabs.github.io/hf_mcp/oauth_callback.html

# The hosted callback page forwards to this fixed local target:
# http://127.0.0.1:8765/callback

# Legacy fallback (loopback only): if hosted mode is not used, set this instead.
export HF_MCP_REDIRECT_URI=http://127.0.0.1:8765/callback

Finish local bootstrap and readiness checks:

hf-mcp auth bootstrap
hf-mcp doctor
hf-mcp serve

Source distribution boundary

MANIFEST.in defines a package-local source distribution boundary rooted in products/hf_mcp. The source distribution includes package docs, tests, and runtime source from this product subtree only.

Documentation

  • docs/configuration.md
  • docs/tool_overview.md
  • docs/coverage_matrix.md
  • docs/security_model.md
  • docs/export_boundary.md

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hf_mcp-0.1.4.tar.gz (53.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hf_mcp-0.1.4-py3-none-any.whl (33.6 kB view details)

Uploaded Python 3

File details

Details for the file hf_mcp-0.1.4.tar.gz.

File metadata

  • Download URL: hf_mcp-0.1.4.tar.gz
  • Upload date:
  • Size: 53.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for hf_mcp-0.1.4.tar.gz
Algorithm Hash digest
SHA256 1bdf479112e67aa68fa3fed7441a2efaca8f411c4bc3eb54bba9f5a1f5926d89
MD5 9c9a716599e7e8a082dcd7711d7aaf42
BLAKE2b-256 cb2772c2e7fdf9e054741b64e79b15b703bc206abb077f62502ac617b27cd289

See more details on using hashes here.

Provenance

The following attestation bundles were made for hf_mcp-0.1.4.tar.gz:

Publisher: publish-hf-mcp-pypi.yml on CortaLabs/hf_mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hf_mcp-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: hf_mcp-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 33.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for hf_mcp-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 9e492da42580aecf6aec6a38db5b2ff7f646f183ba67fbd43fb911ae8d70ee65
MD5 46bceed2eeef2cf4412113a34db925da
BLAKE2b-256 386597aca0c3db810016ec55d597e84bf0b88af3440da4ccf25b6239ad8fcf74

See more details on using hashes here.

Provenance

The following attestation bundles were made for hf_mcp-0.1.4-py3-none-any.whl:

Publisher: publish-hf-mcp-pypi.yml on CortaLabs/hf_mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page