Here is the sample management pack:
 
<ManagementPack ContentReadable="true" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <Manifest>
    <Identity>
      <ID>Demo</ID>
      <Version>1.0.0.0</Version>
    </Identity>
    <Name>Demo</Name>
    <References>
      <Reference Alias="SC">
        <ID>Microsoft.SystemCenter.Library</ID>
        <Version>6.1.7221.0</Version>
        <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
      </Reference>
      <Reference Alias="Windows">
        <ID>Microsoft.Windows.Library</ID>
        <Version>6.1.7221.0</Version>
        <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
      </Reference>
      <Reference Alias="Health">
        <ID>System.Health.Library</ID>
        <Version>6.1.7221.0</Version>
        <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
      </Reference>
      <Reference Alias="System">
        <ID>System.Library</ID>
        <Version>6.1.7221.0</Version>
        <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
      </Reference>
    </References>
  </Manifest>
  <TypeDefinitions>
    <ModuleTypes>
      <DataSourceModuleType ID="Demo.DataSourceModuleType" Accessibility="Internal" Batching="false">
        <Configuration />
        <ModuleImplementation Isolation="Any">
          <Composite>
            <MemberModules>
              <DataSource ID="Scheduler" TypeID="System!System.Scheduler">
                <Scheduler>
                  <SimpleReccuringSchedule>
                    <Interval>15</Interval>
                  </SimpleReccuringSchedule>
                  <ExcludeDates />
                </Scheduler>
              </DataSource>
              <ProbeAction ID="Probe" TypeID="Demo.ProbeActionModuleType" />
            </MemberModules>
            <Composition>
              <Node ID="Probe">
                <Node ID="Scheduler" />
              </Node>
            </Composition>
          </Composite>
        </ModuleImplementation>
        <OutputType>System!System.PropertyBagData</OutputType>
      </DataSourceModuleType>
      <ProbeActionModuleType ID="Demo.ProbeActionModuleType" Accessibility="Internal" Batching="false" PassThrough="false">
        <Configuration />
        <ModuleImplementation Isolation="Any">
          <Composite>
            <MemberModules>
              <ProbeAction ID="ScriptPropertyBagProbe" TypeID="Windows!Microsoft.Windows.ScriptPropertyBagProbe">
                <ScriptName>DemoScriptName.vbs</ScriptName>
                <Arguments />
                <ScriptBody><![CDATA[Dim oArgs
Set oArgs = Wscript.Arguments
Dim oAPI
Set oAPI = CreateObject("MOM.ScriptAPI")
Set oBag = oAPI.CreatePropertyBag()
Call oBag.AddValue("Value","marker")
Call oBag.AddValue("Filter","pass")
Call oAPI.Return(oBag)
]]></ScriptBody>
                <TimeoutSeconds>120</TimeoutSeconds>
              </ProbeAction>
              <ProbeAction ID="PassThrough" TypeID="System!System.PassThroughProbe" />
            </MemberModules>
            <Composition>
              <Node ID="ScriptPropertyBagProbe">
                <Node ID="PassThrough" />
              </Node>
            </Composition>
          </Composite>
        </ModuleImplementation>
        <OutputType>System!System.PropertyBagData</OutputType>
        <TriggerOnly>true</TriggerOnly>
      </ProbeActionModuleType>
      <ConditionDetectionModuleType ID="Demo.Filter" Accessibility="Internal" Batching="false" Stateful="false" PassThrough="false">
        <Configuration />
        <ModuleImplementation Isolation="Any">
          <Composite>
            <MemberModules>
              <ConditionDetection ID="Filter" TypeID="System!System.ExpressionFilter">
                <Expression>
                  <SimpleExpression>
                    <ValueExpression>
                      <XPathQuery>Property[@Name='Filter']</XPathQuery>
                    </ValueExpression>
                    <Operator>Equal</Operator>
                    <ValueExpression>
                      <Value>Pass</Value>
                    </ValueExpression>
                  </SimpleExpression>
                </Expression>
              </ConditionDetection>
            </MemberModules>
            <Composition>
              <Node ID="Filter" />
            </Composition>
          </Composite>
        </ModuleImplementation>
        <OutputType>System!System.PropertyBagData</OutputType>
        <InputTypes>
          <InputType>System!System.PropertyBagData</InputType>
        </InputTypes>
      </ConditionDetectionModuleType>
    </ModuleTypes>
    <MonitorTypes>
      <UnitMonitorType ID="Demo.UnitMonitorType" Accessibility="Internal">
        <MonitorTypeStates>
          <MonitorTypeState ID="Healthy" NoDetection="false" />
          <MonitorTypeState ID="Error" NoDetection="false" />
        </MonitorTypeStates>
        <Configuration />
        <MonitorImplementation>
          <MemberModules>
            <DataSource ID="DS" TypeID="Demo.DataSourceModuleType" />
            <ProbeAction ID="Probe" TypeID="Demo.ProbeActionModuleType" />
            <ConditionDetection ID="HealthyFilter" TypeID="System!System.ExpressionFilter">
              <Expression>
                <SimpleExpression>
                  <ValueExpression>
                    <XPathQuery Type="String">Property[@Name='Value']</XPathQuery>
                  </ValueExpression>
                  <Operator>Equal</Operator>
                  <ValueExpression>
                    <Value Type="String">test</Value>
                  </ValueExpression>
                </SimpleExpression>
              </Expression>
            </ConditionDetection>
            <ConditionDetection ID="ErrorFilter" TypeID="System!System.ExpressionFilter">
              <Expression>
                <SimpleExpression>
                  <ValueExpression>
                    <XPathQuery Type="String">Property[@Name='Value']</XPathQuery>
                  </ValueExpression>
                  <Operator>Equal</Operator>
                  <ValueExpression>
                    <Value Type="String">marker</Value>
                  </ValueExpression>
                </SimpleExpression>
              </Expression>
            </ConditionDetection>
          </MemberModules>
          <RegularDetections>
            <RegularDetection MonitorTypeStateID="Healthy">
              <Node ID="HealthyFilter">
                <Node ID="DS" />
              </Node>
            </RegularDetection>
            <RegularDetection MonitorTypeStateID="Error">
              <Node ID="ErrorFilter">
                <Node ID="DS" />
              </Node>
            </RegularDetection>
          </RegularDetections>
          <OnDemandDetections>
            <OnDemandDetection MonitorTypeStateID="Healthy">
              <Node ID="HealthyFilter">
                <Node ID="Probe" />
              </Node>
            </OnDemandDetection>
            <OnDemandDetection MonitorTypeStateID="Error">
              <Node ID="ErrorFilter">
                <Node ID="Probe" />
              </Node>
            </OnDemandDetection>
          </OnDemandDetections>
        </MonitorImplementation>
      </UnitMonitorType>
    </MonitorTypes>
  </TypeDefinitions>
  <Monitoring>
    <Monitors>
      <UnitMonitor ID="Demo.UnitMonitor" Accessibility="Internal" Enabled="true" Target="Windows!Microsoft.Windows.Computer" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Demo.UnitMonitorType" ConfirmDelivery="true">
        <Category>Custom</Category>
        <AlertSettings AlertMessage="Demo.UnitMonitor_AlertMessageResourceID">
          <AlertOnState>Error</AlertOnState>
          <AutoResolve>true</AutoResolve>
          <AlertPriority>Normal</AlertPriority>
          <AlertSeverity>Error</AlertSeverity>
        </AlertSettings>
        <OperationalStates>
          <OperationalState ID="UIGeneratedOpStateId87a6901aebbc418590281c5a5f553b12" MonitorTypeStateID="Healthy" HealthState="Success" />
          <OperationalState ID="UIGeneratedOpStateId33fac195c70649f4bef8d35a639ceceb" MonitorTypeStateID="Error" HealthState="Error" />
        </OperationalStates>
        <Configuration />
      </UnitMonitor>
    </Monitors>
  </Monitoring>
  <Presentation>
    <StringResources>
      <StringResource ID="Demo.UnitMonitor_AlertMessageResourceID" />
    </StringResources>
  </Presentation>
  <LanguagePacks>
    <LanguagePack ID="ENU" IsDefault="true">
      <DisplayStrings>
        <DisplayString ElementID="Demo">
          <Name>Demo</Name>
        </DisplayString>
        <DisplayString ElementID="Demo.DataSourceModuleType">
          <Name>DS</Name>
        </DisplayString>
        <DisplayString ElementID="Demo.Filter">
          <Name>Filter</Name>
        </DisplayString>
        <DisplayString ElementID="Demo.ProbeActionModuleType">
          <Name>Demo.ProbeActionModuleType</Name>
        </DisplayString>
        <DisplayString ElementID="Demo.UnitMonitor">
          <Name>Demo.UnitMonitor</Name>
        </DisplayString>
        <DisplayString ElementID="Demo.UnitMonitor" SubElementID="UIGeneratedOpStateId33fac195c70649f4bef8d35a639ceceb">
          <Name>Error</Name>
        </DisplayString>
        <DisplayString ElementID="Demo.UnitMonitor" SubElementID="UIGeneratedOpStateId87a6901aebbc418590281c5a5f553b12">
          <Name>Healthy</Name>
        </DisplayString>
        <DisplayString ElementID="Demo.UnitMonitor_AlertMessageResourceID">
          <Name>Demo.UnitMonitor</Name>
          <Description>Please see the alert context for details.</Description>
        </DisplayString>
        <DisplayString ElementID="Demo.UnitMonitorType">
          <Name>Unit Monitor Type</Name>
          <Description />
        </DisplayString>
      </DisplayStrings>
    </LanguagePack>
  </LanguagePacks>
</ManagementPack>