mirror of
https://github.com/supermemoryai/supermemory.git
synced 2026-08-18 04:54:04 +00:00
Co-authored-by: Prasanna <106952318+Prasanna721@users.noreply.github.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com> Co-authored-by: ved015 <vedant.04.mahajan@gmail.com> Co-authored-by: ved015 <ved015@users.noreply.github.com> Co-authored-by: Ishaan Gupta <ishaankone@gmail.com> Co-authored-by: Cursor Agent <cursoragent@cursor.com>
38 lines
1.2 KiB
TypeScript
38 lines
1.2 KiB
TypeScript
import { describe, expect, it } from "vitest"
|
|
import { OAUTH_CREDENTIALS_AVAILABLE, connect } from "./helpers"
|
|
|
|
type ToolLike = {
|
|
name: string
|
|
inputSchema?: { properties?: Record<string, unknown> }
|
|
}
|
|
|
|
const propsOf = (tools: ToolLike[], name: string): Record<string, unknown> =>
|
|
tools.find((t) => t.name === name)?.inputSchema?.properties ?? {}
|
|
|
|
const describeWithAuth = describe.skipIf(!OAUTH_CREDENTIALS_AVAILABLE)
|
|
|
|
describeWithAuth("MCP - space scoping", () => {
|
|
it("keeps per-call containerTag overrides when an obsolete header is sent", async () => {
|
|
const scoped = await connect({
|
|
headers: { "x-sm-project": "obsolete-root-scope" },
|
|
})
|
|
const plain = await connect()
|
|
try {
|
|
const scopedTools = (await scoped.client.listTools()).tools
|
|
const plainTools = (await plain.client.listTools()).tools
|
|
|
|
expect(propsOf(plainTools, "add_memory")).toHaveProperty("containerTag")
|
|
expect(propsOf(plainTools, "search_memory")).toHaveProperty(
|
|
"containerTag",
|
|
)
|
|
|
|
expect(propsOf(scopedTools, "add_memory")).toHaveProperty("containerTag")
|
|
expect(propsOf(scopedTools, "search_memory")).toHaveProperty(
|
|
"containerTag",
|
|
)
|
|
} finally {
|
|
await scoped.close()
|
|
await plain.close()
|
|
}
|
|
})
|
|
})
|