wunder-user-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@wunder-user-mcpShow me available vehicles near my location"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
wunder-user-mcp
An MCP server that exposes the Wunder Mobility v2 end-user (User) API as tools. It lets an MCP client (Claude, etc.) browse vehicles, inspect and operate rentals, and create rentals/reservations on behalf of a single signed-in end user.
Authentication is handled entirely from a refresh token you provide via env var — the server exchanges it for short-lived access tokens and refreshes them automatically, so tool callers never deal with tokens.
Tools
Tool | What it does | Underlying endpoint |
| List available vehicles. With a |
|
| Return the user's ongoing rental(s) ( |
|
| Operate a rental: |
|
| Create a rental in |
|
Related MCP server: Smartcar MCP Server
Configuration
All configuration is via environment variables (see .env.example):
Variable | Required | Default | Purpose |
| ✅ | — | Long-lived refresh token for the end user. |
| ✅ | — | Tenant short-code used in the API URL path. |
|
| API gateway base URL. | |
| — | Default branch id for vehicle/rental calls. | |
|
| Radius (miles) used by | |
|
| Per-request timeout in seconds. |
Getting a refresh token
Sign in once via the Wunder Authentication API (e.g. POST /{tenant}/auth/sign-in-email,
/sign-in-phone-number, or /sign-in-api-client) and copy the refreshToken from the
response into WUNDER_REFRESH_TOKEN.
Run
Run straight from the GitHub repo — no clone and no PyPI publish required (uvx builds
from the Git source):
uvx --from git+https://github.com/slettmayer/wunder-user-mcp wunder-user-mcpPin a branch, tag, or commit for stability by appending @<ref>:
uvx --from git+https://github.com/slettmayer/wunder-user-mcp@main wunder-user-mcpuvx caches the build, so to pick up new commits on a moving ref (e.g. @main) add
--refresh:
uvx --refresh --from git+https://github.com/slettmayer/wunder-user-mcp@main wunder-user-mcpFrom a local checkout (development):
uv run wunder-user-mcp # editable install, reflects local edits
uvx --from . wunder-user-mcp # build from the current directoryIn all cases WUNDER_REFRESH_TOKEN and WUNDER_TENANT must be set in the environment
(see Configuration). The server speaks MCP over stdio.
MCP client configuration
{
"mcpServers": {
"wunder-user": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/slettmayer/wunder-user-mcp",
"wunder-user-mcp"
],
"env": {
"WUNDER_REFRESH_TOKEN": "<refresh-token>",
"WUNDER_TENANT": "<tenant-code>",
"WUNDER_BASE_URL": "https://go-staging.api.gourban.services/v1",
"WUNDER_BRANCH_ID": "<optional-branch-id>"
}
}
}
}WUNDER_BASE_URL defaults to production (https://go.api.gourban.services/v1); the
value above targets staging (go-staging). Set it to match your tenant's environment
— a staging tenant on the production host returns 404. To pin a ref, append @<ref> to
the URL, e.g. git+https://github.com/slettmayer/wunder-user-mcp@main.
Development
uv sync # install deps (incl. dev group)
uv run pytest # offline unit tests (geo + JWT exp parsing)
uv run ruff check # lintNotes / caveats
The vehicle position field path used for distance calculation is detected best-effort (
lat/lng,latitude/longitude, or a nestedposition/location). If a tenant's response uses different field names, extendgeo.py.operation_typeinrental_commandis passed through to the API, so tenant-specific operations beyond the documented set keep working.Rental creation and
ENDare high-impact: they can trigger vehicle commands, payment authorization/capture, deposits, and invoices.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/slettmayer/wunder-user-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server