MCP低风险未认领
Pursers
Coordinate AI-agent work on a local-first, owner-controlled MCP board
swisspraswisspra/pursers
server.json
{
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"name": "io.github.swisspra/pursers",
"description": "Coordinate AI-agent work on a local-first, owner-controlled MCP board",
"title": "Pursers",
"repository": {
"url": "https://github.com/swisspra/Pursers",
"source": "github"
},
"version": "5.2.1",
"packages": [
{
"registryType": "pypi",
"identifier": "pursers-central",
"version": "0.1.8",
"runtimeHint": "uvx",
"transport": {
"type": "streamable-http",
"url": "http://127.0.0.1:8766/mcp"
},
"packageArguments": [
{
"description": "Private directory for the Central SQLite store and request-state keys",
"isRequired": true,
"format": "filepath",
"type": "named",
"name": "--data-root"
}
],
"environmentVariables": [
{
"description": "Loopback bind host used by the packaged runtime",
"default": "127.0.0.1",
"name": "ONBOARD_CENTRAL_HOST"
},
{
"description": "Loopback bind port used by the packaged runtime",
"format": "number",
"default": "8766",
"name": "ONBOARD_CENTRAL_PORT"
},
{
"description": "Private Central data directory; --data-dir/--data-root is the equivalent CLI input",
"format": "filepath",
"name": "ONBOARD_CENTRAL_DATA_DIR"
},
{
"description": "Packaged runtime log level",
"default": "info",
"name": "ONBOARD_CENTRAL_LOG_LEVEL"
},
{
"description": "Optional comma-separated bare Host names accepted in addition to the bind host",
"name": "ONBOARD_CENTRAL_ALLOWED_HOSTS"
},
{
"description": "Optional TLS certificate path; requires ONBOARD_CENTRAL_TLS_KEYFILE",
"format": "filepath",
"name": "ONBOARD_CENTRAL_TLS_CERTFILE"
},
{
"description": "Optional TLS private-key path; requires ONBOARD_CENTRAL_TLS_CERTFILE",
"format": "filepath",
"isSecret": true,
"name": "ONBOARD_CENTRAL_TLS_KEYFILE"
},
{
"description": "Central admission policy; Pursers supports invite-only admission",
"value": "invite",
"name": "CENTRAL_ADMISSION"
},
{
"description": "Central authentication mode; Pursers supports JWT authentication",
"value": "jwt",
"name": "CENTRAL_AUTH_MODE"
},
{
"description": "Path to the issuer public JWKS used to verify seat credentials",
"isRequired": true,
"format": "filepath",
"name": "CENTRAL_JWKS_PATH"
},
{
"description": "MCP resource URL in audience and resource claims; defaults to the loopback bind URL",
"name": "CENTRAL_JWT_AUDIENCE"
},
{
"description": "Allowed JWT clock skew in seconds",
"format": "number",
"default": "30",
"name": "CENTRAL_JWT_CLOCK_SKEW"
},
{
"description": "Exact issuer URL in every accepted seat credential",
"isRequired": true,
"name": "CENTRAL_JWT_ISSUER"
},
{
"description": "Maximum concurrent event streams accepted per principal",
"format": "number",
"default": "32",
"name": "CENTRAL_PRINCIPAL_STREAM_CAP"
},
{
"description": "Interval in seconds between expired-lease reaper sweeps",
"format": "number",
"default": "30.0",
"name": "CENTRAL_REAPER_INTERVAL_S"
},
{
"description": "Optional restart-safe request-state keyring path",
"format": "filepath",
"isSecret": true,
"name": "CENTRAL_REQUEST_STATE_KEY_FILE"
},
{
"description": "String flag: use 1 to expose deprecated coordination tools; use 0 to keep them hidden",
"format": "string",
"default": "0",
"name": "PURSERS_LEGACY_TOOLS"
},
{
"description": "Central storage backend; Pursers supports SQLite",
"value": "sqlite",
"name": "STORE_BACKEND"
}
]
},
{
"registryType": "pypi",
"identifier": "pursers-client",
"version": "0.1.9",
"runtimeHint": "uvx",
"transport": {
"type": "stdio"
},
"runtimeArguments": [
{
"description": "Install the release-manifest-pinned client package before running pursers-mcp",
"value": "pursers-client==0.1.9",
"type": "named",
"name": "--from"
}
],
"packageArguments": [
{
"description": "The stdio MCP relay console script",
"value": "pursers-mcp",
"type": "positional"
},
{
"description": "URL of the Pursers Central MCP service",
"isRequired": true,
"type": "named",
"name": "--central-url",
"valueHint": "central_url"
},
{
"description": "Pursers board ID exposed through this relay",
"isRequired": true,
"type": "named",
"name": "--board",
"valueHint": "board_id"
},
{
"description": "Path to the bearer-token file; token values are never accepted here",
"isRequired": true,
"format": "filepath",
"type": "named",
"name": "--token-file",
"valueHint": "token_file"
},
{
"description": "Optional CA certificate file for the Central connection",
"format": "filepath",
"type": "named",
"name": "--ca-file",
"valueHint": "ca_file"
},
{
"description": "Tool surface exposed by the relay",
"default": "default",
"choices": [
"default",
"worker",
"reviewer",
"all"
],
"type": "named",
"name": "--tools"
}
]
}
],
"_meta": {
"io.modelcontextprotocol.registry/publisher-provided": {
"releaseNote": "Release-train bumps keep the product, central, and client versions in sync with tools/release_versions.toml; tools/check_server_json.py fails on drift.",
"versionSource": "tools/release_versions.toml"
}
}
}权限
声明检测
运行代码—
python安装—
pypi:pursers-central@0.1.8pypi:pursers-client@0.1.9安装时运行脚本—无
网络无无
需要的凭据
CENTRAL_REQUEST_STATE_KEY_FILEONBOARD_CENTRAL_TLS_KEYFILECENTRAL_REQUEST_STATE_KEY_FILEONBOARD_CENTRAL_TLS_KEYFILE工作区外的路径—无
智能体工具—无
检查
低风险 · 没有发现需要提醒的地方。
未经人工审核 · 已做规则检查;模型审核尚未开启。
版本
- #15.2.1最新2026年10月7日
Pursers在 Codeg 中打开