53 Commits

Author SHA1 Message Date
david
cc6e0ce83c feat(builder)!: remove deprecated SSE transport - Streamable HTTP only (2.0.0)
BREAKING CHANGE: GET /sse and POST /messages now answer 404. Every client
connects over Streamable HTTP at /mcp. The sse remote is removed from
server.json.

- Add unauthenticated GET /health ({status, version}); no session, no
  rate-limit touch.
- Add any-origin CORS across the whole HTTP surface, incl. OPTIONS
  preflight and error responses; mcp-session-id exposed to browsers.
- Unify every version string at 2.0.0; both McpServer identities now read
  the version from package.json at build time instead of hardcoding it.
- Raise @modelcontextprotocol/sdk floor to ^1.30.0 and sync the local
  install with the lockfile.
- Tests: retire the SSE-shaped auth-gating suite (its unique
  process-liveness test is ported to streamable-http-gating), move the
  shared harness and rate-limit suite to StreamableHTTPClientTransport,
  and add http-surface.test.ts for CORS//health//sse-404 coverage.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-17 14:11:18 +02:00
FilipBl4gojevic
e56f15700c docs(readme): hosted instances are open access and serve /mcp (#19)
The README described both hosted instances as requiring a bearer token, and
/mcp as self-hosted-only pending a future deploy. Both statements are stale:
the hosted fleet now admits anonymous callers with per-IP rate limiting, and
/mcp is live on mainnet and testnet.

- Endpoint table and the primary connection example now use /mcp.
- Connection examples drop the Authorization header for the hosted URLs.
- /sse stays documented as the legacy transport, also tokenless for hosted.
- MCP_AUTH_TOKENS remains documented for self-hosted deployments; that
  feature is unchanged, it is simply unset on the hosted fleet.

Custody language is deliberately untouched. Keyless (no server-side signing
keys) and authless (no bearer token) are separate properties and the text
keeps them separate.

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
2026-08-04 21:17:22 +02:00
FilipBl4gojevic
64adeb635c docs: align public copy with the brand voice - no em dashes, AP3X vocabulary, research-themed examples 2026-08-01 10:07:33 +02:00
FilipBl4gojevic
c263794879 fix: stop fetch-level errors from echoing endpoint URLs; use native fetch now that the node floor is 22
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 19:10:42 +02:00
FilipBl4gojevic
e866b05153 fix: keep the ledger's rejection reason for the caller while scrubbing endpoint detail
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 18:39:57 +02:00
FilipBl4gojevic
c0e05422b3 fix: keep configured endpoint URLs out of caller-visible error text
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 18:28:28 +02:00
FilipBl4gojevic
949a56312a chore: raise the node floor to 22, make the libsodium step cross-platform and fail-loud, address dependency advisories
Regenerating the lockfile picked up a newer @cardano-sdk/crypto release that
dropped its errant npm-CLI runtime dependency, clearing the critical tar
advisory and 42 other advisories that traced back to it (44 -> 1, the
remainder a dev-only esbuild low). A defensive overrides pin on tar and
brace-expansion is retained per plan but is empirically not what resolved
this - documented honestly in README.md and the task report.

engines.node raised to >=22 everywhere (root + all three packages), matching
the CI workflow's node-version and the Dockerfile's node:22-alpine base
(both already agreed; no discrepancy to reconcile).

postinstall no longer symlinks libsodium with `ln -sf ... || true`, which
silently no-opped on Windows and left a runtime ERR_MODULE_NOT_FOUND.
scripts/link-libsodium.mjs copies the file cross-platform instead, logs one
line, and exits non-zero on genuine failure.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 17:21:17 +02:00
FilipBl4gojevic
5f229d3ccd fix(builder): fail loud on malformed rate-limit and session env knobs; document them; refresh the transport diagram 2026-07-31 15:57:49 +02:00
FilipBl4gojevic
abee4dc32d docs: /mcp is the primary hosted endpoint - SSE stays as the deprecated compatibility pair 2026-07-31 15:26:28 +02:00
FilipBl4gojevic
81c14729b0 docs: mainnet cutover complete - both hosted instances run the keyless build (deployed 2026-07-31)
David dispatched the mainnet cutover this morning: deploy-mainnet.yml ran successfully at
2026-07-31T11:00:06Z-11:01:20Z, deploying commit 04e410b (the PR #11 merge, itself the tip of
main after PRs #9/#10/#11 all merged 10:39:29Z-10:39:59Z the same morning). Testnet had already
auto-deployed the identical commit at 10:40:01Z-10:41:50Z. The non-custodial migration is now
complete on both hosted instances, not just in the code - the exact moment the prior docs pass's
deliberately-hedged notice was written for.

Verified directly before writing anything, not taken on faith from the dispatch: git/gh confirm
the merge timestamps and that both deploy workflow runs targeted 04e410b exactly; the custody
grep and safety.ts's absence were reconfirmed on this exact commit; both hosted endpoints
(https://mcp.vector.mainnet.apexfusion.org/sse and the testnet equivalent) were probed directly
with a bare curl request and both returned HTTP 401 right now - meaningful evidence on its own,
since the pre-PR#8 image had no auth at all, so a 401 today proves post-migration code is what's
actually running, not just what the deploy logs claim.

- README.md: the deployment-status callout rewritten with the dated, both-networks-current
  facts, replacing the custody caveat with an access caveat - both instances require a bearer
  token from the operators now (an access control, not a custody signal; neither instance would
  accept a mnemonic from an authenticated caller either, since the tool schemas that would carry
  one no longer exist). The connect command now shows the bearer-token header syntax, verified
  against Claude Code's own current `claude mcp add` documentation before writing it (`--transport
  sse` accepts `--header "Authorization: Bearer <token>"`, same as `--transport http`). The
  security notice rescoped from "this codebase, not every deployment" to a dated claim: complete
  in this codebase and on both hosted instances as of the 2026-07-31 cutover deploy specifically,
  explicitly not a "forever" claim - a future deploy is a separate operational action.
- packages/signer/README.md: the two passages scoped to "this codebase" in the prior docs pass
  now scoped to "any instance running the 2026-07-31 deploy or later," mainnet included, with the
  same access-control caveat about the bearer token.
- docs/architecture/non-custodial-split.md: PR-sequence row 9 (mainnet cutover) gets the same
  landed-marker style as rows 6-8, dated; section 11's rollout paragraph gets its one now-historical
  clause corrected to past tense with a dated annotation appended, following the established
  forward-only annotation convention rather than rewriting the paragraph.

Open public access (no token, per-IP rate limiting) remains a planned follow-up, not yet an open
PR or branch - checked directly (gh pr list, git branch -a) rather than assumed, and stated in
the docs as planned, not implied as already in progress.
2026-07-31 13:14:54 +02:00
FilipBl4gojevic
2173da727c docs: correct the audit-#10 rollout claim, testnet-first connect example, close a stray vocabulary residue 2026-07-30 18:55:38 +02:00
FilipBl4gojevic
0a384f44a9 docs: scope the migration-complete claim to the codebase - mainnet stays custodial until the cutover deploy
Critical truthfulness defect found by review: README.md's security notice claimed, in
unconditional present tense, that "the non-custodial migration is complete... No tool on this
hosted server accepts a mnemonic... this server never holds one" - sitting directly below the
README's own mainnet hosted-URL connect example. Per docs/architecture/non-custodial-split.md's
own rollout section, mainnet stays on its last custodial image until a separate, deliberate
cutover deploy ships - and nothing on this branch (or the two PRs it stacks on) has even merged
yet. A reader who followed the mainnet connect line and trusted the notice as written would be
told something the repo's own architecture doc directly contradicts. The rewrite had also
dropped the prior notice's hedge ("prefer self-hosting until the migration completes") and
replaced it with a strictly stronger, zero-caveat claim - the exact failure mode this migration
exists to prevent, reproduced at the documentation layer.

Fixed by rescoping every claim to the codebase and adding an explicit deployment-status caveat:

- README.md: added a deployment-status note directly beneath the hosted-servers URL table
  (before the connect command), stating plainly that testnet auto-deploys from main but mainnet
  stays on its last custodial image until a separate cutover deploy, and to treat the mainnet
  instance's signing tools as custodial until then. The security notice itself now says "as of
  this release, the non-custodial migration is complete in this codebase" and "no server running
  this release ever holds one," with an explicit closing line that this is a claim about the
  code, not about every deployment of it. The "Local signer" section got the same rescoping
  (it made the identical unscoped claim). The Self-Improvement Module features bullet was also
  adjusted: it had "all keyless" sitting directly next to a pre-existing "(live on Vector
  mainnet)" parenthetical, risking the same conflation between the on-chain module's blockchain
  deployment and this codebase's MCP-server code state - now stated as two separate facts.
- packages/signer/README.md: the "keyless across the board" pairing-status bullet and the
  "keeps your mnemonic off the hosted server" closing line both rescoped to "in this codebase" /
  "off any server running this release," each with an explicit note that the mainnet hosted
  instance is not yet running this release.
- .superpowers/sdd/pr9-body.md (gitignored, not part of this commit): opening paragraph and the
  stacked-PR timing note both updated with the same scoping - merging this PR does not deploy
  it anywhere, and the mainnet cutover is a separate future step.

Grepped the tree afterward for other unscoped "hosted server ... keyless"-class claims: found
none beyond what's fixed above. Pre-existing, unrelated mentions of "hosted server" in
docs/architecture/non-custodial-split.md (the historical problem statement) and README.md (a
self-hosting logistics note) were checked and left alone - correctly scoped by their own
surrounding context already.
2026-07-30 18:35:35 +02:00
FilipBl4gojevic
8d7d68a4d0 docs: the non-custodial migration is complete - every family keyless, server holds zero key material
README, packages/signer/README.md, docs/VECTOR.md, and docs/architecture/non-custodial-split.md
updated for the family-3 (self-improvement) keyless migration - the last of the three families
this migration ever touched:

- README: security notice rewritten as the migration-complete statement (zero tools accept key
  material, every signing operation happens on the local signer, enforced by the now-empty,
  size-zero-pinned custody boundary allowlist); tool count 23 to 24; Self-Improvement Module
  table replaced with browse/analyze plus the four build_* rows, the two-step proposal pair
  marked as two transactions, agent-orchestrated; features and safety copy updated to
  signer-owned spend limits everywhere; Configuration table's three dead spend-limit/audit-log
  rows removed (nothing reads those env vars any more); Safety Layer box removed from the
  architecture diagram entirely (box-drawing alignment verified programmatically, not by eye);
  Testing section names tier-1 vs gated E2E vs LEGACY_FULL for all three keyless families
  including their stake costs.
- packages/signer/README.md: pairing-status bullet and closing line rewritten - all four
  families are keyless now, this signer is the single signing point, nothing is left open.
- docs/VECTOR.md: four new tool sections for the self-improvement build_* family (this doc never
  documented self-improvement under any name before, so these are additions, not renames - same
  situation as the registry family in the prior PR's docs task); Safety Controls section's
  custodial-family list corrected to reflect that none remain.
- docs/architecture/non-custodial-split.md: family-3 landed marker on the PR-sequence table,
  plus the four content-alignment fixes pre-assigned to this PR by
  rehaul-handoff-2026-07-30-content-alignment.md (the "governance" to "self-improvement" renames
  in the two-step-flow heading, the "last family" sentence, the family table label, and the
  rollout row), plus the "Float -> bigint amount math" wording fix.
- .env.example: verified Task 5's edit already states the migration-complete scope correctly
  with a pointer to packages/signer/README.md; no further change needed.

Content rules followed for all new copy in this commit: no "governance" (GOV_* env-var names
exempted, pre-existing deployed config keys), no em dashes, no "funds", research-themed
examples where new examples were needed. Caught and fixed one self-introduced violation before
committing: docs/VECTOR.md's four new tool sections initially copied the file's own pre-existing
em-dash-based parameter-bullet convention; replaced with colons in exactly those new lines,
verified zero em dashes remain in the added range.
2026-07-30 18:08:46 +02:00
FilipBl4gojevic
ec3962aa60 docs: correct tier-1 registry coverage claim; qualify the full-migration tool count
README.md Testing section claimed registry-keyless.test.ts (tier-1) builds "all five
agent-registry build_* tools" - false. Verified directly against the test source: it
successfully builds and CBOR-checks only register and message; update appears solely on
its non-owner-rejection path (no CBOR extracted); transfer and deregister don't appear in
the file at all - both are covered by the gated E2E suite and the legacy suite instead.
Reworded to state exactly what tier-1 covers and point the full lifecycle claim at the E2E
suite, where it's actually true.

docs/architecture/non-custodial-split.md:137 ("Builder — 24 tools, zero keys") is the
doc's original full-migration target table, easy to misread as current-state next to
README's "23" today. Added "at full migration" so it can't be read as stale.

Checked pr7-body.md for the same all-five-tier-1 claim per the reviewer's note - it does
not repeat it (the Tier-1 bullet only states the 6/6 pass count, no per-tool breakdown),
so no change needed there.
2026-07-29 20:08:56 +02:00
FilipBl4gojevic
d0fc86c6e0 docs: agent-registry family is keyless - tool tables, custody scope, spend-limit copy
README, .env.example, packages/signer/README.md, and docs/architecture/non-custodial-split.md
updated for the family-2 keyless migration (agent-registry build_* tools, no mnemonic
parameters): security notice narrowed to name the Self-Improvement Module as the only
remaining custodial family; agent-registry tool table renamed to the five build_* rows;
features bullets, self-hosting copy, Configuration/spend-limit scope notes, and the
architecture diagram's Safety Layer footnote all updated to "self-improvement only"; signer
README's pairing-status bullet and closing line extended to cover wallet/tx/contract AND
agent-registry; architecture doc's PR-sequence table marks family 2 as landed.

docs/VECTOR.md gains five new tool sections (register/update/transfer/deregister/message) -
this doc never documented the registry family under any name before, so these are additions
rather than renames; keyless framing (changeAddress, no mnemonic, unsigned CBOR + 4-call flow)
matches the style of the existing wallet/tx/contract sections. Safety Controls section's
custodial-family list also corrected to self-improvement only.
2026-07-29 19:53:25 +02:00
FilipBl4gojevic
d822a47177 docs: scope the safety-layer diagram and spend-limit copy to the custodial families
Four items from the final whole-branch review, all docs-only:

1. Architecture diagram: the ASCII diagram routed every tool call through
   Rate Limiter -> Safety Layer -> Lucid/Ogmios, which is false for the
   keyless build_* path (safety.ts is never consulted there). Annotated the
   Safety Layer box with a footnote marker instead of redrawing the diagram -
   box alignment verified programmatically before and after (same column
   positions for every vertical bar).
2. Configuration table: added one sentence stating VECTOR_SPEND_LIMIT_PER_TX/
   DAILY govern only the still-custodial families, matching .env.example's
   existing scope note.
3. Testing section: "builds every build_* tool's unsigned transaction"
   overclaimed - keyless-build.test.ts covers 4 of 5 (verified directly
   against the test source: vector_build_send_tokens is absent from it,
   covered instead by unit tests and the legacy integration suite). Reworded
   to name the gap explicitly.
4. packages/builder/test/integration/keyless-e2e.test.ts:9 (comment only):
   "which lives on PR #7's branch" was stale now that #7 is merged and
   packages/signer is in-tree. Reworded to name the in-tree package and be
   precise about what the stand-in does and doesn't exercise (same CML
   primitives, without decode/policy/audit).
2026-07-29 15:02:48 +02:00
FilipBl4gojevic
66f6b60dbd docs: signer is in-tree - align custody claims after #7/#8 merged
#7 (signer) and #8 (builder hardening) merged into main this morning; this
branch is rebased onto the result and packages/signer is now in-tree. Three
sites still said pairing the signer with the hosted builder "does not yet
remove the custody exposure" (true when #7 was written, before this PR's
keyless build_* tools existed - now false for the wallet/tx/contract family):

- README.md's "Local signer" section: now states the 4-call non-custodial
  flow (signer_get_address -> build_* -> signer_sign -> submit -> await) is
  live today for that family, names the signer's four tools, and keeps the
  agent-registry/self-improvement families explicitly scoped out.
- packages/signer/README.md's "Known limitations" bullet and "Running it"
  closing line: same correction, with the specific now-keyless build_* tool
  names and an accurate (not overclaiming) description of what the E2E test
  exercises - it signs with the same CML primitives sign.ts uses, as a
  stand-in for calling vector_signer_sign directly, not a call into the
  signer package's own code.

Grepped case-insensitively across the repo for "does not yet remove" /
"custody exposure" / "signer half is ready" / "builder half is not yet"
before and after: exactly these 3 sites found, all corrected, zero stale
instances remain.
2026-07-29 14:37:59 +02:00
FilipBl4gojevic
714d4ebcd4 docs: wallet/tx family is keyless - security notice, tool tables, spend-limit scope
README, .env.example, and docs/architecture/non-custodial-split.md updated for
the family-1 keyless migration (build_* tools, no mnemonic parameters): custody
notice rewritten to describe the keyless boundary precisely, tool tables synced
to the 23-tool surface (4 renames, 4 changed in place, 2 removed), self-hosting
and testing copy updated, .env.example spend-limit scope annotated, and the
architecture doc's PR-sequence table marks family 1 as landed.

docs/VECTOR.md (flagged by Task 4 as referencing stale tool names) is also
updated: renamed/removed tool sections corrected, keyless changeAddress params
added, and the Safety Controls / Error Handling sections stop claiming
server-side spend limits and mnemonic requirements that no longer apply to the
tools this page documents. Edits confined to tool names and custody claims -
no restructuring, no wholesale ADA to AP3X pass beyond the sections touched.
2026-07-29 14:25:17 +02:00
dcejtlin-apex
2b5ac4a878 Merge branch 'main' into feat/builder-auth-and-submit 2026-07-29 10:11:31 +02:00
FilipBl4gojevic
325494a590 docs: warn about MCP_AUTH_TOKENS at the point of going live, not just in the reference table
The auth guidance was accurate but lived only in the Configuration
reference table, after both quickstart paths (npm start / docker run)
that a self-hoster would follow top to bottom. Following either to
completion on a public host reproduces the unauthenticated-server problem
this PR exists to fix, without ever seeing a warning at the point of
action.

Add one line after each quickstart's run command, pointing to
Configuration. The Docker line also notes that docker-compose.yml in this
repo already binds 127.0.0.1 by default, unlike the inline `docker run`
example.
2026-07-29 08:08:35 +02:00
FilipBl4gojevic
104f08a691 docs: document MCP_AUTH_TOKENS and the two new chain-operation tools
Covers what Task 1 actually enforces: auth is only on when MCP_AUTH_TOKENS
is set (otherwise every caller is one anonymous, shared-bucket identity),
rate limits are per identity, and the token parser rejects empty tokens,
whitespace, duplicates, and all-blank values at startup rather than
degrading silently. Notes that vector_submit_transaction and
vector_await_transaction take no mnemonic and sign nothing. Updates the
tool count from 23 to 25 everywhere it appears in the README.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-29 07:23:27 +02:00
FilipBl4gojevic
b4038aa1f1 docs(signer): document configuration, semantics, and known limitations
Includes an opt-in testnet round-trip test (keyless build -> decode -> policy
-> sign, never submits), excluded from CI because it needs a funded wallet.
Run against the real funded testnet wallet: pass 3, fail 0, nothing submitted.

Verified every README claim against the code as implemented, not just the
brief text, and corrected several:
- VECTOR_SIGNER_AUDIT_LOG_PATH's default resolves against the package's own
  install location (repo root), not the process's cwd as originally stated --
  and that default filename is not yet covered by .gitignore.
- An audit-log write failure blocks ALL signing, not just accounting:
  audit.append() throws by design and vector_signer_sign withholds an
  already-produced signature rather than release one with no durable record.
- Documented the #private-field defense against accidental key leakage via
  JSON.stringify/console.log, and the read-only/sign tool split that keeps
  the signing key out of scope for get_address/decode/get_spend_limits.
- Documented that pairing this signer with the CURRENT hosted builder does
  not yet remove the custody exposure it's designed to fix: no builder tool
  is keyless yet, and there is no submit_transaction tool to hand a produced
  signature to. That's the next stage of the migration, not shipped here.

Env-var cross-check (brief's Step 6, both directions) passes clean.
2026-07-28 17:44:36 +02:00
FilipBl4gojevic
d318f5233d fix: make the shared package a devDependency and drop stale paths
packages/builder is publishable (private:false) but depended on the
private workspace package at runtime - a published manifest would
advertise an unresolvable dependency. tsup's noExternal inlines it into
the bundle, so devDependencies is the correct home.

Also removes the root tsconfig.json, which still pointed at the deleted
src/, and corrects two README paths the move invalidated.
2026-07-28 10:04:05 +02:00
FilipBl4gojevic
39e33628e4 docs: correct the Koios default in the README config table
The v2 Koios migration landed in main, so the config table's v1 default and
the 503-workaround note are both now false.
2026-07-28 10:03:56 +02:00
FilipBl4gojevic
790cbf80b8 docs: document the test:smoke command in the Testing section
CI runs test:smoke on every PR but the README only listed test:unit and
test:integration, so a contributor following the README wouldn't know to
run it locally.
2026-07-28 09:57:03 +02:00
FilipBl4gojevic
ca94722412 docs: correct README testing instructions for unit/integration split
The Testing section still told contributors to write a real mnemonic
to mnemonic.txt and run `npm test`, then claimed the result was full
agent-lifecycle coverage against Vector testnet. Since test:unit is
now the default `test` script (five wallet-free CBOR assertions), that
instruction produced a false green and silently skipped the coverage
it advertised. Document test:unit and test:integration separately and
drop the stale VECTOR_MNEMONIC env-var alternative, which setup.ts
never reads.
2026-07-28 09:57:02 +02:00
FilipBl4gojevic
a3c38e70db docs: add non-custodial split architecture and correct the custody claim
PR #2 shipped 'never stored server-side', which is true but materially
incomplete - the mnemonic is a tool-call parameter, so it transits the MCP
client, the model provider, and hosted process memory. Replaced with an
accurate notice pointing at the architecture doc.
2026-07-28 09:57:02 +02:00
FilipBl4gojevic
9086ceba6a README: canonical Vector mainnet explorer URL
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-24 11:28:41 +02:00
FilipBl4gojevic
8230ee93ab README: vocabulary pass on Self-Improvement descriptions
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-24 11:26:56 +02:00
FilipBl4gojevic
2c25a70a3e README: hosted servers, 23-tool reference, mainnet endpoints, AP3X terminology
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-24 10:46:46 +02:00
david
23bcf7ec11 Added readme 2026-03-19 02:27:16 +01:00
david
e761052090 Renamed vector_send_ada to vector_send_apex 2026-03-18 10:31:38 +01:00
david
5b52a3b273 Added support for Vector L2 and removed everything else 2026-03-17 10:15:55 +01:00
Alex Cheng
1b9e5ce23c TON support 2025-03-18 13:54:58 -05:00
Alex Cheng
9b86ce4a74 cardano support 2025-03-13 13:01:50 -05:00
Alex Cheng
7135d5af5a ripple support 2025-03-11 13:45:37 -05:00
Alex Cheng
c2f3c4d4e0 refactor 2025-02-19 16:20:54 -06:00
Alex Cheng
4e25635d60 berachain support 2025-02-19 11:50:01 -06:00
Alex Cheng
91282467b5 enable/disable controls for tool registration 2025-02-19 11:07:45 -06:00
Alex Cheng
8f1a6aa424 Thorchain query support 2025-02-13 13:42:36 -06:00
Alex Cheng
abcb76ce4e Merge pull request #2 from punkpeye/patch-1
add MCP server badge
2025-02-13 10:26:53 -06:00
Alex Cheng
598c41bb92 Merge pull request #4 from 0xaptosj/main
Update claude mcp config in README
2025-02-13 10:26:16 -06:00
Alex Cheng
3641464a5a prettier readme 2025-02-13 10:23:40 -06:00
Alex Cheng
3f47faf992 UTXO queries support by xchainjs 2025-02-13 10:20:38 -06:00
0xaptosj
afe2a6a1ec Update README.md 2025-02-11 16:34:21 -08:00
0xaptosj
35a96f406e Update claude mcp config in README 2025-02-11 16:32:39 -08:00
Alex Cheng
bf0060f2eb jupiter dex aggregator integration 2025-02-11 13:21:54 -06:00
Alex Cheng
20b44f3b6a secrets are now secure 2025-02-10 15:59:33 -06:00
Frank Fiegel
0fe0f40e14 add MCP server badge
This PR adds a badge for the [Web3 MCP Server](https://glama.ai/mcp/servers/an8x6gmzdn) server listing in Glama MCP server directory.

<a href="https://glama.ai/mcp/servers/an8x6gmzdn"><img width="380" height="200" src="https://glama.ai/mcp/servers/an8x6gmzdn/badge" alt="Web3 Server MCP server" /></a>

Glama performs regular codebase and documentation scans to:

* Confirm that the MCP server is working as expected
* Confirm that there are no obvious security issues with dependencies of the server
* Extract server characteristics such as tools, resources, prompts, and required parameters.

This badge helps your users to quickly asses that the MCP server is safe, server capabilities, and instructions for installing the server.
2025-02-07 16:00:52 -06:00
Alex Cheng
5a0fdab8f7 README 2025-02-07 13:53:24 -06:00