Skip to content

Commit 252cb4b

Browse files
authored
Merge pull request #16 from metatool-ai/oauth
OAuth
2 parents aff93c3 + 9e3f3c8 commit 252cb4b

File tree

5 files changed

+28
-6
lines changed

5 files changed

+28
-6
lines changed

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@metamcp/mcp-server-metamcp",
3-
"version": "0.4.5",
3+
"version": "0.4.6",
44
"description": "MCP Server MetaMCP manages all your other MCPs in one MCP.",
55
"scripts": {
66
"build": "tsc && shx chmod +x dist/*.js",

src/client.ts

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,22 @@ export const createMetaMcpClient = (
3030
};
3131
transport = new StdioClientTransport(stdioParams);
3232
} else if (serverParams.type === "SSE" && serverParams.url) {
33-
transport = new SSEClientTransport(new URL(serverParams.url));
33+
if (!serverParams.oauth_tokens) {
34+
transport = new SSEClientTransport(new URL(serverParams.url));
35+
} else {
36+
const headers: HeadersInit = {};
37+
headers[
38+
"Authorization"
39+
] = `Bearer ${serverParams.oauth_tokens.access_token}`;
40+
transport = new SSEClientTransport(new URL(serverParams.url), {
41+
requestInit: {
42+
headers,
43+
},
44+
eventSourceInit: {
45+
fetch: (url, init) => fetch(url, { ...init, headers }),
46+
},
47+
});
48+
}
3449
} else {
3550
console.error(`Unsupported server type: ${serverParams.type}`);
3651
return { client: undefined, transport: undefined };
@@ -39,7 +54,7 @@ export const createMetaMcpClient = (
3954
const client = new Client(
4055
{
4156
name: "MetaMCP",
42-
version: "0.4.5",
57+
version: "0.4.6",
4358
},
4459
{
4560
capabilities: {

src/fetch-metamcp.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,13 @@ export interface ServerParameters {
1818
created_at: string;
1919
profile_uuid: string;
2020
status: string;
21+
oauth_tokens?: {
22+
access_token: string;
23+
token_type: string;
24+
expires_in?: number | undefined;
25+
scope?: string | undefined;
26+
refresh_token?: string | undefined;
27+
} | null;
2128
}
2229

2330
let _mcpServersCache: Record<string, ServerParameters> | null = null;

src/mcp-proxy.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ export const createServer = async () => {
4040
const server = new Server(
4141
{
4242
name: "MetaMCP",
43-
version: "0.4.5",
43+
version: "0.4.6",
4444
},
4545
{
4646
capabilities: {

0 commit comments

Comments
 (0)