@felan-ai/ext-mcp 0.1.2 → 0.3.0
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 +38 -0
- package/dist/manager.js +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -74,3 +74,41 @@ ambient host config discovery.
|
|
|
74
74
|
All MCP metadata and tool output is bounded and returned inside an explicit
|
|
75
75
|
untrusted-content boundary. OAuth credentials and provider state are never
|
|
76
76
|
included in tool results or details.
|
|
77
|
+
|
|
78
|
+
## Package boundary and requirements
|
|
79
|
+
|
|
80
|
+
The package owns configuration validation, the OAuth-only gateway, transport
|
|
81
|
+
lifecycle, bounded untrusted results, and the model-facing command. A consumer
|
|
82
|
+
must provide `McpOAuthHost`, credential persistence, callback/browser
|
|
83
|
+
presentation, and network policy. The package intentionally has no default
|
|
84
|
+
token store, callback listener, browser launcher, or ambient configuration
|
|
85
|
+
discovery.
|
|
86
|
+
|
|
87
|
+
It requires a compatible `@felan-ai/agent-core` peer, MCP SDK client, and
|
|
88
|
+
TypeBox. Only explicit remote HTTP servers with `auth: 'oauth'` are accepted;
|
|
89
|
+
stdio, sockets, bearer tokens, custom headers, direct tools/resources/prompts,
|
|
90
|
+
MCP Apps, and embedded OAuth secrets are rejected.
|
|
91
|
+
|
|
92
|
+
## Development
|
|
93
|
+
|
|
94
|
+
Source: `packages/ext-mcp` in <https://github.com/felan-ai/felan>.
|
|
95
|
+
|
|
96
|
+
```sh
|
|
97
|
+
corepack enable
|
|
98
|
+
pnpm install --frozen-lockfile
|
|
99
|
+
pnpm --filter @felan-ai/ext-mcp build
|
|
100
|
+
pnpm --filter @felan-ai/ext-mcp type-check
|
|
101
|
+
pnpm --filter @felan-ai/ext-mcp test
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## Related documentation
|
|
105
|
+
|
|
106
|
+
- [MCP workflow](../../docs/user-guide/web-mcp-and-browser.md)
|
|
107
|
+
- [Runtime and security](../../docs/concepts/runtime-and-security.md)
|
|
108
|
+
- [Extension catalog](../../docs/reference/extension-catalog.md)
|
|
109
|
+
|
|
110
|
+
## Attribution
|
|
111
|
+
|
|
112
|
+
Selected gateway behavior is adapted from the reviewed MIT-licensed
|
|
113
|
+
`pi-mcp-adapter` releases. See [NOTICE](NOTICE) and [LICENSE](LICENSE) for
|
|
114
|
+
source commits and MCP SDK attribution.
|
package/dist/manager.js
CHANGED
|
@@ -176,7 +176,7 @@ export async function connectMcpServer(server, provider, signal, fetchFn) {
|
|
|
176
176
|
let previousError;
|
|
177
177
|
for (const kind of kinds) {
|
|
178
178
|
signal.throwIfAborted();
|
|
179
|
-
const client = new Client({ name: 'felan-mcp', version: '0.
|
|
179
|
+
const client = new Client({ name: 'felan-mcp', version: '0.3.0' });
|
|
180
180
|
const transport = kind === 'streamable-http'
|
|
181
181
|
? new StreamableHTTPClientTransport(new URL(server.url), {
|
|
182
182
|
authProvider: provider,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@felan-ai/ext-mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Portable OAuth-only MCP gateway for Felan",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -29,10 +29,10 @@
|
|
|
29
29
|
"typebox": "1.1.38"
|
|
30
30
|
},
|
|
31
31
|
"peerDependencies": {
|
|
32
|
-
"@felan-ai/agent-core": "^0.
|
|
32
|
+
"@felan-ai/agent-core": "^0.6.0"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@felan-ai/agent-core": "0.
|
|
35
|
+
"@felan-ai/agent-core": "0.6.0"
|
|
36
36
|
},
|
|
37
37
|
"publishConfig": {
|
|
38
38
|
"access": "public",
|