Pulumi Example Gen Mcp

Pulumi Example Gen Mcp

🚀 Pulumi示例生成MCP服务器

这是一个Pulumi资源的MCP服务器,用于生成带有占位符值的完整构造函数示例。

🚀 快速开始

📦 安装指南

你可以使用以下命令安装最新版本的pulumi-example-gen-mcp

go install github.com/corymhall/pulumi-example-gen-mcp@latest

⚙️ 配置说明

你需要按照如下JSON格式进行配置:

{
"mcpServers": {
"pulumi-example-gen": {
"command": "pulumi-example-gen-mcp",
}
}
}

💻 使用示例

基础用法

对于aws.s3.Bucket资源,该工具将生成如下示例:

TypeScript
const bucketResource = new aws.s3.Bucket("bucketResource", {
accelerationStatus: "string",
acl: "string",
bucket: "string",
bucketPrefix: "string",
corsRules: [{
allowedMethods: ["string"],
allowedOrigins: ["string"],
allowedHeaders: ["string"],
exposeHeaders: ["string"],
maxAgeSeconds: 0,
}],
forceDestroy: false,
grants: [{
permissions: ["string"],
type: "string",
id: "string",
uri: "string",
}],
lifecycleRules: [{
enabled: false,
abortIncompleteMultipartUploadDays: 0,
expiration: {
date: "string",
days: 0,
expiredObjectDeleteMarker: false,
},
id: "string",
noncurrentVersionExpiration: {
days: 0,
},
noncurrentVersionTransitions: [{
storageClass: "string",
days: 0,
}],
prefix: "string",
tags: {
string: "string",
},
transitions: [{
storageClass: "string",
date: "string",
days: 0,
}],
}],
logging: {
targetBucket: "string",
targetPrefix: "string",
},
objectLockConfiguration: {},
objectLockEnabled: false,
policy: "string",
region: "string",
replicationConfiguration: {
role: "string",
rules: [{
destination: {
bucket: "string",
accessControlTranslation: {
owner: "string",
},
accountId: "string",
metrics: {
minutes: 0,
status: "string",
},
replicaKmsKeyId: "string",
replicationTime: {
minutes: 0,
status: "string",
},
storageClass: "string",
},
status: "string",
deleteMarkerReplicationStatus: "string",
filter: {
prefix: "string",
tags: {
string: "string",
},
},
id: "string",
prefix: "string",
priority: 0,
sourceSelectionCriteria: {
sseKmsEncryptedObjects: {
enabled: false,
},
},
}],
},
requestPayer: "string",
serverSideEncryptionConfiguration: {
rule: {
applyServerSideEncryptionByDefault: {
sseAlgorithm: "string",
kmsMasterKeyId: "string",
},
bucketKeyEnabled: false,
},
},
tags: {
string: "string",
},
versioning: {
enabled: false,
mfaDelete: false,
},
website: {
errorDocument: "string",
indexDocument: "string",
redirectAllRequestsTo: "string",
routingRules: "string",
},
});
Go
_, err := s3.NewBucket(ctx, "bucketResource", &s3.BucketArgs{
AccelerationStatus: pulumi.String("string"),
Acl:                pulumi.String("string"),
Bucket:             pulumi.String("string"),
BucketPrefix:       pulumi.String("string"),
CorsRules: s3.BucketCorsRuleArray{
&s3.BucketCorsRuleArgs{
AllowedMethods: pulumi.StringArray{
pulumi.String("string"),
},
AllowedOrigins: pulumi.StringArray{
pulumi.String("string"),
},
AllowedHeaders: pulumi.StringArray{
pulumi.String("string"),
},
ExposeHeaders: pulumi.StringArray{
pulumi.String("string"),
},
MaxAgeSeconds: pulumi.Int(0),
},
},
ForceDestroy: pulumi.Bool(false),
Grants: s3.BucketGrantArray{
&s3.BucketGrantArgs{
Permissions: pulumi.StringArray{
pulumi.String("string"),
},
Type: pulumi.String("string"),
Id:   pulumi.String("string"),
Uri:  pulumi.String("string"),
},
},
LifecycleRules: s3.BucketLifecycleRuleArray{
&s3.BucketLifecycleRuleArgs{
Enabled:                            pulumi.Bool(false),
AbortIncompleteMultipartUploadDays: pulumi.Int(0),
Expiration: &s3.BucketLifecycleRuleExpirationArgs{
Date:                      pulumi.String("string"),
Days:                      pulumi.Int(0),
ExpiredObjectDeleteMarker: pulumi.Bool(false),
},
Id: pulumi.String("string"),
NoncurrentVersionExpiration: &s3.BucketLifecycleRuleNoncurrentVersionExpirationArgs{
Days: pulumi.Int(0),
},
NoncurrentVersionTransitions: s3.BucketLifecycleRuleNoncurrentVersionTransitionArray{
&s3.BucketLifecycleRuleNoncurrentVersionTransitionArgs{
StorageClass: pulumi.String("string"),
Days:         pulumi.Int(0),
},
},
Prefix: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
Transitions: s3.BucketLifecycleRuleTransitionArray{
&s3.BucketLifecycleRuleTransitionArgs{
StorageClass: pulumi.String("string"),
Date:         pulumi.String("string"),
Days:         pulumi.Int(0),
},
},
},
},
Logging: &s3.BucketLoggingTypeArgs{
TargetBucket: pulumi.String("string"),
TargetPrefix: pulumi.String("string"),
},
ObjectLockConfiguration: &s3.BucketObjectLockConfigurationTypeArgs{},
ObjectLockEnabled:       pulumi.Bool(false),
Policy:                  pulumi.Any("string"),
Region:                  pulumi.String("string"),
ReplicationConfiguration: &s3.BucketReplicationConfigurationArgs{
Role: pulumi.String("string"),
Rules: s3.BucketReplicationConfigurationRuleArray{
&s3.BucketReplicationConfigurationRuleArgs{
Destination: &s3.BucketReplicationConfigurationRuleDestinationArgs{
Bucket: pulumi.String("string"),
AccessControlTranslation: &s3.BucketReplicationConfigurationRuleDestinationAccessControlTranslationArgs{
Owner: pulumi.String("string"),
},
AccountId: pulumi.String("string"),
Metrics: &s3.BucketReplicationConfigurationRuleDestinationMetricsArgs{
Minutes: pulumi.Int(0),
Status:  pulumi.String("string"),
},
ReplicaKmsKeyId: pulumi.String("string"),
ReplicationTime: &s3.BucketReplicationConfigurationRuleDestinationReplicationTimeArgs{
Minutes: pulumi.Int(0),
Status:  pulumi.String("string"),
},
StorageClass: pulumi.String("string"),
},
Status:                        pulumi.String("string"),
DeleteMarkerReplicationStatus: pulumi.String("string"),
Filter: &s3.BucketReplicationConfigurationRuleFilterArgs{
Prefix: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
},
Id:       pulumi.String("string"),
Prefix:   pulumi.String("string"),
Priority: pulumi.Int(0),
SourceSelectionCriteria: &s3.BucketReplicationConfigurationRuleSourceSelectionCriteriaArgs{
SseKmsEncryptedObjects: &s3.BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjectsArgs{
Enabled: pulumi.Bool(false),
},
},
},
},
},
RequestPayer: pulumi.String("string"),
ServerSideEncryptionConfiguration: &s3.BucketServerSideEncryptionConfigurationTypeArgs{
Rule: &s3.BucketServerSideEncryptionConfigurationRuleArgs{
ApplyServerSideEncryptionByDefault: &s3.BucketServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefaultArgs{
SseAlgorithm:   pulumi.String("string"),
KmsMasterKeyId: pulumi.String("string"),
},
BucketKeyEnabled: pulumi.Bool(false),
},
},
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
Versioning: &s3.BucketVersioningTypeArgs{
Enabled:   pulumi.Bool(false),
MfaDelete: pulumi.Bool(false),
},
Website: &s3.BucketWebsiteArgs{
ErrorDocument:         pulumi.String("string"),
IndexDocument:         pulumi.String("string"),
RedirectAllRequestsTo: pulumi.String("string"),
RoutingRules:          pulumi.String("string"),
},
})
  • 0 关注
  • 0 收藏,32 浏览
  • system 提出于 2025-10-05 12:15

相似服务问题

相关AI产品