Example
Every cs.AI paper on arXiv. Every claim signed. Free, today.
This example is the intended OpenAI-native path: the OpenAI Agents SDK handles orchestration, ScienceToStartup stays the system of record, and the authenticated workspace route enforces approvals and durable state.
curl
curl -X POST https://sciencetostartup.com/api/mcp \
-H "Authorization: Bearer s2s_YOUR_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"workspace_run_action","arguments":{"workspace_id":"YOUR_WORKSPACE_ID","run_kind":"workspace_operator","goal":"Assess whether this workspace is mature enough for build-room execution and draft the highest leverage next actions."}}}'Python
from agents import Agent, Runner
from agents.mcp import MCPServerStreamableHttp
workspace_operator = Agent(
name="Workspace Operator Client",
model="gpt-5.4",
mcp_servers=[
MCPServerStreamableHttp(
params={
"url": "https://sciencetostartup.com/api/mcp",
"headers": {"Authorization": "Bearer s2s_YOUR_KEY"},
}
)
],
instructions="Call whoami first, then workspace_run_action with run_kind=workspace_operator and an explicit founder goal.",
)
result = Runner.run_sync(
workspace_operator,
"For workspace YOUR_WORKSPACE_ID, run workspace_operator and return the resulting summary plus proposal refs.",
)TypeScript
import { Agent, run } from "@openai/agents";
import { MCPServerStreamableHttp } from "@openai/agents/mcp";
const mcpServer = new MCPServerStreamableHttp({
url: "https://sciencetostartup.com/api/mcp",
headers: { Authorization: "Bearer s2s_YOUR_KEY" },
});
const agent = new Agent({
name: "Workspace Operator Client",
model: "gpt-5.4",
mcpServers: [mcpServer],
instructions:
"Call whoami first, then workspace_run_action with run_kind=workspace_operator and an explicit founder goal.",
});
const result = await run(
agent,
"Run workspace_operator for YOUR_WORKSPACE_ID and return the final summary, next actions, and proposal refs.",
);