Skip to main content

uefnmcp-connector

A local MCP server that grounds your AI assistant in the hosted Verse Cortex knowledge base — Epic's full UEFN documentation plus the Verse API index — through the metered verseisland.com gateway.

Plug it into Claude Desktop, Cursor, or Claude Code with your API key and your AI can now answer UEFN / Verse questions from real, current Epic docs and the indexed Verse API instead of guessing from stale training data. The KB grounding is the whole point: local models are routinely wrong about Verse syntax and API names — these tools fix that.

Tools it exposes

MCP tool What it does Gateway tool
verse_kb_search Semantic search over Epic UEFN docs + the Verse API search_verse_kb
verse_api_search Look up a Verse/Fortnite API symbol by name search_verse_api
verse_symbol Full signature + doc-comment for one symbol get_verse_symbol
verse_health Gateway / backend health probe health_check

Each call goes through the metered gateway: it authenticates your key, enforces your tier's daily limits, meters usage, and returns ranked KB results. The connector never touches the vector DB or the embedding server directly.

Install

pip install uefnmcp-connector

or run it without installing, straight from PyPI, via uvx:

uvx uefnmcp-connector            # one-off run, no install

Get an API key

  1. Sign in at https://verseisland.com (Discord or email — free during beta).
  2. Go to https://verseisland.com/me/api-keys.
  3. Click Create key, copy the uefn_sk_... value — it's shown once.

Configure your MCP client

The connector reads two environment variables:

Variable Default Required
VERSEISLAND_API_KEY yes (for KB tools)
VERSEISLAND_GATEWAY_URL https://verseisland.com/mcp-api no
VERSEISLAND_TIMEOUT 30 (seconds) no

Claude Code (CLI)

One paste:

claude mcp add uefnmcp \
  --env VERSEISLAND_API_KEY=uefn_sk_your_key_here \
  -- uefnmcp-connector

Claude Desktop

Edit claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):

{
  "mcpServers": {
    "uefnmcp": {
      "command": "uefnmcp-connector",
      "env": {
        "VERSEISLAND_API_KEY": "uefn_sk_your_key_here"
      }
    }
  }
}

If uefnmcp-connector isn't on your PATH, use the module form: "command": "python", "args": ["-m", "uefnmcp_connector"] (or "command": "uvx", "args": ["uefnmcp-connector"]).

Cursor

Add to ~/.cursor/mcp.json (or .cursor/mcp.json in a project):

{
  "mcpServers": {
    "uefnmcp": {
      "command": "uefnmcp-connector",
      "env": {
        "VERSEISLAND_API_KEY": "uefn_sk_your_key_here"
      }
    }
  }
}

Restart the client. Ask it something like "search the Verse KB for how to spawn a prop" and it will call verse_kb_search.

Tiers

Free during the beta-launch window (all tiers unlocked, no card). Beta signups lock the founder rate for 12 months.

Tier Price verse_kb_search / verse_api_search verse_symbol
Free $0 200 / day 100 / day
Pro $19/mo (founder $12) 2,000 / day 1,000 / day
Studio $59/mo (founder $39) unlimited unlimited

verse_health is always unlimited. Premium compile/build credit tools (compile_verse, compile_and_fix, …) land in a later release behind the same gateway. Manage keys and see usage at https://verseisland.com/me/api-keys.

Composing with uefn-mcp (local UEFN drive)

This connector is the KB-grounding half. To also drive UEFN — compile Verse, build, place actors on your own machine — pair it with a local UEFN driver server (uefn-mcp, distributed separately), which talks to your local UEFN build setup over Node. Add both servers to your client:

{
  "mcpServers": {
    "uefnmcp": {
      "command": "uefnmcp-connector",
      "env": { "VERSEISLAND_API_KEY": "uefn_sk_..." }
    },
    "uefn-mcp": {
      "command": "node",
      "args": ["/path/to/uefn-mcp/dist/index.js"]
    }
  }
}

Your AI then grounds its Verse in the hosted KB (verse_* tools here) and compiles/runs it locally (uefn-mcp tools) — the full write → ground → compile loop, with the cloud KB doing the heavy lifting and your machine doing the build. (Hosted compile credits via the gateway are on the roadmap; until then, compile stays local via uefn-mcp.)

Development / local testing

pip install -e .
# Point at a local gateway instead of prod:
VERSEISLAND_GATEWAY_URL=http://localhost:3101/mcp-api \
VERSEISLAND_API_KEY=uefn_sk_... \
  uefnmcp-connector            # serves MCP over stdio

A standalone smoke test (no MCP client needed) lives in smoke_test.py.

License

Apache-2.0.

Download files

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

Source Distribution

uefnmcp_connector-0.1.1.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

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

uefnmcp_connector-0.1.1-py3-none-any.whl (8.6 kB view details)

Uploaded Python 3

File details

Details for the file uefnmcp_connector-0.1.1.tar.gz.

File metadata

  • Download URL: uefnmcp_connector-0.1.1.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for uefnmcp_connector-0.1.1.tar.gz
Algorithm Hash digest
SHA256 7af369a508e20780199ea1b2eb35da6358b319a1aeab2693e67d2cad2665ea18
MD5 12b1bdbd04e35414a9890619ec91ae4f
BLAKE2b-256 e2f756ce8e4e738c144379aeb329301c6777b82609661b473c75806169d9c7e5

See more details on using hashes here.

File details

Details for the file uefnmcp_connector-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for uefnmcp_connector-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 284386bf606005a3cbad38d2f031851a463a3970e15e611aa67c931385448aef
MD5 a74054815169429cb4a6bd5fc9c8820c
BLAKE2b-256 ea8adaf78726c4ddfb2e7f94204e23c1b7b39fdda62b7eb64a72ea6840af3bef

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 files

0.1.0

2 files

Supported by

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