Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
100 commits
Select commit Hold shift + click to select a range
cb322d8
Ported v0.0.4 from mcp-remote-examples
geelen Mar 20, 2025
eca1e45
Gearing up for Claude to write this react hook
geelen Mar 22, 2025
e6a22d4
got something building and activating in a react app, at least!
geelen Mar 22, 2025
542a669
wip
geelen Mar 24, 2025
5175099
Successfully tested end-to-end in a browser!
geelen Mar 24, 2025
7403171
0.0.5-0
geelen Mar 24, 2025
426c613
Merge pull request #1 from geelen/use-mcp
geelen Mar 24, 2025
56d9117
fix types and pass build
threepointone Mar 24, 2025
171938b
Merge pull request #2 from geelen/fix-types
threepointone Mar 24, 2025
1813030
fix bin field
threepointone Mar 24, 2025
8e1865f
Merge branch 'main' of https://github.com/geelen/mcp-remote
threepointone Mar 24, 2025
9904603
0.0.5
threepointone Mar 24, 2025
65e55c3
Thank you Claude
geelen Mar 24, 2025
d332273
format
threepointone Mar 24, 2025
ff4ecf3
Merge pull request #3 from geelen/support-unauthed
threepointone Mar 24, 2025
3b98cfd
0.0.6
threepointone Mar 24, 2025
81f6949
0.0.7
threepointone Mar 24, 2025
29d71fb
trying moving the SDK into a normal dep
geelen Mar 24, 2025
9c2e670
0.0.8-0
geelen Mar 24, 2025
b475270
Update pnpm-lock.yaml
threepointone Mar 24, 2025
81d65e8
0.0.8
threepointone Mar 24, 2025
cb4ad62
Merge pull request #4 from geelen/fix-top-level-await
threepointone Mar 24, 2025
b217e08
Add VPN warning
jmorrell-cloudflare Mar 24, 2025
1cc1bd6
tweak
jmorrell-cloudflare Mar 24, 2025
429cc5a
Add warning about older versions of Node
jmorrell-cloudflare Mar 24, 2025
2df92f6
Merge pull request #5 from geelen/add-vpn-warning
geelen Mar 24, 2025
da0f298
Fleshing out readme
geelen Mar 24, 2025
4e94da5
adding a PID to the authorize step, we're definitely getting two proc…
geelen Mar 24, 2025
29167f4
Merge pull request #6 from geelen/debug-logging
geelen Mar 24, 2025
f1cfe36
Few links back to CF resources for the readme
geelen Mar 24, 2025
752caf1
0.0.9
geelen Mar 24, 2025
2cce763
Add more detailed instructions to README
jmorrell-cloudflare Mar 25, 2025
88d9909
add a space
jmorrell-cloudflare Mar 25, 2025
443f785
Merge pull request #7 from geelen/improvements
geelen Mar 25, 2025
1281387
added clearStorage
geelen Mar 25, 2025
e0e6353
starting the use-mcp project
geelen Mar 26, 2025
050beed
ready to start
geelen Mar 28, 2025
6e83fa8
removing some deps
geelen Mar 28, 2025
414e9e4
Gemini 2.5 refactor
geelen Mar 28, 2025
4058d1f
WIP: Update README and add .env to gitignore
geelen Apr 15, 2025
c990df4
compiling again
geelen May 5, 2025
207fc86
wip
geelen May 5, 2025
b660459
trying to fix these hooks.
geelen May 6, 2025
817b74d
Debug logging by Claude
geelen May 6, 2025
9cafc70
The fix is in, apparently
geelen May 6, 2025
5a6b81f
Successfully invoking tools again!
geelen May 6, 2025
78d6583
wip
geelen May 6, 2025
d0372fd
GEMINI TO THE RESCUE
geelen May 6, 2025
d9454bc
fixed the effect looping, can call an MCP function without auth
geelen May 6, 2025
5d3317b
0.0.5
geelen May 6, 2025
f5c8b45
Ok claude wants to store state locally i guess
geelen May 6, 2025
fa463fe
Generated code, compiling now and SSE working but HTTPS not
geelen May 7, 2025
d6dbb4c
Giving AMP a go too
geelen May 7, 2025
a5d247f
lol gemini
geelen May 7, 2025
3bf0627
Falling back on CORS errors too
geelen May 7, 2025
5d7e5c7
Regenerated the README
geelen May 7, 2025
60fcce1
Merge pull request #1 from geelen/gemini-https
geelen May 7, 2025
53515b8
0.0.6
geelen May 7, 2025
c8d9cf0
Making @modelcontextprotocol/sdk external
geelen May 7, 2025
5a31434
0.0.7
geelen May 7, 2025
0e08492
Passing through customHeaders to requestInit
geelen Jun 2, 2025
c1aef99
Setting up checks
geelen Jun 2, 2025
551b545
Prettified
geelen Jun 2, 2025
2f37c4d
Add repository field
geelen Jun 2, 2025
d7c14aa
give up on compact;
geelen Jun 2, 2025
e7cf2f1
Merge branch 'custom-headers'
geelen Jun 6, 2025
4b9a0a2
Added the start of a demo
geelen Jun 6, 2025
e54abfb
added caveat on the readme
geelen Jun 6, 2025
b78c6f7
First pass adding an MCP ui to the chat demo
geelen Jun 10, 2025
9541d8f
tidying up error states
geelen Jun 10, 2025
a04e39c
Bigger sidebar
geelen Jun 10, 2025
323e1b5
moving examples around
geelen Jun 10, 2025
f305b6f
Got AMP to rip out the guts of the chat ui to make an inspector
geelen Jun 10, 2025
c6d2e66
Going to try to deploy this asap
geelen Jun 10, 2025
61ab6f7
Inspector looking good
geelen Jun 10, 2025
9a614dc
amp is good yo
geelen Jun 10, 2025
3bcc51d
Not sure what i am doing with this wrangler vite stuff
geelen Jun 10, 2025
3b5f21b
First cut of tool use
geelen Jun 10, 2025
0cc21d5
wip
geelen Jun 10, 2025
0726f26
wip
geelen Jun 10, 2025
3951732
Tool calling UI looking ok
geelen Jun 10, 2025
52a409c
bit more tidying before publish
geelen Jun 10, 2025
b43914c
Deleting chat ui example as it's not ready
geelen Jun 10, 2025
dd68c21
Deployed to inspector.use-mcp.dev
geelen Jun 10, 2025
d5c7bd3
0.0.8
geelen Jun 11, 2025
218d640
Starting readme tweaks
geelen Jun 18, 2025
a2589be
putting the build commands into the repo
geelen Jun 18, 2025
44b2ab2
Tweaks
geelen Jun 18, 2025
6b8c5b9
changing project url
geelen Jun 18, 2025
38cc48a
Getting mcp inspector example looking ok
geelen Jun 18, 2025
8dfa8d7
Amp, you are great;
geelen Jun 18, 2025
8ef10a7
Added Oauth callback flow
geelen Jun 18, 2025
3bd5235
Toggleable tool listing
geelen Jun 18, 2025
84ddf9f
Merge pull request #4 from geelen/launch
geelen Jun 18, 2025
11a7ea7
Updated OG
geelen Jun 18, 2025
a737482
adding backlink
geelen Jun 18, 2025
6585e25
fixing prettier
geelen Jun 18, 2025
5572f7d
Merge pull request #5 from geelen/launch
geelen Jun 18, 2025
0ecb03f
Getting ready to make public
geelen Jun 18, 2025
0dc2b89
Bump the npm_and_yarn group across 2 directories with 1 update
dependabot[bot] Jun 18, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions .github/workflows/check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Check

