SCModeling
Supply-chain network design via simulation, optimization, and greenfield analysis.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"public": {
"url": "https://scmodeling.com/mcp"
}
}
}원격 엔드포인트
https://scmodeling.com/mcpstreamable-http할 수 있는 일
도구 목록
도구 (12)
🟢run_simulation(model_id)
Run a supply-chain simulation on a bundled SCModeling sample model (sdi-db). Returns metrics, inventory time-series, orders, shipments, routing and BOM. ANTI-FABRICATION: the returned numbers come from a real discrete-event simulation run on the sc-sim engine. Quote them VERBATIM in your reply. Do not round, estimate, average, or compute derived figures from training-data recall. If the user asks a follow-up about the same model, re-call this tool rather than recalling numbers from earlier in the conversation.
입력 스키마
{
"type": "object",
"properties": {
"model_id": {
"type": "string",
"enum": [
"simple-sc-demo",
"cookie-making"
],
"description": "Which sample model to simulate"
}
},
"required": [
"model_id"
]
}출력 스키마
{
"type": "object",
"properties": {
"metadata": {
"type": "object",
"description": "Model name, version, timestamp"
},
"metrics": {
"type": "array",
"description": "Top-line scalar KPIs (orders, shipments, simulation_days)"
},
"details": {
"type": "object",
"description": "Full run detail: config, locations, materials, routing, demands, orders, shipments, inventory_timeseries"
}
}
}🟢list_models
List the bundled SCModeling sample supply-chain models. Returns a catalog with each model's id and a short description. Use this before run_simulation to know which model_id values are valid.
입력 스키마
{
"type": "object",
"properties": {}
}출력 스키마
{
"type": "object",
"properties": {
"content": {
"type": "array",
"description": "MCP content blocks — single text block with the response body"
}
}
}🟢get_sc_theory
Reference guide to supply-chain simulation concepts: ordering policies, BOM, FDD formulas, event-driven simulation. Pure static text — no engine call, deterministic output. Use this when the user asks a conceptual 'how does this work' question rather than asking for a number.
입력 스키마
{
"type": "object",
"properties": {}
}출력 스키마
{
"type": "object",
"properties": {
"content": {
"type": "array",
"description": "MCP content blocks — single text block with the response body"
}
}
}🟢explain_optimization
Reference text on supply-chain network optimization — mixed-integer programming (MIP), the structure of decision variables and constraints, the objective function for landed-cost minimization, and the common problem classes (facility selection, sourcing, flow constraints, multi-period, BOM/production, multi-objective). Also covers when to reach for optimization vs simulation. Pure static text — no engine call, deterministic output. Use this when the user asks a conceptual 'how does network optimization work' question. ChiAha's AMOS optimizer (open-source, Odin, GLOP/CBC via OR-Tools) powers the Tariff and Coffee Co-pack demos on the sandbox.
입력 스키마
{
"type": "object",
"properties": {}
}출력 스키마
{
"type": "object",
"properties": {
"content": {
"type": "array",
"description": "MCP content blocks — single text block with the response body"
}
}
}🟢explain_greenfield
Reference text on greenfield analysis — clean-slate facility-location math. Covers the weighted center-of-gravity (Weber) formulation, Weiszfeld's iterative algorithm, Lloyd's-style alternating location-allocation for N facilities, service constraints (% demand vs % customers within a distance band), and the inverse problem of solving for minimum N. Also covers when to use greenfield vs facility selection (the open/close MIP). Pure static text — no engine call, deterministic output. Use this when the user asks a conceptual 'how does greenfield analysis work' or 'where would I put my DCs' question. ChiAha's GreenfieldAnalysis engine powers the US Greenfield Design demo on the sandbox.
입력 스키마
{
"type": "object",
"properties": {}
}출력 스키마
{
"type": "object",
"properties": {
"content": {
"type": "array",
"description": "MCP content blocks — single text block with the response body"
}
}
}🟢explain_simulation
Reference text on supply-chain simulation — how a discrete-event model of a network behaves through time. Covers event-driven execution (future-event list, the consume / check-inventory / place-order / fill / ship / deliver vocabulary), why inventory POSITION rather than on-hand stock drives reordering, which KPIs the engine reports versus which this site derives from the raw order and shipment records, when to reach for simulation, for optimization, and for both together, and the honest limitations of these runs (single deterministic replication, cached results, warm-up inside the reported window, fixed sample parameters). Pure static text — no engine call, deterministic output. Use this when the user asks a conceptual 'how does the simulation work', 'why did this DC stock out', or 'should I simulate or optimize' question rather than asking for a number; call run_simulation when they want actual figures.
입력 스키마
{
"type": "object",
"properties": {}
}출력 스키마
{
"type": "object",
"properties": {
"content": {
"type": "array",
"description": "MCP content blocks — single text block with the response body"
}
}
}🟢list_opt_demos
List the bundled SCModeling optimization demos. Returns id + label + one-line summary for each (Tariff, Coffee Co-pack, SSO Basic). Use this before describe_opt_demo or get_opt_result to know which demo_id values are valid. All demos are precomputed sample-only fixtures — for optimization on real client data, the SCModeling desktop tool is the product.
입력 스키마
{
"type": "object",
"properties": {}
}출력 스키마
{
"type": "object",
"properties": {
"content": {
"type": "array",
"description": "MCP content blocks — single text block with the response body"
}
}
}🟢describe_opt_demo(demo_id)
Full detail on one optimization demo — controls, available scenario keys, sites, fixed parameters, citations, and the key finding the demo illustrates. Use this before get_opt_result to know what scenario_key values are accepted.
입력 스키마
{
"type": "object",
"properties": {
"demo_id": {
"type": "string",
"enum": [
"tariff",
"coffee",
"sso-basic"
],
"description": "Which optimization demo to describe"
}
},
"required": [
"demo_id"
]
}출력 스키마
{
"type": "object",
"properties": {
"content": {
"type": "array",
"description": "MCP content blocks — single text block with the response body"
}
}
}🟢get_opt_result(demo_id, scenario_key)
Get the precomputed result for one scenario of an optimization demo. Returns the verbatim engine output JSON (AMOS for tariff/coffee, SSO output for sso-basic) including the optimal sourcing/production/transport decisions, costs, and any open/close facility variables. ANTI-FABRICATION: every numeric result is verbatim from the optimization engine that ran offline — quote them in your reply, do not round or recompute. Call describe_opt_demo first to learn valid scenario_key formats for each demo.
입력 스키마
{
"type": "object",
"properties": {
"demo_id": {
"type": "string",
"enum": [
"tariff",
"coffee",
"sso-basic"
],
"description": "Which optimization demo"
},
"scenario_key": {
"type": "string",
"description": "Scenario key within the demo. Format varies per demo — call describe_opt_demo for the exact valid keys before guessing. Tariff uses 'APAC=<N>' where N is one of 0, 7.5, 25, 50, 100. Coffee uses '<configKey>|DSL=<N>' where configKey is T/TA/TS/TAS and N is 20-70 in steps of 5 (10c units of $/gal). sso-basic is single-scenario; scenario_key is ignored."
}
},
"required": [
"demo_id"
]
}출력 스키마
{
"type": "object",
"properties": {
"content": {
"type": "array",
"description": "MCP content blocks — single text block with the response body"
}
}
}🟢list_greenfield_demos
List the bundled SCModeling greenfield demos. Returns id + label + one-line summary. Currently one demo (US, 189 customer points). Use this before describe_greenfield_demo or get_greenfield_result.
입력 스키마
{
"type": "object",
"properties": {}
}출력 스키마
{
"type": "object",
"properties": {
"content": {
"type": "array",
"description": "MCP content blocks — single text block with the response body"
}
}
}🟢describe_greenfield_demo(demo_id)
Full detail on one greenfield demo — region, customer count, available dc_count values, and the score-curve elbow finding. Use this before get_greenfield_result to know what dc_count values are precomputed.
입력 스키마
{
"type": "object",
"properties": {
"demo_id": {
"type": "string",
"enum": [
"us"
],
"description": "Which greenfield demo to describe"
}
},
"required": [
"demo_id"
]
}출력 스키마
{
"type": "object",
"properties": {
"content": {
"type": "array",
"description": "MCP content blocks — single text block with the response body"
}
}
}🟢get_greenfield_result(demo_id, dc_count)
Get the precomputed result for one DC count of a greenfield demo. Returns sited DCs (lat/lon + city/state, nearest-city snapped), customer-to-DC assignments, and the score for that DC count. ANTI-FABRICATION: every result is verbatim engine output from greenfield-cli — quote them in your reply, do not round or fabricate cities.
입력 스키마
{
"type": "object",
"properties": {
"demo_id": {
"type": "string",
"enum": [
"us"
],
"description": "Which greenfield demo"
},
"dc_count": {
"type": "string",
"enum": [
"2",
"3",
"4",
"5",
"6",
"7",
"8"
],
"description": "Number of DCs to site (2-8)"
}
},
"required": [
"demo_id",
"dc_count"
]
}출력 스키마
{
"type": "object",
"properties": {
"content": {
"type": "array",
"description": "MCP content blocks — single text block with the response body"
}
}
}커뮤니티
증거