@orcalang/orca-mcp-server 0.1.3 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/server.js +26 -6
- package/dist/server.js.map +1 -1
- package/package.json +3 -3
package/dist/server.js
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { createRequire } from 'module';
|
|
2
3
|
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
3
4
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
4
5
|
import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
|
|
5
|
-
import { parseSkill, verifySkill, compileSkill, generateActionsSkill, refineSkill,
|
|
6
|
+
import { parseSkill, verifySkill, compileSkill, generateActionsSkill, refineSkill, generateAutoSkill, generateOrcaMultiDraftSkill, ORCA_SYNTAX_REFERENCE, MULTI_MACHINE_SYNTAX_ADDENDUM, } from '@orcalang/orca-lang/skills';
|
|
6
7
|
import { ORCA_TOOLS } from '@orcalang/orca-lang/tools';
|
|
8
|
+
const _require = createRequire(import.meta.url);
|
|
9
|
+
const { version: SERVER_VERSION } = _require('../package.json');
|
|
7
10
|
// ── Node.js version check ─────────────────────────────────────────────────────
|
|
8
11
|
const [major] = process.version.slice(1).split('.').map(Number);
|
|
9
12
|
if (major < 20) {
|
|
@@ -14,7 +17,9 @@ const TOOLS = ORCA_TOOLS;
|
|
|
14
17
|
// ── MCP server instructions (injected into every AI context on connect) ───────
|
|
15
18
|
const MCP_INSTRUCTIONS = `This MCP server exposes Orca state machine tools. Orca is a markdown-based state machine language designed for LLM code generation.
|
|
16
19
|
|
|
17
|
-
Recommended workflow: generate_machine
|
|
20
|
+
Recommended workflow: generate_machine → verify_machine → refine_machine (if errors) → verify_machine → compile_machine → generate_actions.
|
|
21
|
+
|
|
22
|
+
Each step is a discrete tool call so progress is visible between calls. generate_machine returns a draft; always call verify_machine next to check it.
|
|
18
23
|
|
|
19
24
|
${ORCA_SYNTAX_REFERENCE}
|
|
20
25
|
|
|
@@ -37,13 +42,11 @@ async function callTool(name, args) {
|
|
|
37
42
|
}
|
|
38
43
|
case 'generate_machine': {
|
|
39
44
|
const spec = args.spec;
|
|
40
|
-
|
|
41
|
-
return generateOrcaSkill(spec, undefined, maxIterations);
|
|
45
|
+
return generateAutoSkill(spec);
|
|
42
46
|
}
|
|
43
47
|
case 'generate_multi_machine': {
|
|
44
48
|
const spec = args.spec;
|
|
45
|
-
|
|
46
|
-
return generateOrcaMultiSkill(spec, undefined, maxIterations);
|
|
49
|
+
return generateOrcaMultiDraftSkill(spec);
|
|
47
50
|
}
|
|
48
51
|
case 'generate_actions': {
|
|
49
52
|
const source = args.source;
|
|
@@ -66,6 +69,23 @@ async function callTool(name, args) {
|
|
|
66
69
|
}
|
|
67
70
|
return refineSkill({ source }, errors, undefined, maxIterations);
|
|
68
71
|
}
|
|
72
|
+
case 'server_status': {
|
|
73
|
+
const apiKeyConfigured = !!(process.env.ORCA_API_KEY ||
|
|
74
|
+
process.env.ANTHROPIC_API_KEY ||
|
|
75
|
+
process.env.OPENAI_API_KEY ||
|
|
76
|
+
process.env.MINIMAX_API_KEY);
|
|
77
|
+
return {
|
|
78
|
+
version: SERVER_VERSION,
|
|
79
|
+
node_version: process.version,
|
|
80
|
+
provider: process.env.ORCA_PROVIDER ?? 'anthropic',
|
|
81
|
+
model: process.env.ORCA_MODEL ?? 'claude-sonnet-4-6',
|
|
82
|
+
base_url: process.env.ORCA_BASE_URL ?? null,
|
|
83
|
+
code_generator: process.env.ORCA_CODE_GENERATOR ?? 'typescript',
|
|
84
|
+
max_tokens: process.env.ORCA_MAX_TOKENS ? parseInt(process.env.ORCA_MAX_TOKENS, 10) : 4096,
|
|
85
|
+
temperature: process.env.ORCA_TEMPERATURE ? parseFloat(process.env.ORCA_TEMPERATURE) : 0.7,
|
|
86
|
+
api_key_configured: apiKeyConfigured,
|
|
87
|
+
};
|
|
88
|
+
}
|
|
69
89
|
default:
|
|
70
90
|
throw new Error(`Unknown tool: ${name}`);
|
|
71
91
|
}
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GAEvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,UAAU,EACV,WAAW,EACX,YAAY,EACZ,oBAAoB,EACpB,WAAW,EACX,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@orcalang/orca-mcp-server",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.1.7",
|
|
4
|
+
"description": "LLM agents can now build verified state machines. Generate, parse, verify, and compile Orca state machines from natural language specs — topology guarantees before any code runs.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/server.js",
|
|
7
7
|
"bin": {
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
],
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"@modelcontextprotocol/sdk": "^1.28.0",
|
|
15
|
-
"@orcalang/orca-lang": "0.1.
|
|
15
|
+
"@orcalang/orca-lang": "0.1.6"
|
|
16
16
|
},
|
|
17
17
|
"devDependencies": {
|
|
18
18
|
"@types/node": "^20.10.0",
|