on:
pull_request:
branches:
- main

jobs:
check:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup pnpm & install
uses: wyvox/action-setup-pnpm@v3
with:
node-version: 22

- name: Build
run: pnpm build

- name: Run checks
run: pnpm run check
26 changes: 26 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Publish Any Commit
on:
pull_request:
push:
branches:
- '**'
tags:
- '!**'

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup pnpm & install
uses: wyvox/action-setup-pnpm@v3
with:
node-version: 22

- name: Build
run: pnpm build

- run: pnpm dlx pkg-pr-new publish --bin
140 changes: 6 additions & 134 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,136 +1,8 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
.pnpm-debug.log*

# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage
*.lcov

# nyc test coverage
.nyc_output

# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules/
jspm_packages/

# Snowpack dependency directory (https://snowpack.dev/)
web_modules/

# TypeScript cache
*.tsbuildinfo

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Optional stylelint cache
.stylelintcache

# Microbundle cache
.rpt2_cache/
.rts2_cache_cjs/
.rts2_cache_es/
.rts2_cache_umd/

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# Yarn Integrity file
.yarn-integrity

# dotenv environment variable files
.env
.env.development.local
.env.test.local
.env.production.local
.env.local

# parcel-bundler cache (https://parceljs.org/)
.cache
.parcel-cache

# Next.js build output
.next
out

# Nuxt.js build / generate output
.nuxt
node_modules
.mcp-cli
dist
.env
.aider*

# Gatsby files
.cache/
# Comment in the public line in if your project uses Gatsby and not Next.js
# https://nextjs.org/blog/next-9-1#public-directory-support
# public

# vuepress build output
.vuepress/dist

# vuepress v2.x temp and cache directory
.temp
.cache

# vitepress build output
**/.vitepress/dist

# vitepress cache directory
**/.vitepress/cache

# Docusaurus cache and generated files
.docusaurus

# Serverless directories
.serverless/

# FuseBox cache
.fusebox/

# DynamoDB Local files
.dynamodb/

# TernJS port file
.tern-port

# Stores VSCode versions used for testing VSCode extensions
.vscode-test

# yarn v2
.yarn/cache
.yarn/unplugged
.yarn/build-state.yml
.yarn/install-state.gz
.pnp.*
**/.claude/settings.local.json
public
3 changes: 3 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
pnpm-lock.yaml
*.md
examples
14 changes: 14 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"printWidth": 140,
"singleQuote": true,
"semi": false,
"useTabs": false,
"overrides": [
{
"files": ["*.jsonc"],
"options": {
"trailingComma": "none"
}
}
]
}
32 changes: 32 additions & 0 deletions AGENT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# use-mcp Project Guidelines

## Build, Lint, and Test Commands
- `pnpm dev`: Run development build with watch mode
- `pnpm build`: Build the project
- `pnpm check`: Run prettier checks and TypeScript type checking

## Code Style Guidelines

### Imports
- Use explicit .js extensions in imports (ES modules style)
- Group imports: SDK imports first, followed by React/external deps, then local imports

### Formatting
- Single quotes for strings
- No semicolons at line ends
- 140 character line width
- Use 2 space indentation

### Types and Naming
- Strong typing with TypeScript
- Descriptive interface names with camelCase for variables/functions and PascalCase for types
- Comprehensive JSDoc comments for public API functions and types

### Error Handling
- Use assertions with descriptive messages
- Log errors with appropriate levels (debug, info, warn, error)
- Defensive error handling with specific error types when available

### React Patterns
- Use React hooks with useRef for mutable values
- Stable callbacks with useCallback and appropriate dependencies
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2025 Glen Maddern
Copyright (c) 2025 Cloudflare, Inc.

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
Loading
Loading