Skip to content

Commit dd74b07

Browse files
committed
Initial commit: foundation of mcp-pointer
1 parent 585a01b commit dd74b07

51 files changed

Lines changed: 6639 additions & 0 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.eslintignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
**/node_modules/
2+
**/dist/
3+
.pnp.*

.eslintrc.js

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
module.exports = {
2+
root: true,
3+
extends: [
4+
'airbnb-base',
5+
'airbnb-typescript/base',
6+
],
7+
parser: '@typescript-eslint/parser',
8+
parserOptions: {
9+
project: './tsconfig.eslint.json',
10+
tsconfigRootDir: __dirname,
11+
},
12+
plugins: ['@typescript-eslint', 'import'],
13+
settings: {
14+
'import/resolver': {
15+
typescript: {
16+
project: ['./tsconfig.json', './packages/*/tsconfig.json'],
17+
},
18+
},
19+
},
20+
rules: {
21+
'class-methods-use-this': 'off',
22+
},
23+
overrides: [
24+
{
25+
files: ['packages/chrome-extension/**/*.ts'],
26+
globals: {
27+
chrome: 'readonly',
28+
},
29+
rules: {
30+
'no-restricted-globals': 'off',
31+
},
32+
},
33+
],
34+
};

.github/workflows/ci.yml

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
branches: [main]
8+
9+
jobs:
10+
test:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: Checkout
14+
uses: actions/checkout@v4
15+
16+
- name: Setup Node.js
17+
uses: actions/setup-node@v4
18+
with:
19+
node-version: '20'
20+
21+
- name: Setup pnpm
22+
uses: pnpm/action-setup@v2
23+
with:
24+
version: latest
25+
26+
- name: Install dependencies
27+
run: pnpm install --frozen-lockfile
28+
29+
- name: Lint
30+
run: pnpm lint
31+
32+
- name: Type check
33+
run: pnpm typecheck
34+
35+
- name: Build
36+
run: pnpm build
37+
38+
- name: Test CLI
39+
run: |
40+
cd packages/mcp
41+
node dist/cli.cjs --version
42+
node dist/cli.cjs --help
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: Publish to npm
2+
3+
on:
4+
release:
5+
types: [published]
6+
7+
permissions:
8+
contents: read
9+
id-token: write # Required for provenance
10+
11+
jobs:
12+
publish:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- name: Checkout
16+
uses: actions/checkout@v4
17+
18+
- name: Setup Node.js
19+
uses: actions/setup-node@v4
20+
with:
21+
node-version: '20'
22+
registry-url: 'https://registry.npmjs.org'
23+
24+
- name: Setup pnpm
25+
uses: pnpm/action-setup@v2
26+
with:
27+
version: latest
28+
29+
- name: Install dependencies
30+
run: pnpm install --frozen-lockfile
31+
32+
- name: Build
33+
run: pnpm -C packages/mcp build
34+
35+
- name: Run tests (if any)
36+
run: pnpm -C packages/mcp test || echo "No tests found"
37+
38+
- name: Publish with provenance
39+
run: pnpm -C packages/mcp publish --access public --provenance --no-git-checks
40+
env:
41+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
node_modules/
2+
dist/
3+
4+
.DS_Store
5+
6+
# TypeScript
7+
*.tsbuildinfo

.mcp.json

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
{
2+
"mcpServers": {
3+
"@mcp-pointer/server": {
4+
"command": "mcp-pointer",
5+
"args": ["start"],
6+
"env": {
7+
"MCP_POINTER_PORT": "7007"
8+
}
9+
}
10+
}
11+
}

.vscode/extensions.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"recommendations": [
3+
"dbaeumer.vscode-eslint"
4+
]
5+
}

.vscode/settings.json

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
{
2+
"eslint.enable": true,
3+
"editor.codeActionsOnSave": {
4+
"source.fixAll.eslint": "always"
5+
},
6+
"eslint.validate": [
7+
"javascript",
8+
"javascriptreact",
9+
"typescript",
10+
"typescriptreact"
11+
],
12+
"eslint.workingDirectories": [
13+
".",
14+
"packages/mcp",
15+
"packages/chrome-extension",
16+
"packages/shared"
17+
],
18+
"editor.formatOnSave": false,
19+
"search.exclude": {
20+
"**/node_modules": true,
21+
"**/dist": true
22+
}
23+
}

0 commit comments

Comments
 (0)