Skip to content

Commit 3276880

Browse files
committed
fix(emails): keep MCP setup reachable for returning readers
1 parent 632b378 commit 3276880

10 files changed

Lines changed: 19 additions & 8 deletions

File tree

‎apps/docs/components/docs-layout/docs-sidebar.tsx‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ export function DocsSidebar() {
103103
['Docs', '/introduction'],
104104
['API Reference', '/api-reference/getting-started'],
105105
['CLI', '/cli'],
106-
['MCP', '/mcp'],
106+
['MCP', '/mcp/overview'],
107107
['Academy', '/academy'],
108108
].map(([label, href]) => (
109109
<ChipLink key={href} href={href} onNavigate={() => setOpen(false)}>

‎apps/docs/components/navbar/navbar.tsx‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ const NAV_TABS = [
4646
},
4747
{
4848
label: 'MCP',
49-
href: '/mcp',
49+
href: '/mcp/overview',
5050
match: (p: string) => isInSection(p, 'mcp'),
5151
external: false,
5252
},

‎apps/docs/content/docs/agents/mcp.mdx‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@ import { Callout } from 'fumadocs-ui/components/callout'
99

1010
The Model Context Protocol ([MCP](https://modelcontextprotocol.com/)) is an open standard for connecting AI to external tools and data. Add an MCP server to your workspace and its tools become available to your agents — a way to integrate services Sim doesn't have a built-in integration for.
1111

12+
<Callout type="info">
13+
To use your Sim workspace from Claude, Codex, or Cursor, connect the
14+
[Sim MCP server](/mcp/overview).
15+
</Callout>
16+
1217
## Adding an MCP Server as a Tool
1318

1419
MCP servers provide collections of tools that your agents can use.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
22
"title": "MCP",
33
"root": true,
4-
"pages": ["---Sim MCP---", "index", "authentication", "tools"]
4+
"pages": ["---Sim MCP---", "overview", "authentication", "tools"]
55
}

‎apps/docs/content/docs/platform/self-hosting/environment-variables.mdx‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ import { Callout } from 'fumadocs-ui/components/callout'
3434
| `TRUSTED_ORIGINS` | Comma-separated additional origins to trust for auth (apex + `www`, alias domains) |
3535
| `AUTH_TRUSTED_PROXIES` | Comma-separated reverse-proxy IPs/CIDRs so the client IP cannot be forged through `X-Forwarded-For` |
3636
| `INTERNAL_API_BASE_URL` | Internal URL for server-side self-calls, e.g. `http://sim-app.simstudio.svc.cluster.local:3000`. Optional — falls back to the public base URL. Deliberately ignored inside the Trigger.dev worker runtime, where a cluster-internal address resolves to the worker itself |
37-
| `SIM_MCP_URL` | Public URL of the [Sim MCP server](/mcp) when you serve it on its own host, e.g. `https://mcp.example.com/mcp`. Point that host at the app; Sim serves only the MCP endpoint and its OAuth metadata there, and stops serving `/api/mcp` on the app host so clients use one URL. Optional — defaults to `<NEXT_PUBLIC_APP_URL>/api/mcp` |
37+
| `SIM_MCP_URL` | Public URL of the [Sim MCP server](/mcp/overview) when you serve it on its own host, e.g. `https://mcp.example.com/mcp`. Point that host at the app; Sim serves only the MCP endpoint and its OAuth metadata there, and stops serving `/api/mcp` on the app host so clients use one URL. Optional — defaults to `<NEXT_PUBLIC_APP_URL>/api/mcp` |
3838
| `DATABASE_REPLICA_URL` | Read-replica connection string for log listing, audit logs, and dashboard aggregations. Falls back to the primary when unset |
3939

4040
## AI Providers

‎apps/docs/lib/redirects.ts‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,8 @@ export const DOCS_REDIRECTS: DocsRedirect[] = [
7878
},
7979
{ source: '/building-agents', destination: '/agents', permanent: true },
8080
{ source: '/building-agents/:path*', destination: '/agents/:path*', permanent: true },
81+
// Browsers may retain this permanent redirect; the workspace guide uses /mcp/overview.
82+
{ source: '/mcp', destination: '/agents/mcp', permanent: true },
8183
{ source: '/skills', destination: '/agents/skills', permanent: true },
8284
// tools/ + triggers/<service> unified into per-service integrations/ pages.
8385
// Specific moves first (Next applies the first matching redirect):

‎apps/sim/emails/broadcasts/desktop-cli-search.html‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -486,7 +486,7 @@
486486
"
487487
>
488488
<a
489-
href="https://docs.sim.ai/mcp?utm_source=newsletter&amp;utm_medium=email&amp;utm_campaign=desktop-cli-search&amp;utm_content=mcp_cta"
489+
href="https://docs.sim.ai/mcp/overview?utm_source=newsletter&amp;utm_medium=email&amp;utm_campaign=desktop-cli-search&amp;utm_content=mcp_cta"
490490
target="_blank"
491491
rel="noopener noreferrer"
492492
style="

‎apps/sim/lib/mothership/generated/docs-manifest.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -373,8 +373,8 @@ export const DOCS_MANIFEST: readonly string[] = [
373373
'logs-debugging.mdx',
374374
'logs-debugging/alerts.mdx',
375375
'logs-debugging/logging.mdx',
376-
'mcp.mdx',
377376
'mcp/authentication.mdx',
377+
'mcp/overview.mdx',
378378
'mcp/tools.mdx',
379379
'platform/connected-accounts.mdx',
380380
'platform/costs.mdx',

‎apps/sim/lib/sim-search/live/application.test.ts‎

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,11 @@ vi.mock('@/lib/sim-search/live/service-session', () => ({
3030
}))
3131
vi.mock('@/lib/sim-search/live/http', async (original) => ({
3232
...(await original<typeof import('@/lib/sim-search/live/http')>()),
33-
createNativeClient: () => ({ json: mocks.json, text: vi.fn(), bytes: vi.fn() }),
33+
createNativeClient: () => ({
34+
json: mocks.json,
35+
text: vi.fn(async () => 'Original document text'),
36+
bytes: vi.fn(),
37+
}),
3438
}))
3539
vi.mock('@/lib/sim-search/live/gitlab-admin', () => ({ createAdminGitLabSession: mocks.admin }))
3640
vi.mock('@/lib/sim-search/live/policy-store', () => ({
@@ -518,7 +522,7 @@ describe('authorized live retrieval', () => {
518522
return {
519523
id: 'doc',
520524
name: 'Launch',
521-
mimeType: 'application/pdf',
525+
mimeType: 'application/vnd.google-apps.document',
522526
webViewLink: document.url,
523527
}
524528
controller.abort(reason)

0 commit comments

Comments
 (0)