@topolo/mcp 0.8.0 → 0.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -79,15 +79,43 @@ ready-made agent guide that covers both the CLI and this MCP.
79
79
  | ---------------------------- | ----------------------------------------------------- |
80
80
  | `TOPOLO_API_KEY` | Platform API key (preferred) |
81
81
  | `TOPOLO_ACCESS_TOKEN` | Short-lived JWT (dev/testing) |
82
+ | `TOPOLO_ENV` | Credential environment (production by default) |
83
+ | `TOPOLO_CONTEXT` | Pin one stored personal/org context without activating it |
82
84
  | `TOPOLO_AGENT_NAME` | Human-readable agent label for audit logs |
83
85
  | `TOPOLO_SERVICE_URL_<ID>` | Override a service base URL (e.g. `_AUTH`, `_MAIL`) |
84
86
 
85
87
  Exactly one credential var must be set. If both are present, `TOPOLO_API_KEY`
86
88
  wins.
87
89
 
90
+ For concurrent organization or environment operation, run one named MCP server
91
+ per stored context. `TOPOLO_CONTEXT` accepts an exact key from `topolo context
92
+ list --json` (for example `personal` or `org:org_topolo`) or a unique stored
93
+ organization id, slug, or name. The server reads and refreshes that credential
94
+ without changing the CLI's active context, so separate agent processes cannot
95
+ race one shared context pointer:
96
+
97
+ ```json
98
+ {
99
+ "mcpServers": {
100
+ "topolo-topolo": {
101
+ "command": "topolo-mcp",
102
+ "env": { "TOPOLO_ENV": "production", "TOPOLO_CONTEXT": "org:org_topolo" }
103
+ },
104
+ "topolo-personal": {
105
+ "command": "topolo-mcp",
106
+ "env": { "TOPOLO_ENV": "production", "TOPOLO_CONTEXT": "personal" }
107
+ }
108
+ }
109
+ }
110
+ ```
111
+
112
+ Do not combine `TOPOLO_CONTEXT` with an injected API key or access token: those
113
+ credentials already carry their own immutable context.
114
+
88
115
  ## Startup sequence
89
116
 
90
- 1. Resolve the credential from env. **Refuse to start** if none is set.
117
+ 1. Resolve an injected credential, a pinned stored context, or the environment's
118
+ active stored credential. **Refuse to start** if none is available.
91
119
  2. Call `GET /api/me` to load the user's granted scopes + role.
92
120
  3. Connect the stdio transport and begin serving MCP requests.
93
121
  4. Advertise a fixed, bounded discovery/invocation surface. Agents search one