Blog2Social - Social Media Publishing

Connect AI agents to Blog2Social and automate social media content workflows via MCP.

사용해야 할까요

품질 및 안전성

B
설명 품질
100%
스키마 완전성
65%
이름 품질
50%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (8)

  • LOWTool 'networks.list' doesn't follow camelCase/snake_casenetworks.list에서
  • LOWTool 'connections.list' doesn't follow camelCase/snake_caseconnections.list에서
  • LOWTool 'networks.list_properties' doesn't follow camelCase/snake_casenetworks.list_properties에서
  • LOWTool 'connections.remove' doesn't follow camelCase/snake_caseconnections.remove에서
  • LOWTool 'connections.add' doesn't follow camelCase/snake_caseconnections.add에서
  • LOWTool 'posts.create' doesn't follow camelCase/snake_caseposts.create에서
  • LOWTool 'videos.check' doesn't follow camelCase/snake_casevideos.check에서
  • LOWTool 'credits.balance' doesn't follow camelCase/snake_casecredits.balance에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~2,264토큰 (도구 정의)
~2.4 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.77%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "blog2social-api-mcp": {
      "url": "https://api.blog2social.com/mcp"
    }
  }
}

원격 엔드포인트

https://api.blog2social.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (8)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢networks.list

Returns the social networks that can be connected to Blog2Social, including each network name, URL, network_id and whether profiles, pages or groups are supported. Use network_id and a supported network_type_id with connections.add to start connecting an account.

입력 스키마

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
🟢connections.list

Returns the social accounts currently connected to the authenticated Blog2Social user, with details such as the network, account type and display name. Use an account client_user_network_id in posts.create to choose where to publish.

입력 스키마

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
🟢networks.list_properties

Returns publishing capabilities and limits for each network and account type, such as supported media formats, video support and character limits. Check these requirements when preparing a post for a specific network and account type.

입력 스키마

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
🔴connections.remove(client_user_network_id)

Removes a social account connection from the authenticated Blog2Social user. Call connections.list first to get the account's client_user_network_id. After removal, the account can no longer be used for publishing unless it is connected again.

입력 스키마

