Skip to content

Commit 3f7e3a6

Browse files
Merge branch 'main' into tests
2 parents 9045eb0 + 4f89a89 commit 3f7e3a6

File tree

7 files changed

+38
-49
lines changed

7 files changed

+38
-49
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,7 @@ Request body example:
251251
}
252252
],
253253
"repository": {
254-
"url": "https://github.com//<owner>/<server-name>",
254+
"url": "https://github.com/<owner>/<server-name>",
255255
"source": "github"
256256
},
257257
"version_detail": {
5.35 MB
Binary file not shown.

docs/README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Official Registry Documentation
2+
3+
[`openapi.yaml`](./openapi.yaml) - OpenAPI specification for the official registry API
4+
[`api_examples.md`](./api_examples.md) - Examples of what data will actually look like coming from the official registry API
5+
[`MCP Developers Summit 2025 - Registry Talk Slides.pdf`](./MCP%20Developers%20Summit%202025%20-%20Registry%20Talk%20Slides.pdf) - Slides from a talk given at the MCP Developers Summit on May 23, 2025, with an up-to-date vision of how we are thinking about the official registry.
File renamed without changes.
File renamed without changes.

tools/publisher/README.md

Lines changed: 31 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -36,20 +36,11 @@ The compiled binary will be placed in the `bin` directory.
3636
## Authentication
3737

3838
The tool uses GitHub device flow authentication:
39-
1. When first run (or with `--login` flag), the tool will initiate the GitHub device flow
40-
2. You'll be provided with a URL and a code to enter
41-
3. After successful authentication, the tool saves the token locally for future use
42-
4. The token is sent in the HTTP Authorization header with the Bearer scheme
43-
44-
### Required Environment Variable
45-
46-
Before using the GitHub authentication, you need to set the following environment variable:
47-
48-
```bash
49-
export MCP_REGISTRY_GITHUB_CLIENT_ID="your_github_client_id"
50-
```
51-
52-
This environment variable is required for the GitHub device flow authentication. If not set, the authentication will fail.
39+
1. The tool automatically retrieves the GitHub Client ID from the registry's health endpoint
40+
2. When first run (or with `--login` flag), the tool will initiate the GitHub device flow
41+
3. You'll be provided with a URL and a code to enter
42+
4. After successful authentication, the tool saves the token locally for future use
43+
5. The token is sent in the HTTP Authorization header with the Bearer scheme
5344

5445
_NOTE_ : Authentication is made on behalf of a OAuth App which you must authorize for respective resources (e.g `org`)
5546

@@ -64,47 +55,40 @@ _NOTE_ : Authentication is made on behalf of a OAuth App which you must authoriz
6455
"version_detail": {
6556
"version": "1.0.0"
6657
},
67-
"registries": [
58+
"packages": [
6859
{
69-
"name": "npm",
70-
"package_name": "your-npm-package",
71-
"license": "MIT",
72-
"command_arguments": {
73-
"sub_commands": [
74-
{
75-
"name": "start",
76-
"description": "Start the server",
77-
"named_arguments": null
78-
}
79-
],
80-
"positional_arguments": null,
81-
"environment_variables": [
82-
{
83-
"name": "PORT",
84-
"description": "Port to run the server on",
85-
"required": false
86-
}
87-
],
88-
"named_arguments": null
89-
}
60+
"registry_name": "npm",
61+
"name": "your-npm-package",
62+
"version": "1.0.0",
63+
"package_arguments": [
64+
{
65+
"description": "Specify services and permissions",
66+
"is_required": true,
67+
"format": "string",
68+
"value": "-s",
69+
"default": "-s",
70+
"type": "positional",
71+
"value_hint": "-s"
72+
}
73+
],
74+
"environment_variables": [
75+
{
76+
"name": "API_KEY",
77+
"description": "API Key to access the server"
78+
}
79+
]
9080
}
9181
],
92-
"remotes": [
93-
{
94-
"transporttype": "http",
95-
"url": "http://yourdomain.com/api"
96-
}
97-
]
82+
"repository": {
83+
"url": "https://github.com/yourusername/your-repository",
84+
"source": "github"
85+
}
9886
}
9987
```
10088

10189
2. Run the publisher tool:
10290

10391
```bash
104-
# First, set the required environment variable
105-
export MCP_REGISTRY_GITHUB_CLIENT_ID="your_github_client_id"
106-
107-
# Then run the publisher tool
10892
./bin/mcp-publisher --registry-url "https://mcp-registry.example.com" --mcp-file "./mcp.json"
10993
```
11094

@@ -114,7 +98,7 @@ export MCP_REGISTRY_GITHUB_CLIENT_ID="your_github_client_id"
11498

11599
## Important Notes
116100

117-
- The `MCP_REGISTRY_GITHUB_CLIENT_ID` environment variable must be set for GitHub authentication
101+
- The GitHub Client ID is automatically retrieved from the registry's health endpoint
118102
- The authentication token is saved in a file named `.mcpregistry_token` in the current directory
119103
- The tool requires an active internet connection to authenticate with GitHub and communicate with the registry
120104
- Make sure the repository and package mentioned in your `mcp.json` file exist and are accessible

tools/publisher/mcp.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
}
4949
],
5050
"repository": {
51-
"url": "https://github.com//<owner>/<server-name>",
51+
"url": "https://github.com/<owner>/<server-name>",
5252
"source": "github"
5353
},
5454
"version_detail": {

0 commit comments

Comments
 (0)