@aiready/ast-mcp-server 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/README.md +118 -0
- package/package.json +65 -0
- package/smithery.yaml +7 -0
package/README.md
ADDED
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
# @aiready/ast-mcp-server
|
|
2
|
+
|
|
3
|
+
AST-aware codebase exploration tools for Model Context Protocol. Explore and navigate multi-project TypeScript/JavaScript codebases with high precision using AST and type information.
|
|
4
|
+
|
|
5
|
+
## Installation & Distribution Channels
|
|
6
|
+
|
|
7
|
+
You can install and use the AIReady AST MCP server through several supported channels.
|
|
8
|
+
|
|
9
|
+
### 1. Dedicated MCP Registries
|
|
10
|
+
|
|
11
|
+
- **[Smithery](https://smithery.ai/server/@aiready/ast-mcp-server)**: Discover and install our server directly via the Smithery CLI:
|
|
12
|
+
```bash
|
|
13
|
+
npx @smithery/cli install @aiready/ast-mcp-server
|
|
14
|
+
```
|
|
15
|
+
- **[Glama](https://glama.ai/mcp/@aiready/ast-mcp-server)**: View our listing and integration options on the Glama directory.
|
|
16
|
+
- **[Pulsar](https://gotopulsar.com)**: Find us on the Pulsar registry for MCP servers.
|
|
17
|
+
|
|
18
|
+
### 2. Direct IDE / Assistant Integrations
|
|
19
|
+
|
|
20
|
+
#### Claude Desktop App
|
|
21
|
+
|
|
22
|
+
To use the AIReady AST MCP server in the Claude Desktop app, add the following configuration to your `claude_desktop_config.json`:
|
|
23
|
+
|
|
24
|
+
```json
|
|
25
|
+
"mcpServers": {
|
|
26
|
+
"aiready-ast": {
|
|
27
|
+
"command": "npx",
|
|
28
|
+
"args": ["-y", "@aiready/ast-mcp-server"]
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
#### Cursor IDE
|
|
34
|
+
|
|
35
|
+
1. Open Cursor Settings.
|
|
36
|
+
2. Navigate to **Features** -> **MCP Servers**.
|
|
37
|
+
3. Add a new server.
|
|
38
|
+
4. Set the command to: `npx -y @aiready/ast-mcp-server`
|
|
39
|
+
|
|
40
|
+
#### Windsurf IDE
|
|
41
|
+
|
|
42
|
+
1. Open Windsurf Settings or local environment configuration.
|
|
43
|
+
2. Add a new MCP Server integration.
|
|
44
|
+
3. Configure the execution command: `npx -y @aiready/ast-mcp-server`
|
|
45
|
+
|
|
46
|
+
## Features
|
|
47
|
+
|
|
48
|
+
- **Resolve Definition**: Pinpoint exactly where symbols are defined using TypeScript's type system.
|
|
49
|
+
- **Find References**: Locate every usage of a function, class, or variable.
|
|
50
|
+
- **Find Implementations**: Discover concrete implementations of interfaces and abstract classes.
|
|
51
|
+
- **File Structure overview**: Get a high-level summary of imports, exports, and declarations.
|
|
52
|
+
- **Search Code**: Blazingly fast regex search powered by Ripgrep.
|
|
53
|
+
- **Symbol Documentation**: Instantly fetch JSDoc/TSDoc for any symbol.
|
|
54
|
+
- **Symbol Indexing**: Project-wide symbol indexing for rapid navigation.
|
|
55
|
+
|
|
56
|
+
## Tools
|
|
57
|
+
|
|
58
|
+
### 1. `resolve_definition`
|
|
59
|
+
|
|
60
|
+
Find where a symbol is defined.
|
|
61
|
+
|
|
62
|
+
- `symbol`: Name of the symbol.
|
|
63
|
+
- `path`: Project root or target directory.
|
|
64
|
+
|
|
65
|
+
### 2. `find_references`
|
|
66
|
+
|
|
67
|
+
Find all usages of a symbol.
|
|
68
|
+
|
|
69
|
+
- `symbol`: Symbol name.
|
|
70
|
+
- `path`: Project root.
|
|
71
|
+
|
|
72
|
+
### 3. `find_implementations`
|
|
73
|
+
|
|
74
|
+
Find implementations for interfaces/abstract classes.
|
|
75
|
+
|
|
76
|
+
- `symbol`: Symbol name.
|
|
77
|
+
- `path`: Project root.
|
|
78
|
+
|
|
79
|
+
### 4. `get_file_structure`
|
|
80
|
+
|
|
81
|
+
Overview of a file's structure.
|
|
82
|
+
|
|
83
|
+
- `file`: Path to the file.
|
|
84
|
+
|
|
85
|
+
### 5. `search_code`
|
|
86
|
+
|
|
87
|
+
Fast regex search via bundled ripgrep.
|
|
88
|
+
|
|
89
|
+
- `pattern`: Regex pattern.
|
|
90
|
+
- `path`: Directory to search.
|
|
91
|
+
- `filePattern`: Optional glob filter.
|
|
92
|
+
|
|
93
|
+
### 6. `get_symbol_docs`
|
|
94
|
+
|
|
95
|
+
Retrieve only documentation for a symbol.
|
|
96
|
+
|
|
97
|
+
- `symbol`: Symbol name.
|
|
98
|
+
- `path`: Project root.
|
|
99
|
+
|
|
100
|
+
### 7. `build_symbol_index`
|
|
101
|
+
|
|
102
|
+
Build/Warm project-wide index.
|
|
103
|
+
|
|
104
|
+
- `path`: Project root to index.
|
|
105
|
+
|
|
106
|
+
## Quick Start
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
npx @aiready/ast-mcp-server
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## Development
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
pnpm install
|
|
116
|
+
npm run build
|
|
117
|
+
npm run test
|
|
118
|
+
```
|
package/package.json
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@aiready/ast-mcp-server",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "The AIReady AST-aware Model Context Protocol (MCP) Server. Explore and navigate multi-project TypeScript/JavaScript codebases with high precision using AST and type information.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"aiready",
|
|
7
|
+
"mcp",
|
|
8
|
+
"model-context-protocol",
|
|
9
|
+
"ast",
|
|
10
|
+
"typescript",
|
|
11
|
+
"javascript",
|
|
12
|
+
"codebase-exploration",
|
|
13
|
+
"codebase-navigation",
|
|
14
|
+
"ai-readiness",
|
|
15
|
+
"agent-grounding",
|
|
16
|
+
"ts-morph"
|
|
17
|
+
],
|
|
18
|
+
"homepage": "https://github.com/getaiready/aiready-ast-mcp-server#readme",
|
|
19
|
+
"bugs": {
|
|
20
|
+
"url": "https://github.com/getaiready/aiready-ast-mcp-server/issues"
|
|
21
|
+
},
|
|
22
|
+
"repository": {
|
|
23
|
+
"type": "git",
|
|
24
|
+
"url": "https://github.com/getaiready/aiready-ast-mcp-server.git"
|
|
25
|
+
},
|
|
26
|
+
"license": "MIT",
|
|
27
|
+
"publishConfig": {
|
|
28
|
+
"access": "public"
|
|
29
|
+
},
|
|
30
|
+
"type": "module",
|
|
31
|
+
"main": "./dist/index.js",
|
|
32
|
+
"module": "./dist/index.mjs",
|
|
33
|
+
"bin": {
|
|
34
|
+
"ast-mcp-server": "./dist/index.js",
|
|
35
|
+
"aiready-ast-mcp": "./dist/index.js"
|
|
36
|
+
},
|
|
37
|
+
"files": [
|
|
38
|
+
"dist",
|
|
39
|
+
"smithery.yaml"
|
|
40
|
+
],
|
|
41
|
+
"dependencies": {
|
|
42
|
+
"@modelcontextprotocol/sdk": "^1.0.1",
|
|
43
|
+
"@vscode/ripgrep": "^1.17.1",
|
|
44
|
+
"glob": "^13.0.6",
|
|
45
|
+
"ts-morph": "^25.0.0",
|
|
46
|
+
"zod": "^3.24.2"
|
|
47
|
+
},
|
|
48
|
+
"devDependencies": {
|
|
49
|
+
"@types/node": "^24.10.13",
|
|
50
|
+
"tsup": "^8.3.5",
|
|
51
|
+
"typescript": "^5.9.3",
|
|
52
|
+
"vitest": "^4.1.1"
|
|
53
|
+
},
|
|
54
|
+
"peerDependencies": {
|
|
55
|
+
"typescript": "^5.9.3"
|
|
56
|
+
},
|
|
57
|
+
"scripts": {
|
|
58
|
+
"build": "tsup",
|
|
59
|
+
"dev": "tsup --watch",
|
|
60
|
+
"test": "vitest",
|
|
61
|
+
"lint": "eslint src",
|
|
62
|
+
"type-check": "tsc --noEmit",
|
|
63
|
+
"clean": "rm -rf dist"
|
|
64
|
+
}
|
|
65
|
+
}
|