@rotifer/mcp-server 0.8.2 → 0.8.5

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.
@@ -0,0 +1,130 @@
1
+ /**
2
+ * Wire types: snake_case DTOs matching PostgREST / Supabase row shapes.
3
+ * Application code should use the camelCase types from cloud.ts.
4
+ * These types exist to make the boundary between database and app explicit.
5
+ */
6
+ export interface GeneRow {
7
+ id: string;
8
+ name: string;
9
+ domain: string;
10
+ version: string;
11
+ fidelity: string;
12
+ description: string;
13
+ phenotype: Record<string, unknown> | null;
14
+ wasm_size: number | null;
15
+ wasm_hash: string | null;
16
+ content_hash: string | null;
17
+ downloads: number | null;
18
+ reputation_score: number | null;
19
+ previous_version_id: string | null;
20
+ changelog: string | null;
21
+ published: boolean;
22
+ owner_id: string;
23
+ created_at: string;
24
+ updated_at: string;
25
+ profiles?: {
26
+ username: string;
27
+ } | null;
28
+ }
29
+ export interface SearchGeneRow {
30
+ id: string;
31
+ name: string;
32
+ domain: string;
33
+ version: string;
34
+ fidelity: string;
35
+ description: string;
36
+ wasm_size: number | null;
37
+ downloads: number | null;
38
+ reputation_score: number | null;
39
+ created_at: string;
40
+ updated_at: string;
41
+ owner_username: string | null;
42
+ rank: number;
43
+ previous_version_id?: string | null;
44
+ changelog?: string | null;
45
+ }
46
+ export interface ArenaEntryRow {
47
+ gene_id: string;
48
+ domain: string;
49
+ fitness_value: number;
50
+ safety_score: number;
51
+ success_rate: number;
52
+ latency_score: number;
53
+ resource_efficiency: number;
54
+ total_calls: number;
55
+ last_evaluated: string;
56
+ genes?: {
57
+ id: string;
58
+ name: string;
59
+ fidelity: string;
60
+ profiles?: {
61
+ username: string;
62
+ } | null;
63
+ } | null;
64
+ }
65
+ export interface GeneStatsRpcResult {
66
+ total: number | null;
67
+ last_7d: number | null;
68
+ last_30d: number | null;
69
+ last_90d: number | null;
70
+ error?: string;
71
+ }
72
+ export interface LeaderboardRow {
73
+ user_id: string;
74
+ username: string;
75
+ avatar_url: string | null;
76
+ score: number;
77
+ genes_published: number;
78
+ total_downloads: number | string;
79
+ arena_wins: number;
80
+ }
81
+ export interface ProfileRow {
82
+ id: string;
83
+ username: string;
84
+ avatar_url: string | null;
85
+ created_at: string;
86
+ developer_reputation?: DeveloperReputationRow | DeveloperReputationRow[] | null;
87
+ }
88
+ export interface DeveloperReputationRow {
89
+ user_id: string;
90
+ score: number;
91
+ genes_published: number;
92
+ total_downloads: number | string;
93
+ arena_wins: number;
94
+ community_bonus?: number;
95
+ }
96
+ export interface GeneReputationRow {
97
+ gene_id: string;
98
+ score: number;
99
+ arena_score: number;
100
+ usage_score: number;
101
+ stability_score: number;
102
+ epoch: number;
103
+ computed_at: string;
104
+ genes?: {
105
+ name: string;
106
+ } | null;
107
+ }
108
+ export interface GeneVersionRow {
109
+ id: string;
110
+ version: string;
111
+ changelog: string | null;
112
+ previous_version_id: string | null;
113
+ created_at: string;
114
+ published?: boolean;
115
+ owner_id?: string;
116
+ profiles?: {
117
+ username: string;
118
+ } | null;
119
+ }
120
+ export interface McpCallLogRow {
121
+ tool_name: string;
122
+ gene_id: string | null;
123
+ success: boolean;
124
+ latency_ms: number;
125
+ }
126
+ export interface DomainSuggestionRow {
127
+ domain: string;
128
+ description: string | null;
129
+ gene_count: number;
130
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Wire types: snake_case DTOs matching PostgREST / Supabase row shapes.
3
+ * Application code should use the camelCase types from cloud.ts.
4
+ * These types exist to make the boundary between database and app explicit.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=wire-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wire-types.js","sourceRoot":"","sources":["../src/wire-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@rotifer/mcp-server",
3
- "version": "0.8.2",
3
+ "version": "0.8.5",
4
4
  "mcpName": "io.github.rotifer-protocol/mcp-server",
5
- "description": "Rotifer Protocol MCP Server — search, compare, explore, install, and execute Genes via Model Context Protocol",
5
+ "description": "Rotifer MCP Server — AI agents search, compare, and rank Genes (modular AI skills) from a living ecosystem of 50+ capabilities. Zero config.",
6
6
  "type": "module",
7
7
  "bin": {
8
8
  "mcp-server": "./dist/index.js",
@@ -16,7 +16,10 @@
16
16
  "build": "tsc",
17
17
  "dev": "tsx src/index.ts",
18
18
  "start": "node dist/index.js",
19
+ "serve": "node dist/index.js serve",
20
+ "dev:http": "tsx src/index.ts serve",
19
21
  "prepublishOnly": "npm run build",
22
+ "lint": "eslint src/",
20
23
  "test": "vitest run",
21
24
  "test:watch": "vitest"
22
25
  },
@@ -38,8 +41,11 @@
38
41
  },
39
42
  "devDependencies": {
40
43
  "@types/node": "^25.5.0",
44
+ "@vitest/coverage-v8": "^4.1.2",
45
+ "eslint": "^10.1.0",
41
46
  "tsx": "^4.0.0",
42
47
  "typescript": "^5.4.0",
48
+ "typescript-eslint": "^8.58.0",
43
49
  "vitest": "^4.1.0"
44
50
  },
45
51
  "engines": {