Coordinate AI-agent work on a local-first, owner-controlled MCP board
Connect Runs on your machine
claude mcp add pursers -e ONBOARD_CENTRAL_HOST=<ONBOARD_CENTRAL_HOST> -e ONBOARD_CENTRAL_PORT=<ONBOARD_CENTRAL_PORT> -e ONBOARD_CENTRAL_DATA_DIR=<ONBOARD_CENTRAL_DATA_DIR> -e ONBOARD_CENTRAL_LOG_LEVEL=<ONBOARD_CENTRAL_LOG_LEVEL> -e ONBOARD_CENTRAL_ALLOWED_HOSTS=<ONBOARD_CENTRAL_ALLOWED_HOSTS> -e ONBOARD_CENTRAL_TLS_CERTFILE=<ONBOARD_CENTRAL_TLS_CERTFILE> -e ONBOARD_CENTRAL_TLS_KEYFILE=<ONBOARD_CENTRAL_TLS_KEYFILE> -e CENTRAL_ADMISSION=<CENTRAL_ADMISSION> -e CENTRAL_AUTH_MODE=<CENTRAL_AUTH_MODE> -e CENTRAL_JWKS_PATH=<CENTRAL_JWKS_PATH> -e CENTRAL_JWT_AUDIENCE=<CENTRAL_JWT_AUDIENCE> -e CENTRAL_JWT_CLOCK_SKEW=<CENTRAL_JWT_CLOCK_SKEW> -e CENTRAL_JWT_ISSUER=<CENTRAL_JWT_ISSUER> -e CENTRAL_PRINCIPAL_STREAM_CAP=<CENTRAL_PRINCIPAL_STREAM_CAP> -e CENTRAL_REAPER_INTERVAL_S=<CENTRAL_REAPER_INTERVAL_S> -e CENTRAL_REQUEST_STATE_KEY_FILE=<CENTRAL_REQUEST_STATE_KEY_FILE> -e PURSERS_LEGACY_TOOLS=<PURSERS_LEGACY_TOOLS> -e STORE_BACKEND=<STORE_BACKEND> -- uvx pursers-central==0.1.8
{
"mcpServers": {
"pursers": {
"command": "uvx",
"args": [
"pursers-central==0.1.8"
],
"env": {
"ONBOARD_CENTRAL_HOST": "<ONBOARD_CENTRAL_HOST>",
"ONBOARD_CENTRAL_PORT": "<ONBOARD_CENTRAL_PORT>",
"ONBOARD_CENTRAL_DATA_DIR": "<ONBOARD_CENTRAL_DATA_DIR>",
"ONBOARD_CENTRAL_LOG_LEVEL": "<ONBOARD_CENTRAL_LOG_LEVEL>",
"ONBOARD_CENTRAL_ALLOWED_HOSTS": "<ONBOARD_CENTRAL_ALLOWED_HOSTS>",
"ONBOARD_CENTRAL_TLS_CERTFILE": "<ONBOARD_CENTRAL_TLS_CERTFILE>",
"ONBOARD_CENTRAL_TLS_KEYFILE": "<ONBOARD_CENTRAL_TLS_KEYFILE>",
"CENTRAL_ADMISSION": "<CENTRAL_ADMISSION>",
"CENTRAL_AUTH_MODE": "<CENTRAL_AUTH_MODE>",
"CENTRAL_JWKS_PATH": "<CENTRAL_JWKS_PATH>",
"CENTRAL_JWT_AUDIENCE": "<CENTRAL_JWT_AUDIENCE>",
"CENTRAL_JWT_CLOCK_SKEW": "<CENTRAL_JWT_CLOCK_SKEW>",
"CENTRAL_JWT_ISSUER": "<CENTRAL_JWT_ISSUER>",
"CENTRAL_PRINCIPAL_STREAM_CAP": "<CENTRAL_PRINCIPAL_STREAM_CAP>",
"CENTRAL_REAPER_INTERVAL_S": "<CENTRAL_REAPER_INTERVAL_S>",
"CENTRAL_REQUEST_STATE_KEY_FILE": "<CENTRAL_REQUEST_STATE_KEY_FILE>",
"PURSERS_LEGACY_TOOLS": "<PURSERS_LEGACY_TOOLS>",
"STORE_BACKEND": "<STORE_BACKEND>"
}
}
}
}
{
"mcpServers": {
"pursers": {
"command": "uvx",
"args": [
"pursers-central==0.1.8"
],
"env": {
"ONBOARD_CENTRAL_HOST": "<ONBOARD_CENTRAL_HOST>",
"ONBOARD_CENTRAL_PORT": "<ONBOARD_CENTRAL_PORT>",
"ONBOARD_CENTRAL_DATA_DIR": "<ONBOARD_CENTRAL_DATA_DIR>",
"ONBOARD_CENTRAL_LOG_LEVEL": "<ONBOARD_CENTRAL_LOG_LEVEL>",
"ONBOARD_CENTRAL_ALLOWED_HOSTS": "<ONBOARD_CENTRAL_ALLOWED_HOSTS>",
"ONBOARD_CENTRAL_TLS_CERTFILE": "<ONBOARD_CENTRAL_TLS_CERTFILE>",
"ONBOARD_CENTRAL_TLS_KEYFILE": "<ONBOARD_CENTRAL_TLS_KEYFILE>",
"CENTRAL_ADMISSION": "<CENTRAL_ADMISSION>",
"CENTRAL_AUTH_MODE": "<CENTRAL_AUTH_MODE>",
"CENTRAL_JWKS_PATH": "<CENTRAL_JWKS_PATH>",
"CENTRAL_JWT_AUDIENCE": "<CENTRAL_JWT_AUDIENCE>",
"CENTRAL_JWT_CLOCK_SKEW": "<CENTRAL_JWT_CLOCK_SKEW>",
"CENTRAL_JWT_ISSUER": "<CENTRAL_JWT_ISSUER>",
"CENTRAL_PRINCIPAL_STREAM_CAP": "<CENTRAL_PRINCIPAL_STREAM_CAP>",
"CENTRAL_REAPER_INTERVAL_S": "<CENTRAL_REAPER_INTERVAL_S>",
"CENTRAL_REQUEST_STATE_KEY_FILE": "<CENTRAL_REQUEST_STATE_KEY_FILE>",
"PURSERS_LEGACY_TOOLS": "<PURSERS_LEGACY_TOOLS>",
"STORE_BACKEND": "<STORE_BACKEND>"
}
}
}
}
{
"servers": {
"pursers": {
"type": "stdio",
"command": "uvx",
"args": [
"pursers-central==0.1.8"
],
"env": {
"ONBOARD_CENTRAL_HOST": "<ONBOARD_CENTRAL_HOST>",
"ONBOARD_CENTRAL_PORT": "<ONBOARD_CENTRAL_PORT>",
"ONBOARD_CENTRAL_DATA_DIR": "<ONBOARD_CENTRAL_DATA_DIR>",
"ONBOARD_CENTRAL_LOG_LEVEL": "<ONBOARD_CENTRAL_LOG_LEVEL>",
"ONBOARD_CENTRAL_ALLOWED_HOSTS": "<ONBOARD_CENTRAL_ALLOWED_HOSTS>",
"ONBOARD_CENTRAL_TLS_CERTFILE": "<ONBOARD_CENTRAL_TLS_CERTFILE>",
"ONBOARD_CENTRAL_TLS_KEYFILE": "<ONBOARD_CENTRAL_TLS_KEYFILE>",
"CENTRAL_ADMISSION": "<CENTRAL_ADMISSION>",
"CENTRAL_AUTH_MODE": "<CENTRAL_AUTH_MODE>",
"CENTRAL_JWKS_PATH": "<CENTRAL_JWKS_PATH>",
"CENTRAL_JWT_AUDIENCE": "<CENTRAL_JWT_AUDIENCE>",
"CENTRAL_JWT_CLOCK_SKEW": "<CENTRAL_JWT_CLOCK_SKEW>",
"CENTRAL_JWT_ISSUER": "<CENTRAL_JWT_ISSUER>",
"CENTRAL_PRINCIPAL_STREAM_CAP": "<CENTRAL_PRINCIPAL_STREAM_CAP>",
"CENTRAL_REAPER_INTERVAL_S": "<CENTRAL_REAPER_INTERVAL_S>",
"CENTRAL_REQUEST_STATE_KEY_FILE": "<CENTRAL_REQUEST_STATE_KEY_FILE>",
"PURSERS_LEGACY_TOOLS": "<PURSERS_LEGACY_TOOLS>",
"STORE_BACKEND": "<STORE_BACKEND>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
ONBOARD_CENTRAL_HOSTOptional | Loopback bind host used by the packaged runtime |
ONBOARD_CENTRAL_PORTOptional | Loopback bind port used by the packaged runtime |
ONBOARD_CENTRAL_DATA_DIROptional | Private Central data directory; --data-dir/--data-root is the equivalent CLI input |
ONBOARD_CENTRAL_LOG_LEVELOptional | Packaged runtime log level |
ONBOARD_CENTRAL_ALLOWED_HOSTSOptional | Optional comma-separated bare Host names accepted in addition to the bind host |
ONBOARD_CENTRAL_TLS_CERTFILEOptional | Optional TLS certificate path; requires ONBOARD_CENTRAL_TLS_KEYFILE |
ONBOARD_CENTRAL_TLS_KEYFILEOptional, secret | Optional TLS private-key path; requires ONBOARD_CENTRAL_TLS_CERTFILE |
CENTRAL_ADMISSIONOptional | Central admission policy; Pursers supports invite-only admission |
CENTRAL_AUTH_MODEOptional | Central authentication mode; Pursers supports JWT authentication |
CENTRAL_JWKS_PATHRequired | Path to the issuer public JWKS used to verify seat credentials |
CENTRAL_JWT_AUDIENCEOptional | MCP resource URL in audience and resource claims; defaults to the loopback bind URL |
CENTRAL_JWT_CLOCK_SKEWOptional | Allowed JWT clock skew in seconds |
CENTRAL_JWT_ISSUERRequired | Exact issuer URL in every accepted seat credential |
CENTRAL_PRINCIPAL_STREAM_CAPOptional | Maximum concurrent event streams accepted per principal |
CENTRAL_REAPER_INTERVAL_SOptional | Interval in seconds between expired-lease reaper sweeps |
CENTRAL_REQUEST_STATE_KEY_FILEOptional, secret | Optional restart-safe request-state keyring path |
PURSERS_LEGACY_TOOLSOptional | String flag: use 1 to expose deprecated coordination tools; use 0 to keep them hidden |
STORE_BACKENDOptional | Central storage backend; Pursers supports SQLite |
Details
| Package | [email protected] (PYPI, streamable-http) |
| Package | [email protected] (PYPI, stdio) |
| First published | 5 Oct 2026 |
| Last updated | 5 Oct 2026 |
| Registry name | io.github.swisspra/pursers |
More ai and media servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
