fix: lint errors - remove unused import and format files

- Remove unused McpbManifestSchema import from types.ts
- Run prettier on modified files
This commit is contained in:
Joan Xie 2025-10-29 16:51:27 -07:00
commit e7282946b6
No known key found for this signature in database
8 changed files with 38 additions and 41 deletions

View file

@ -46,6 +46,7 @@ To set up commit signing, see [GitHub's documentation on commit signature verifi
### Bug Reports
When filing a bug report, please include:
- Clear description of the issue
- Steps to reproduce
- Expected vs actual behavior
@ -55,6 +56,7 @@ When filing a bug report, please include:
### Feature Requests
We welcome feature suggestions! Please:
- Clearly describe the feature and use case
- Explain why this would be valuable to users
- Consider if it aligns with the project's goals
@ -62,6 +64,7 @@ We welcome feature suggestions! Please:
### Code Contributions
We especially welcome:
- Bug fixes
- Documentation improvements
- Test coverage improvements

View file

@ -17,7 +17,7 @@ A basic `manifest.json` with just the required fields looks like this:
"description": "A simple MCP extension", // Brief description of what the extension does
"author": {
// Author information (required)
"name": "Extension Author" // Author's name (required field)
"name": "Extension Author", // Author's name (required field)
},
"server": {
// Server configuration (required)
@ -28,10 +28,10 @@ A basic `manifest.json` with just the required fields looks like this:
"command": "node", // Command to run the server
"args": [
// Arguments passed to the command
"${__dirname}/server/index.js" // ${__dirname} is replaced with the extension's directory
]
}
}
"${__dirname}/server/index.js", // ${__dirname} is replaced with the extension's directory
],
},
},
}
```
@ -212,12 +212,12 @@ A full `manifest.json` with most of the optional fields looks like this:
"type": "string"
}
}
},
}
}
}
]
}
},
}
}
}
}
@ -254,7 +254,7 @@ A full `manifest.json` with most of the optional fields looks like this:
- **privacy_policies**: Array of URLs to privacy policies for external services that handle user data. Required when the extension connects to external services (first- or third-party) that process user data. Each URL should link to the respective service's privacy policy document.
- **compatibility**: Compatibility requirements (client app version, platforms, and runtime versions).
- **user_config**: User-configurable options for the extension (see User Configuration section).
- **_meta**: Platform-specific client integration metadata (e.g., Windows `package_family_name`, macOS bundle identifiers) enabling tighter OS/app store integration. The keys in the `_meta` object are reverse-DNS namespaced, and the values are a dictionary of platform-specific metadata.
- **\_meta**: Platform-specific client integration metadata (e.g., Windows `package_family_name`, macOS bundle identifiers) enabling tighter OS/app store integration. The keys in the `_meta` object are reverse-DNS namespaced, and the values are a dictionary of platform-specific metadata.
- **localization**: Location of translated strings for user-facing fields (`resources` path containing a `${locale}` placeholder and `default_locale`).
### Localization
@ -277,6 +277,7 @@ Provide localized strings without bloating the manifest by pointing to external
For tools and prompts, the descriptions are also localizable.
#### Client guidelines
- if a client wants to show tool or prompt descriptions in their UI, the client should look for the locale-specific description override in the corresponding per-locale file.
- clients should only look for tools/prompts present in the manifest.json, i.e. prompts and tools that only exist in the per-locale file should be ignored.
- Clients should apply locale fallbacks if the client/user locale is not represented by the server. For example, if the user is in the `es-UY` locale but the server does not include that per-locale file, the client should look for an approrpiate fallback, e.g. `es-MX` or `es-ES`, or fall back to the values in the manifest.
@ -712,4 +713,3 @@ The `_generated` fields:
- **prompts_generated**: Server generates additional prompts beyond those listed (default: false)
This helps implementing apps understand that querying the server at runtime will reveal more capabilities than what's declared in the manifest.

View file

@ -1,5 +1,8 @@
import type * as z from "zod";
import type { McpbManifestSchema as McpbManifestSchema_v0_1 } from "./schemas/0.1.js";
import type { McpbManifestSchema as McpbManifestSchema_v0_2 } from "./schemas/0.2.js";
import type { McpbManifestSchema as McpbManifestSchema_v0_3 } from "./schemas/0.3.js";
import type {
McpbManifestAuthorSchema,
McpbManifestCompatibilitySchema,
@ -7,7 +10,6 @@ import type {
McpbManifestPlatformOverrideSchema,
McpbManifestPromptSchema,
McpbManifestRepositorySchema,
McpbManifestSchema,
McpbManifestServerSchema,
McpbManifestToolSchema,
McpbSignatureInfoSchema,
@ -15,9 +17,6 @@ import type {
McpbUserConfigValuesSchema,
McpServerConfigSchema,
} from "./schemas/latest.js";
import type { McpbManifestSchema as McpbManifestSchema_v0_1 } from "./schemas/0.1.js";
import type { McpbManifestSchema as McpbManifestSchema_v0_2 } from "./schemas/0.2.js";
import type { McpbManifestSchema as McpbManifestSchema_v0_3 } from "./schemas/0.3.js";
export type McpServerConfig = z.infer<typeof McpServerConfigSchema>;

View file

@ -335,5 +335,4 @@ describe("McpbManifestSchema", () => {
expect(result.success).toBe(true);
});
});
});

View file

@ -1,21 +1,19 @@
{
"manifest_version": "0.2",
"name": "legacy-extension",
"display_name": "Legacy Extension",
"version": "1.0.0",
"description": "An extension that predates 0.3",
"author": {
"name": "Legacy Author",
"email": "legacy@example.com"
},
"server": {
"type": "node",
"entry_point": "server/index.js",
"mcp_config": {
"command": "node",
"args": [
"${__dirname}/server/index.js"
]
}
"manifest_version": "0.2",
"name": "legacy-extension",
"display_name": "Legacy Extension",
"version": "1.0.0",
"description": "An extension that predates 0.3",
"author": {
"name": "Legacy Author",
"email": "legacy@example.com"
},
"server": {
"type": "node",
"entry_point": "server/index.js",
"mcp_config": {
"command": "node",
"args": ["${__dirname}/server/index.js"]
}
}
}

View file

@ -13,9 +13,7 @@
"entry_point": "server/index.js",
"mcp_config": {
"command": "node",
"args": [
"${__dirname}/server/index.js"
]
"args": ["${__dirname}/server/index.js"]
}
}
}