@dudamel/mcp-context 0.1.0
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/context-client.d.ts +70 -0
- package/dist/context-client.d.ts.map +1 -0
- package/dist/context-client.js +118 -0
- package/dist/context-client.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/server.d.ts +4 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +90 -0
- package/dist/server.js.map +1 -0
- package/dist/stdio-server.d.ts +16 -0
- package/dist/stdio-server.d.ts.map +1 -0
- package/dist/stdio-server.js +44 -0
- package/dist/stdio-server.js.map +1 -0
- package/dist/tools/instructions.d.ts +10 -0
- package/dist/tools/instructions.d.ts.map +1 -0
- package/dist/tools/instructions.js +40 -0
- package/dist/tools/instructions.js.map +1 -0
- package/dist/tools/navigate.d.ts +22 -0
- package/dist/tools/navigate.d.ts.map +1 -0
- package/dist/tools/navigate.js +121 -0
- package/dist/tools/navigate.js.map +1 -0
- package/dist/tools/read.d.ts +43 -0
- package/dist/tools/read.d.ts.map +1 -0
- package/dist/tools/read.js +352 -0
- package/dist/tools/read.js.map +1 -0
- package/dist/tools/search.d.ts +16 -0
- package/dist/tools/search.d.ts.map +1 -0
- package/dist/tools/search.js +103 -0
- package/dist/tools/search.js.map +1 -0
- package/dist/types.d.ts +114 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +53 -0
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The MCP speaks to the VFS in one of two modes:
|
|
3
|
+
*
|
|
4
|
+
* - direct: hits the private context-server HTTP API (default inside compose).
|
|
5
|
+
* - proxy: goes through the orchestrator's authenticated /api/context/*
|
|
6
|
+
* routes. Required for remote use (Claude Code on a laptop, etc.).
|
|
7
|
+
*/
|
|
8
|
+
export interface McpContextConfigDirect {
|
|
9
|
+
mode: 'direct';
|
|
10
|
+
baseUrl: string;
|
|
11
|
+
}
|
|
12
|
+
export interface McpContextConfigProxy {
|
|
13
|
+
mode: 'proxy';
|
|
14
|
+
/** Orchestrator base URL (e.g. https://dudamel.example.com). The MCP appends "/api/context". */
|
|
15
|
+
baseUrl: string;
|
|
16
|
+
/** API key sent on every request. */
|
|
17
|
+
apiKey: string;
|
|
18
|
+
}
|
|
19
|
+
export type McpContextConfig = McpContextConfigDirect | McpContextConfigProxy;
|
|
20
|
+
/** One entry in a directory's .index.yaml catalog. */
|
|
21
|
+
export interface CatalogEntry {
|
|
22
|
+
path: string;
|
|
23
|
+
type: 'file' | 'directory';
|
|
24
|
+
description: string;
|
|
25
|
+
}
|
|
26
|
+
export interface DirectoryCatalog {
|
|
27
|
+
description: string;
|
|
28
|
+
entries: CatalogEntry[];
|
|
29
|
+
}
|
|
30
|
+
export interface FileReadResponse {
|
|
31
|
+
content: string;
|
|
32
|
+
size: number;
|
|
33
|
+
path: string;
|
|
34
|
+
}
|
|
35
|
+
export interface GrepHit {
|
|
36
|
+
path: string;
|
|
37
|
+
line: number;
|
|
38
|
+
text: string;
|
|
39
|
+
}
|
|
40
|
+
export interface SearchResult<T> {
|
|
41
|
+
results: T[];
|
|
42
|
+
truncated: boolean;
|
|
43
|
+
}
|
|
44
|
+
export interface StatResponse {
|
|
45
|
+
exists: boolean;
|
|
46
|
+
type?: 'file' | 'directory' | 'other';
|
|
47
|
+
size?: number;
|
|
48
|
+
lines?: number;
|
|
49
|
+
entries?: number;
|
|
50
|
+
modified?: string;
|
|
51
|
+
}
|
|
52
|
+
export interface TreeEntry {
|
|
53
|
+
path: string;
|
|
54
|
+
type: 'file' | 'directory';
|
|
55
|
+
depth: number;
|
|
56
|
+
}
|
|
57
|
+
export interface TreeResponse {
|
|
58
|
+
root: string;
|
|
59
|
+
entries: TreeEntry[];
|
|
60
|
+
truncated: boolean;
|
|
61
|
+
}
|
|
62
|
+
export interface TailResponse {
|
|
63
|
+
content: string;
|
|
64
|
+
returnedLines: number;
|
|
65
|
+
size: number;
|
|
66
|
+
exists: boolean;
|
|
67
|
+
}
|
|
68
|
+
export interface MarkdownHeading {
|
|
69
|
+
line: number;
|
|
70
|
+
level: number;
|
|
71
|
+
text: string;
|
|
72
|
+
}
|
|
73
|
+
export interface ReadSectionResponse {
|
|
74
|
+
exists: boolean;
|
|
75
|
+
headings: MarkdownHeading[];
|
|
76
|
+
match?: {
|
|
77
|
+
heading: MarkdownHeading;
|
|
78
|
+
startLine: number;
|
|
79
|
+
endLine: number;
|
|
80
|
+
content: string;
|
|
81
|
+
ambiguousMatches?: number;
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
export interface YamlKeyEntry {
|
|
85
|
+
key: string;
|
|
86
|
+
type: 'string' | 'number' | 'boolean' | 'null' | 'array' | 'object';
|
|
87
|
+
preview: string;
|
|
88
|
+
}
|
|
89
|
+
export interface ReadYamlResponse {
|
|
90
|
+
exists: boolean;
|
|
91
|
+
keys: YamlKeyEntry[];
|
|
92
|
+
match?: {
|
|
93
|
+
keyPath: string;
|
|
94
|
+
type: 'string' | 'number' | 'boolean' | 'null' | 'array' | 'object';
|
|
95
|
+
content: string;
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
export interface CsvColumn {
|
|
99
|
+
name: string;
|
|
100
|
+
index: number;
|
|
101
|
+
}
|
|
102
|
+
export interface ReadCsvResponse {
|
|
103
|
+
exists: boolean;
|
|
104
|
+
headers: CsvColumn[];
|
|
105
|
+
totalRows: number;
|
|
106
|
+
rows: Record<string, string>[];
|
|
107
|
+
truncated: boolean;
|
|
108
|
+
filterApplied?: {
|
|
109
|
+
column: string;
|
|
110
|
+
value: string;
|
|
111
|
+
matchedRows: number;
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
package/package.json
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@dudamel/mcp-context",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Dudamel Context MCP — stdio client for an org's Dudamel knowledge base (VFS) over its REST API.",
|
|
5
|
+
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"bin": {
|
|
10
|
+
"dudamel-mcp-context": "./dist/stdio-server.js"
|
|
11
|
+
},
|
|
12
|
+
"exports": {
|
|
13
|
+
".": {
|
|
14
|
+
"import": "./dist/index.js",
|
|
15
|
+
"types": "./dist/index.d.ts"
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"files": [
|
|
19
|
+
"dist"
|
|
20
|
+
],
|
|
21
|
+
"repository": {
|
|
22
|
+
"type": "git",
|
|
23
|
+
"url": "git+https://github.com/agents-squad/dudamel.git",
|
|
24
|
+
"directory": "packages/mcp/context"
|
|
25
|
+
},
|
|
26
|
+
"publishConfig": {
|
|
27
|
+
"access": "public"
|
|
28
|
+
},
|
|
29
|
+
"dependencies": {
|
|
30
|
+
"@modelcontextprotocol/sdk": "^1.12.1",
|
|
31
|
+
"js-yaml": "^4.1.0",
|
|
32
|
+
"zod": "^3.24.4"
|
|
33
|
+
},
|
|
34
|
+
"devDependencies": {
|
|
35
|
+
"@types/express": "^5.0.0",
|
|
36
|
+
"@types/js-yaml": "^4.0.9"
|
|
37
|
+
},
|
|
38
|
+
"peerDependencies": {
|
|
39
|
+
"express": "^4.18.0 || ^5.0.0"
|
|
40
|
+
},
|
|
41
|
+
"peerDependenciesMeta": {
|
|
42
|
+
"express": {
|
|
43
|
+
"optional": true
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"scripts": {
|
|
47
|
+
"build": "tsc",
|
|
48
|
+
"lint": "eslint src/",
|
|
49
|
+
"lint:fix": "eslint src/ --fix",
|
|
50
|
+
"test": "vitest run --passWithNoTests",
|
|
51
|
+
"clean": "rm -rf dist"
|
|
52
|
+
}
|
|
53
|
+
}
|