Files
nocobase-mcp/install-manifest.json
T
nac 9f3d3ad5fc
CI / test (macos-latest) (push) Canceled after 0s
CI / test (ubuntu-latest) (push) Canceled after 0s
CI / test (windows-latest) (push) Canceled after 0s
feat: harden install and resumable OAuth login
2026-08-28 07:01:20 +00:00

104 lines
3.6 KiB
JSON

{
"schemaVersion": 3,
"id": "com.nocobase.crm-mcp",
"name": "NocoBase CRM MCP",
"version": "0.4.0",
"distribution": {
"repository": "https://git.justconn.top/gitea-admin/nocobase-mcp",
"branch": "main",
"strategy": "resolve-latest-commit-then-pin",
"releaseRequired": false,
"guide": "INSTALL.md from the resolved full commit SHA",
"sourceArchive": "Gitea source archive for the resolved full commit SHA",
"build": ["npm ci", "npm run check", "npm test", "npm run build", "npm pack"],
"accessRequirement": "Source download requires an authenticated user or Agent with explicit Gitea repository access."
},
"runtime": {
"location": "user-device",
"defaultTransport": "stdio",
"node": ">=20.11",
"packageFormat": "commit-pinned locally bundled npm tarball",
"runtimeNpmDependencies": 0,
"nocobaseCli": false,
"python": false
},
"nocobase": {
"apiBaseUrl": "https://justconn.top/api",
"userConfigurableEndpoint": false,
"oauthIssuer": "https://justconn.top/api",
"oauthResource": "https://justconn.top/api/"
},
"installation": {
"requiredTools": ["node", "npm"],
"operationDetection": ["fresh-install", "in-place-update", "repair", "already-current"],
"supportsInPlaceUpdate": true,
"sameCommitBuildSkip": true,
"installReceipt": {
"path": "<install-prefix>/install-receipt.json",
"schemaVersion": 1,
"posixFileMode": "0600",
"containsSecrets": false
},
"sourceCheckout": false,
"temporarySourceArchiveBuild": true,
"fallbackToRelease": false,
"globalPackageInstall": false,
"persistentArtifacts": [
"isolated user-data npm prefix",
"non-secret install receipt",
"non-secret CRM config",
"private per-user credential file",
"MCP client configuration and backup"
],
"preserveOnUpdate": ["CRM config", "per-user OAuth credentials", "read-only or fixed-project-write mode"],
"defaultBackgroundService": false
},
"authentication": {
"type": "oauth-2.1-device-authorization",
"discovery": "https://justconn.top/api/.well-known/openid-configuration",
"scopes": ["api", "offline_access"],
"dynamicClientRegistration": true,
"browserSignIn": true,
"automaticRefresh": true,
"processRestartResumable": true,
"pendingAuthorizationStorage": "short-lived per-user private local file",
"userVerificationDelivery": {
"fields": ["login_url", "verification_uri_complete", "user_code"],
"intendedRecipient": "requesting-user",
"channel": "current-private-conversation",
"shareableWithIntendedRecipient": true,
"publicSharingAllowed": false,
"containsBearerCredentials": false,
"containsDeviceCode": false,
"remoteDesktopRequired": false
},
"manualFallback": "user-controlled-hidden-tty-personal-authorize-key",
"storage": "per-user private local credential file",
"posixFileMode": "0600",
"allowPassword": false,
"allowAgentChatSecret": false,
"allowCommandLineSecret": false,
"allowEnvironmentSecret": false,
"allowDeviceCodeExposure": false
},
"entrypoints": {
"guide": "INSTALL.md",
"binary": "nocobase-crm-mcp",
"guidedCommand": "client-config",
"mcpLoginTool": "nocobase_login",
"mcpLoginStatusTool": "nocobase_login_status",
"cliLoginFallback": "setup --no-browser",
"configTemplate": "config.example.json"
},
"securityDefaults": {
"readOnly": true,
"writes": false,
"rawData": false,
"sharedNocobaseCredential": false,
"networkBind": "none-stdio",
"remoteHttpRequiresTls": true,
"crossOriginAuthRedirect": false,
"browserCredentialRead": false
}
}