MCP serverio.github.lonniev/excalibur-mcp
FastMCP server for posting formatted content to X (Twitter) — Tollbooth-monetized, DPYC-native
Overview
Score?
UNRATED 0.672
of what a free look can see, on 30 looks
Looks
35
last 14 hr ago
Tools
79
changed 4 days ago
More info
URL
excalibur-mcp.fastmcp.app/mcp
streamable-http
Says it is
eXcalibur 3.4.7
protocol 2025-06-18
In the record since
32 days ago
Among servers18,413 with a card
0median 0.606 · this server 0.672 · highest on record 0.8561
Toolsfrom sha256:03d4578238…253e51 · +0 −0 4 days ago
| Tool | Schema |
|---|---|
| excalibur_account_statement Generate a patron's account statement at this operator.
Returns the patron's purchase history, active credit tranches,
per-tool usage breakdown, and recent daily usage logs. This |
input · output |
| excalibur_account_statement_infographic Generate a visual SVG infographic of your account statement.
Returns the same data as account_statement, rendered as a dark-themed
SVG graphic with balance hero, metrics cards, he |
input · output |
| excalibur_adoption_status Check this operator's adoption-request status at a chosen Authority.
Free. Polls the Authority MCP-to-MCP for the status of this operator's
request (pending / approved / rejected |
input · output |
| excalibur_begin_oauth Start the OAuth2 authorization flow.
Returns an authorization URL. Open it in a browser to log in
and authorize. Then call ``check_oauth_status`` with the
same npub to complete. F |
input · output |
| excalibur_check_authority_balance Check this operator's tax balance at the Authority.
Returns the sats available for certifying patron credit purchases.
When this balance reaches zero, patron top-ups cannot be cer |
input · output |
| excalibur_check_balance Check a patron's credit balance at this operator.
This is the patron's spending balance — credits purchased via
Lightning for tool calls at this operator. For the operator's
own b |
input · output |
| excalibur_check_oauth_status Check whether the OAuth2 authorization flow has completed.
Call after opening the authorization URL from ``begin_oauth``
and completing the login in your browser. Free. Proof of n |
input · output |
| excalibur_check_payment Check the payment status of a Lightning invoice.
Call after paying the invoice from purchase_credits.
Free — no credits required. Proof of npub ownership is required
to prevent cr |
input · output |
| excalibur_check_price Preview the effective cost of a tool call.
Shows the base cost and any constraint effects (discounts, free
trials, surge pricing). Free — no credits required. |
input · output |
| excalibur_check_proof_status Check whether a proof grant is still valid.
Mirrors ``check_oauth_status`` for the npub-proof flow: a calling
agent can ask "will my next paid call accept this dpop_token?"
before |
input · output |
| excalibur_create_post Store a new post (draft or scheduled). Returns its ``post_id``. |
input · output |
| excalibur_delete_coupon Delete a coupon. Cascades to all patron redemptions.
Any chain step referencing the deleted coupon_id becomes a
no-op (the constraint returns neutral on unknown ids) — the
Studio |
input · output |
| excalibur_delete_operator_credential Remove a single operator secret field.
Deletes one key from the operator's encrypted credential blob without
touching the others — the field-level counterpart to
``forget_credenti |
input · output |
| excalibur_delete_patron_credential Remove a single patron credential field.
Deletes one field from stored credentials without affecting
other fields. Free. Proof of npub ownership is required —
this is a write to t |
input · output |
| excalibur_delete_post Delete a stored post. Default is a soft delete (``status='archived'``);
pass ``hard=True`` to remove the row permanently. |
input · output |
| excalibur_delete_snippet Delete one of your saved snippets by id. Free and owner-scoped. |
input · output |
| excalibur_fetch_dynamic_block Redeem a ``resolve_dynamic_block`` claim check (free, proof-gated).
Poll this with the ``claim_check`` from ``resolve_dynamic_block`` until
``status == "done"`` (the resolved frag |
input · output |
| excalibur_forget_coupon Remove a coupon from this patron's redemption list.
Cosmetic only — the coupon itself still exists at the operator,
and the patron can re-redeem the same code later while the
wind |
input · output |
| excalibur_forget_credentials Delete vaulted credentials for a specific service and npub.
For operator credentials, pass the operator's own npub. For patron
credentials, pass the patron's npub. Always requires |
input · output |
| excalibur_get_nostr_profile Read an npub's public Nostr profile (NIP-01 kind-0 metadata).
Free, no proof — the data is already public on relays. Returns the
latest metadata fields (name, display_name, about, |
input · output |
| excalibur_get_notarization_proof Generate a Merkle inclusion proof that a patron's balance was
included in a Bitcoin-notarized snapshot. |
input · output |
| excalibur_get_operator_onboarding_status Report this operator's configuration readiness.
Shows which operator settings are configured, which are missing,
and how to deliver each missing value. For patron-level credential |
input · output |
| excalibur_get_patron_credential_fields List stored patron credential field names (not values).
Returns the names of fields stored for a patron, plus each
field's ``delivered_at`` ISO-8601 timestamp when known (null
for |
input · output |
| excalibur_get_patron_onboarding_status Report a patron's credential readiness for this operator.
For set-once services (eXcalibur, TheBrain), shows which patron
secrets are configured and which are missing. For dynamic |
input · output |
| excalibur_get_post Read one stored post by id (owner-scoped). |
input · output |
| excalibur_get_post_metrics Patron: raw metrics snapshot series for one owned post.
Returns the append-only ``post_metrics_snapshot`` rows (impressions, likes,
clicks, cadence_key, t_offset, link_placement, |
input · output |
| excalibur_get_pricing_model Get the active pricing model for this operator. Free.
If no model exists, self-initializes a scaffold with all
registered tools at 0 sats. No economic data from code. |
input · output |
| excalibur_get_scheduler_log Read recent scheduler-tick outcomes.
Each ``process_scheduled_posts`` run — fired by the Cloudflare cron Worker or
a manual trigger — records its summary. This surfaces them so th |
input · output |
| excalibur_get_snippet Read one of your saved snippets by id (full row incl. ``doc`` block
document). Free and owner-scoped. Returns ``{"success": true, "snippet": …}``
or ``snippet_not_found``. |
input · output |
| excalibur_get_voice Read your saved writing Voice — a profile blurb plus a list of "banned
construction" chips (``{text, on}``) the editor passes to
``refine_post_region``. Owner-scoped; priced by the |
input · output |
| excalibur_get_x_profile Fetch the connected X account's handle and name for this patron (free).
Uses the patron's vaulted X OAuth token to call X's ``/users/me``. Returns
``{connected: true, username, na |
input · output |
| excalibur_harvest_metrics Operator-only: one cadence-aware metrics harvest sweep.
Drains due ``metrics_harvest_job`` rows (t+15m … t+28d), fetches X
``non_public_metrics`` / ``organic_metrics`` under each |
input · output |
| excalibur_list_canonical_identities Return canonical (tool_id, mcp_name, …) for every tool the wheel exposes.
The authoritative source for any client (Studio, agents, FE)
that needs to know how this MCP identifies i |
input · output |
| excalibur_list_constraint_types List all available constraint types and their parameter schemas.
Returns the type, category, description, and parameter specs for
every constraint that can be used in a pricing pi |
input · output |
| excalibur_list_coupons List every coupon this operator has minted (newest first).
Each row carries the current ``times_redeemed`` counter — the
Studio renders a progress bar from this against ``total_us |
input · output |
| excalibur_list_my_coupons List the coupons this patron has redeemed on this operator.
Returns both active and exhausted redemptions with a per-row
``status`` (``active`` / ``window_closed`` / ``patron_limi |
input · output |
| excalibur_list_notarizations List recent Bitcoin notarization records. |
input · output |
| excalibur_list_posts List your stored posts, server-side sorted, filtered, and offset-paginated.
Optional ``status`` filter — a single status or a comma-separated set
(e.g. ``draft,scheduled``), match |
input · output |
| excalibur_list_snippets List your saved post snippets, server-side sorted, filtered, and
offset-paginated. ``sort_col`` is one of ``favorite|created|updated|name``
(default ``favorite``); ``sort_dir`` is |
input · output |
| excalibur_mint_coupon Create a new operator-owned discount coupon. |
input · output |
| excalibur_notarize_ledger Build a Merkle tree of all patron balances and submit the root
to Bitcoin via OpenTimestamps.
Operator-only background task. Bitcoin confirmation takes 1-6 hours.
Free — no credit |
input · output |
| excalibur_oracle_about Describe the DPYC ecosystem via the Oracle. Free. |
input · output |
| excalibur_oracle_get_tax_rate Get the current DPYC certification tax rate. Free. |
input · output |
| excalibur_oracle_how_to_join Get DPYC onboarding instructions from the Oracle. Free. |
input · output |
| excalibur_oracle_lookup_member Look up a DPYC community member by npub. Free. |
input · output |
| excalibur_oracle_network_advisory Get active network advisories from the Oracle. Free. |
input · output |
| excalibur_post_nostr_message Publish a public Nostr note (kind 1) authored by your proven npub.
eXcalibur cannot sign a note *as* you — a Nostr event must be signed by the
key it claims to come from, and eXca |
input · output |
| excalibur_post_performance Patron: derived reach scores across your harvested post corpus.
Computes escape velocity (t+15m vs rolling median), breakout ratio
(final reach ÷ rolling-median final reach; suppr |
input · output |
| excalibur_post_performance_infographic Patron: SVG infographic of post performance (gold-steel theme).
Mirrors ``account_statement_infographic`` — a dark-themed SVG of corpus
size, median t+15m impressions, top posts, |
input · output |
| excalibur_post_tweet Post a text tweet with markdown formatting converted to Unicode rich text.
Accepts standard markdown inline formatting and converts it to Unicode
Mathematical Alphanumeric Symbols |
input · output |
| excalibur_post_tweet_image Post a tweet with a hero banner image to X/Twitter.
Provide either an image_url (fetched and attached) or banner_svg
(rendered to PNG and attached). Text supports the same markdow |
input · output |
| excalibur_process_scheduled_posts Launch a publisher for every due post (operator-only).
Selects ``scheduled`` posts whose ``publish_at`` has arrived, claims each
atomically, and starts one background publisher pe |
input · output |
| excalibur_publish_nostr_profile Publish a CLIENT-SIGNED kind-0 profile to relays for an npub.
The wheel never holds a patron nsec. The frontend signs the kind-0
metadata event with the patron's session key or a |
input · output |
| excalibur_purchase_credits Buy credits via Bitcoin Lightning.
Creates a Lightning invoice. Pay it with any Lightning wallet,
then call check_payment to confirm. Proof of npub ownership is
required so credit |
input · output |
| excalibur_receive_credentials Pick up credentials from the Secure Courier.
Completes the CREDENTIAL-DELIVERY flow (the ownership-proof
counterpart is ``receive_npub_proof``).
**Call this only after the user c |
input · output |
| excalibur_receive_npub_proof Receive npub ownership confirmation from a patron.
Completes the npub-OWNERSHIP-PROOF flow (the credential-delivery
counterpart is ``receive_credentials``).
**Call this only afte |
input · output |
| excalibur_redeem_coupon Claim a coupon by its name (the code the operator shared).
Looks up the operator's coupon by ``code``, validates the window
and total cap, and records a per-patron redemption row. |
input · output |
| excalibur_refine_post_region Refine a flagged region of a post with an LLM — server-side.
The operator's LLM key stays in the vault and never leaves the
server. Send the flagged ``region``, the surrounding `` |
input · output |
| excalibur_report_issue File a field report about this service as a GitHub issue on the operator's repo.
Found a tool's metadata or response wrong or confusing? Report it where the tool
lives. The **auth |
input · output |
| excalibur_request_adoption Ask a chosen Authority to adopt this operator (deferred courtship).
RESTRICTED to the operator — requires proof the caller controls this
operator's npub. Resolves the Authority's |
input · output |
| excalibur_request_credential_channel Open a Secure Courier channel for credential delivery.
This is the CREDENTIAL-DELIVERY flow — use it to hand over a service
secret (API keys, tokens). To merely prove you control |
input · output |
| excalibur_request_npub_proof Request npub ownership proof from a patron via Nostr DM.
This is the npub-OWNERSHIP-PROOF flow — use it when a call returns
``proof_required``. It proves the caller controls an np |
input · output |
| excalibur_reset_pricing_model Erase all pricing models and restore a viable default.
Deletes every stored model, then self-initializes a fresh one
from the tool registry — all tools at 0 sats with proper UUIDs |
input · output |
| excalibur_resolve_dynamic_block Start resolving a dynamic post block with an LLM — returns a CLAIM CHECK.
A dynamic block's ``prompt`` is run by the model (with web search + web fetch for
live data) and woven in |
input · output |
| excalibur_restore_credits Credit a patron's ledger from a BTCPay-settled invoice.
**RESTRICTED to the operator** — the operator owns the books and is
the only party who can issue a manual credit grant. Pat |
input · output |
| excalibur_restore_neon_schema Prepare this operator's database schema again, ignoring the breadcrumb.
Diagnostic / recovery tool for when Neon keeps answering 4xx and the
operator suspects a table or grant is |
input · output |
| excalibur_save_snippet Save a reusable post snippet (opening/footer/CTA). Omit ``snippet_id`` to
create a new one; pass it to update an existing snippet in place (name/text/
favorite/doc). On update only |
input · output |
| excalibur_save_voice Save your writing Voice (replaces the previous one — it is a per-npub
singleton). ``profile`` is free text. ``bans`` is a list of ``{text, on}``
objects: ``text`` is the constructi |
input · output |
| excalibur_scheduler_check_now Ask the scheduler to run one tick now (free; any proven patron).
Pokes the Worker's ``/tick`` — the same work the ~30-minute cron does: it
claims a pending proof reply (completing |
input · output |
| excalibur_scheduler_pending What is the scheduled-post cron Worker waiting on? (operator-only).
When the Worker's authorization lapses it DMs the operator a challenge
phrase and parks. This returns that pend |
input · output |
| excalibur_scheduler_reissue Send the scheduler's proof request again, now (operator-only).
For a pending request that is not going to complete — the reply went to an
older DM, or ``scheduler_pending`` shows |
input · output |
| excalibur_scheduler_status The scheduler's configuration and current status (free; any proven patron).
Relays the cron Worker's public ``/status`` — cadence, version, renewal
window, and current authorizati |
input · output |
| excalibur_service_status Check the health and configuration of this service. Free. |
input · output |
| excalibur_session_status Check operator readiness. Returns the operator lifecycle
state and clear guidance on what to do next. Free.
Lifecycle states:
- ready: Vault AND pricing model verified on this cal |
input · output |
| excalibur_set_pricing_model Set the active pricing model. RESTRICTED to operator.
Requires a valid proof (Schnorr-signed kind-27235 event)
proving the caller holds the operator's nsec. |
input · output |
| excalibur_update_coupon Patch a coupon's editable fields.
Pass only the fields you want to change. To set a cap to
unlimited (NULL in the schema), pass ``clear_uses_per_patron=true``
or ``clear_total_us |
input · output |
| excalibur_update_operator_credential Add or update a single operator secret field.
Merges into the operator's stored credentials without touching the
others — the field-level counterpart to re-delivering the whole
bu |
input · output |
| excalibur_update_patron_credential Add or update a single patron credential field.
Merges into existing stored credentials without affecting
other fields. Useful for setting an account identifier
after OAuth, chang |
input · output |
| excalibur_update_post Patch a stored post. ``patch`` may set ``doc, publish_at, recurrence,
cease_at, status`` (omit a field to leave it unchanged). ``text_cache`` is
written when supplied (alongside a |
input · output |
Verify it yourself
npx teppi-check https://excalibur-mcp.fastmcp.app/mcpcurl -s https://api.teppi.xyz/v1/trust/mcp/mcs_01M1FZ2GFF1W8JBC2H8ZQT7HD5