Skip to content

Commit 1b59e93

Browse files
Use the same README for mcp-server and mcp-package
1 parent 13e91d2 commit 1b59e93

File tree

1 file changed

+42
-1
lines changed

1 file changed

+42
-1
lines changed

mcp-package/README.md

Lines changed: 42 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,48 @@ Once configured, you can ask Claude to:
128128
129129
## Data Source
130130

131-
This MCP server contains data for 186+ Drupal tools sourced from the Drupal Tools community project (https://drupaltools.github.io). The data is embedded in the package, so it works offline and doesn't require external API calls.
131+
This MCP server contains data for 160+ Drupal tools sourced from the Drupal Tools community project (https://drupaltools.github.io).
132+
The data is embedded in the package, so it works offline and doesn't require external API calls.
133+
134+
## Development
135+
136+
```bash
137+
git clone https://github.com/drupaltools/drupaltools.github.io
138+
cd drupaltools.github.io/mcp-package
139+
npm install
140+
npm run mcp
141+
```
142+
143+
The server is built using the **JavaScript/TypeScript MCP SDK** (`@modelcontextprotocol/sdk` v1.24.3) with ES modules.
144+
145+
### Key Architecture Decisions:
146+
- **Language**: Pure JavaScript with ES modules (no TypeScript compilation)
147+
- **Transport**: Stdio for easy integration with Claude Desktop
148+
- **Data Loading**: Asynchronous loading with lazy initialization
149+
- **Scoring**: Deterministic scoring algorithm for search relevance
150+
- **Error Handling**: Graceful fallbacks (ID lookup → name lookup)
151+
152+
### Architecture:
153+
```
154+
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
155+
│ YAML Files │────▶│ Load Project │────▶│ Indexed Data │
156+
│ (_data/projects)│ │ Data │ │ (Map) │
157+
└─────────────────┘ └──────────────────┘ └─────────────────┘
158+
159+
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
160+
│ MCP Client │────▶│ Tool Handlers │────▶│ Search/Filter │
161+
│ (any AI tool) │ │ (list/search/get)│ │ Logic │
162+
└─────────────────┘ └──────────────────┘ └─────────────────┘
163+
```
164+
165+
Key features:
166+
167+
- Static content only - no external APIs
168+
- Read-only operations
169+
- Minimal latency and cost
170+
- Automatic indexing on startup (186+ tools)
171+
- Deterministic tool suggestions
172+
- Smart semantic search with field-weighted scoring
132173

133174
## Publishing
134175

0 commit comments

Comments
 (0)