|
2 | 2 |
|
3 | 3 | GTFS feed tools, DMFR editing, and Transitland integration for Visual Studio Code. |
4 | 4 |
|
5 | | -## Features |
| 5 | +- DMFR language support with JSON schema validation, snippets, and formatting |
| 6 | +- CodeLens on each feed showing live status from the Transitland archive |
| 7 | +- Validate and inspect GTFS feeds directly from the editor |
| 8 | +- Copilot tools and `@transitland` chat participant for DMFR editing assistance |
| 9 | +- Standalone MCP server (`out/mcp-server.js`) for use with Claude and other AI tools |
6 | 10 |
|
7 | | -- **DMFR editing** — JSON schema validation, snippets, and opinionated formatting for `.dmfr.json` files |
8 | | -- **Feed status CodeLens** — live status for Transitland feeds inline in DMFR files (requires API key) |
9 | | -- **GTFS validation** — run `transitland validate` on feed URLs or local files (requires CLI) |
10 | | -- **MCP server** — expose Transitland tools to AI agents via the Model Context Protocol |
| 11 | +Requires the [transitland CLI](https://github.com/interline-io/transitland-lib) for feed validation and inspection. |
11 | 12 |
|
12 | | -## Requirements |
| 13 | +## License |
13 | 14 |
|
14 | | -### Transitland API key (for feed status CodeLens) |
15 | | - |
16 | | -Set via `transitland.apiKey` in VS Code settings, or the `TRANSITLAND_API_KEY` environment variable. |
17 | | - |
18 | | -### transitland CLI (for GTFS tools) |
19 | | - |
20 | | -Install via Homebrew: |
21 | | - |
22 | | -```sh |
23 | | -brew install interline-io/transitland-lib/transitland-lib |
24 | | -``` |
25 | | - |
26 | | -Or set the path manually in settings: `transitland.cliPath`. |
27 | | - |
28 | | -The extension auto-detects the binary from common locations (`~/go/bin`, `/opt/homebrew/bin`, `/usr/local/bin`). |
29 | | - |
30 | | -## Commands |
31 | | - |
32 | | -Access from the command palette (`Cmd+Shift+P`): |
33 | | - |
34 | | -- `Transitland: New DMFR File` |
35 | | -- `Transitland: Apply opinionated format to current DMFR file` |
36 | | - |
37 | | -## MCP server |
38 | | - |
39 | | -The extension ships a standalone MCP server for use with Claude Code, Claude Desktop, or any MCP-compatible agent: |
40 | | - |
41 | | -```json |
42 | | -{ |
43 | | - "mcpServers": { |
44 | | - "transitland": { |
45 | | - "command": "node", |
46 | | - "args": ["/path/to/transitland-vscode-extension/out/mcp-server.js"] |
47 | | - } |
48 | | - } |
49 | | -} |
50 | | -``` |
51 | | - |
52 | | -## Development |
53 | | - |
54 | | -```sh |
55 | | -# Install dependencies |
56 | | -yarn install |
57 | | - |
58 | | -# Build extension + MCP server |
59 | | -yarn run build |
60 | | - |
61 | | -# Watch mode |
62 | | -yarn run build:watch |
63 | | - |
64 | | -# Package VSIX |
65 | | -yarn run package |
66 | | -``` |
| 15 | +GPL-3.0 — see [LICENSE](LICENSE). |
0 commit comments