{
  "type": "object",
  "properties": {
    "client_user_network_id": {
      "type": "integer",
      "minimum": 1,
      "description": "Connected social media account ID returned by connections.list."
    }
  },
  "required": [
    "client_user_network_id"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "success": {
          "type": "boolean",
          "description": "True when the connected social media account was removed successfully."
        }
      },
      "required": [
        "success"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
🟢connections.add(network_id, network_type_id, language, service_conditions_id)

Starts authorization for a social network account. Get network_id and a supported account type from networks.list; network_type_id 0 means profile, 1 page and 2 group. The response contains an auth_link for the user to open and authorize Blog2Social. Pinterest is an exception: it requires a custom application (service_conditions_id) and does not return an auth_link.

입력 스키마

{
  "type": "object",
  "properties": {
    "network_id": {
      "type": "integer",
      "minimum": 1,
      "description": "Social media network ID returned by the networks.list tool."
    },
    "network_type_id": {
      "type": "integer",
      "minimum": 0,
      "maximum": 2,
      "description": "Connection type: 0 = profile, 1 = page, 2 = group."
    },
    "language": {
      "type": "string",
      "minLength": 2,
      "description": "Optional language for the authorization flow, for example en or de."
    },
    "service_conditions_id": {
      "type": "integer",
      "minimum": 1,
      "description": "Optional service conditions ID for using a custom application."
    }
  },
  "required": [
    "network_id",
    "network_type_id"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "auth_link": {
          "type": "string",
          "description": "Authorization URL that must be opened to connect the account."
        },
        "session_token": {
          "type": "string",
          "description": "Session token for the authorization process."
        },
        "expired_in": {
          "type": "integer",
          "minimum": 0,
          "description": "Number of seconds until the authorization session expires."
        }
      },
      "required": [
        "auth_link",
        "session_token",
        "expired_in"
      ],
      "additionalProperties": true
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
🟡posts.create(client_user_network_id, b2s_posts)

Publishes a post to the connected account identified by client_user_network_id. Use postFormat 0 for text or link posts (a link is optional), 1 for image posts, or 2 for video posts; image and video posts require mediaObjects. The response includes a publish_url for non-video posts. Video posts return a video_token to check with videos.check.

입력 스키마

{
  "type": "object",
  "properties": {
    "client_user_network_id": {
      "type": "integer",
      "minimum": 1,
      "description": "Connected social media account ID returned by connections.list. All posts in b2s_posts are published to this account."
    },
    "b2s_posts": {
      "type": "array",
      "minItems": 1,
      "description": "One or more posts to publish to the selected account. Use postFormat 0 for text or links, 1 for images, and 2 for videos; image and video posts require mediaObjects.",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "title": "Text or link post",
            "properties": {
              "message": {
                "type": "string",
                "minLength": 1,
                "description": "Text of the social media post."
              },
              "title": {
                "type": "string",
                "description": "Optional title for the post, when supported by the selected social network."
              },
              "postFormat": {
                "type": "integer",
                "const": 0,
                "description": "Text or link post."
              },
              "customUrl": {
                "type": "string",
                "minLength": 1,
                "description": "Optional public URL attached to the post."
              }
            },
            "required": [
              "message",
              "postFormat"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "title": "Image post",
            "properties": {
              "message": {
                "type": "string",
                "minLength": 1,
                "description": "Text or caption to accompany the image post."
              },
              "title": {
                "type": "string",
                "description": "Optional title for the image post, when supported by the selected social network."
              },
              "postFormat": {
                "type": "integer",
                "const": 1,
                "description": "Image post."
              },
              "customUrl": {
                "type": "string",
                "minLength": 1,
                "description": "Optional public URL to attach to the image post, when supported by the selected social network."
              },
              "mediaObjects": {
                "type": "array",
                "minItems": 1,
                "description": "Image media items to include in the post. Each item must provide an IMAGE type and a public URL.",
                "items": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "IMAGE",
                      "description": "Media type; must be IMAGE for this post."
                    },
                    "url": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Public HTTP or HTTPS image URL."
                    },
                    "alt": {
                      "type": "string",
                      "description": "Optional alternative text describing the image."
                    }
                  },
                  "required": [
                    "type",
                    "url"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "required": [
              "message",
              "postFormat",
              "mediaObjects"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "title": "Video post",
            "properties": {
              "message": {
                "type": "string",
                "minLength": 1,
                "description": "Text or caption to accompany the video post."
              },
              "title": {
                "type": "string",
                "description": "Optional title for the video post, when supported by the selected social network."
              },
              "postFormat": {
                "type": "integer",
                "const": 2,
                "description": "Video post."
              },
              "customUrl": {
                "type": "string",
                "minLength": 1,
                "description": "Optional public URL to attach to the video post, when supported by the selected social network."
              },
              "mediaObjects": {
                "type": "array",
                "minItems": 1,
                "description": "Video media items to include in the post. Each item must provide a VIDEO type and a public URL.",
                "items": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "VIDEO",
                      "description": "Media type; must be VIDEO for this post."
                    },
                    "url": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Public HTTP or HTTPS video URL."
                    },
                    "alt": {
                      "type": "string",
                      "description": "Optional alternative text or description for the video."
                    }
                  },
                  "required": [
                    "type",
                    "url"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "required": [
              "message",
              "postFormat",
              "mediaObjects"
            ],
            "additionalProperties": false
          }
        ]
      }
    }
  },
  "required": [
    "client_user_network_id",
    "b2s_posts"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "error": {
            "type": "integer"
          },
          "type": {
            "type": "integer"
          },
          "publish_url": {
            "type": "string"
          },
          "network_post_id": {
            "type": "string"
          },
          "b2s_error_code": {
            "type": "string"
          },
          "post_id": {
            "type": "integer"
          },
          "extra": {
            "type": "object",
            "additionalProperties": true
          }
        },
        "additionalProperties": true
      }
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}
🟢videos.check(video_token)

Checks the publishing status of a video post using the video_token returned by posts.create. Returns the status for each target social account: pending, failed or successful. A publish_url is included when publishing succeeds; check again while the status is pending.

입력 스키마

{
  "type": "object",
  "properties": {
    "video_token": {
      "type": "string",
      "minLength": 1,
      "description": "Video token returned when the video upload was created."
    }
  },
  "required": [
    "video_token"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "additionalProperties": true
}
🟢credits.balance

Returns the current credit balance of the authenticated Blog2Social API account. Publishing is not possible when the balance is 0, so check it if a post cannot be published.

입력 스키마

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "balance": {
          "type": "integer",
          "minimum": 0,
          "description": "Current number of available Blog2Social credits."
        }
      },
      "required": [
        "balance"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "data"
  ],
  "additionalProperties": false
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 8개